18 #ifndef included_vnet_gtpu_h 19 #define included_vnet_gtpu_h 65 #define GTPU_V1_HDR_LEN 8 67 #define GTPU_VER_MASK (7<<5) 68 #define GTPU_PT_BIT (1<<4) 69 #define GTPU_E_BIT (1<<2) 70 #define GTPU_S_BIT (1<<1) 71 #define GTPU_PN_BIT (1<<0) 72 #define GTPU_E_S_PN_BIT (7<<0) 74 #define GTPU_V1_VER (1<<5) 76 #define GTPU_PT_GTP (1<<4) 77 #define GTPU_TYPE_GTPU 255 111 }) gtpu4_tunnel_key_t;
123 }) gtpu6_tunnel_key_t;
178 #define foreach_gtpu_input_next \ 179 _(DROP, "error-drop") \ 180 _(L2_INPUT, "l2-input") \ 181 _(IP4_INPUT, "ip4-input") \ 182 _(IP6_INPUT, "ip6-input" ) 186 #define _(s,n) GTPU_INPUT_NEXT_##s, 194 #define gtpu_error(n,s) GTPU_ERROR_##n,
vlib_node_registration_t gtpu4_encap_node
(constructor) VLIB_REGISTER_NODE (gtpu4_encap_node)
#define CLIB_CACHE_LINE_ALIGN_MARK(mark)
u32 * tunnel_index_by_sw_if_index
fib_node_type_t fib_node_type
Node type for registering to fib changes.
void vnet_int_gtpu_bypass_mode(u32 sw_if_index, u8 is_ip6, u8 is_enable)
The identity of a DPO is a combination of its type and its instance number/index of objects of that t...
typedef CLIB_PACKED(struct{ip4_header_t ip4;udp_header_t udp;gtpu_header_t gtpu;}) ip4_gtpu_header_t
adj_index_t mcast_adj_index
An node in the FIB graph.
int vnet_gtpu_add_del_tunnel(vnet_gtpu_add_del_tunnel_args_t *a, u32 *sw_if_indexp)
u32 fib_node_index_t
A typedef of a node index.
u32 adj_index_t
An index for adjacencies.
u32 sibling_index
The tunnel is a child of the FIB entry for its destination.
#define foreach_gtpu_input_next
u32 * free_gtpu_tunnel_hw_if_indices
fib_node_index_t fib_entry_index
u8 * format_gtpu_encap_trace(u8 *s, va_list *args)
fib_node_t node
Linkage into the FIB object graph.
uword * gtpu4_tunnel_by_key
vlib_node_registration_t gtpu6_input_node
(constructor) VLIB_REGISTER_NODE (gtpu6_input_node)
struct _vlib_node_registration vlib_node_registration_t
uword * gtpu6_tunnel_by_key
vlib_node_registration_t gtpu6_encap_node
(constructor) VLIB_REGISTER_NODE (gtpu6_encap_node)
enum fib_node_type_t_ fib_node_type_t
The types of nodes in a FIB graph.
vlib_node_registration_t gtpu4_input_node
(constructor) VLIB_REGISTER_NODE (gtpu4_input_node)