FD.io VPP  v16.09
Vector Packet Processing
lisp_gpe.h File Reference
+ Include dependency graph for lisp_gpe.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  lisp_gpe_tunnel_key_t
 
struct  lisp_gpe_sub_tunnel
 
struct  nomalized_sub_tunnel
 
struct  lisp_gpe_tunnel_t
 
struct  ip6_src_fib
 
struct  tunnel_lookup
 
struct  lisp_gpe_main
 
struct  vnet_lisp_gpe_add_del_iface_args_t
 
struct  vnet_lisp_gpe_enable_disable_args_t
 
struct  vnet_lisp_gpe_add_del_fwd_entry_args_t
 

Macros

#define foreach_lisp_gpe_ip_input_next
 
#define lisp_gpe_error(n, s)   LISP_GPE_ERROR_##n,
 
#define foreach_lgpe_ip4_lookup_next
 
#define foreach_lgpe_ip6_lookup_next
 
#define L2_FIB_DEFAULT_HASH_NUM_BUCKETS   (64 * 1024)
 
#define L2_FIB_DEFAULT_HASH_MEMORY_SIZE   (32<<20)
 

Typedefs

typedef struct lisp_gpe_sub_tunnel lisp_gpe_sub_tunnel_t
 
typedef struct nomalized_sub_tunnel normalized_sub_tunnel_weights_t
 
typedef ip4_fib_t ip4_src_fib_t
 
typedef struct ip6_src_fib ip6_src_fib_t
 
typedef struct tunnel_lookup tunnel_lookup_t
 
typedef struct lisp_gpe_main lisp_gpe_main_t
 
typedef enum lgpe_ip4_lookup_next lgpe_ip4_lookup_next_t
 
typedef enum lgpe_ip6_lookup_next lgpe_ip6_lookup_next_t
 

Enumerations

enum  lisp_gpe_input_next_t { LISP_GPE_INPUT_N_NEXT }
 
enum  lisp_gpe_error_t { lisp_gpe_error, lisp_gpe_error }
 
enum  lgpe_ip4_lookup_next { LGPE_IP4_LOOKUP_N_NEXT }
 
enum  lgpe_ip6_lookup_next { LGPE_IP6_LOOKUP_N_NEXT }
 

Functions

typedef CLIB_PACKED (struct{ip4_header_t ip4;udp_header_t udp;lisp_gpe_header_t lisp;}) ip4_udp_lisp_gpe_header_t
 
typedef CLIB_PACKED (struct{ip6_header_t ip6;udp_header_t udp;lisp_gpe_header_t lisp;}) ip6_udp_lisp_gpe_header_t
 
static lisp_gpe_main_tvnet_lisp_gpe_get_main ()
 
u8format_lisp_gpe_header_with_length (u8 *s, va_list *args)
 
u8 vnet_lisp_gpe_enable_disable_status (void)
 
int vnet_lisp_gpe_add_del_iface (vnet_lisp_gpe_add_del_iface_args_t *a, u32 *hw_if_indexp)
 
clib_error_tvnet_lisp_gpe_enable_disable (vnet_lisp_gpe_enable_disable_args_t *a)
 
int vnet_lisp_gpe_add_del_fwd_entry (vnet_lisp_gpe_add_del_fwd_entry_args_t *a, u32 *hw_if_indexp)
 
int ip_sd_fib_add_del_route (lisp_gpe_main_t *lgm, ip_prefix_t *dst_prefix, ip_prefix_t *src_prefix, u32 table_id, ip_adjacency_t *add_adj, u8 is_add)
 
u32 ip_sd_fib_get_route (lisp_gpe_main_t *lgm, ip_prefix_t *dst_prefix, ip_prefix_t *src_prefix, u32 table_id)
 
u8format_vnet_lisp_gpe_status (u8 *s, va_list *args)
 
u32 lisp_l2_fib_lookup (lisp_gpe_main_t *lgm, u16 bd_index, u8 src_mac[8], u8 dst_mac[8])
 

Variables

lisp_gpe_main_t lisp_gpe_main
 
vlib_node_registration_t lgpe_ip4_lookup_node
 (constructor) VLIB_REGISTER_NODE (lgpe_ip4_lookup_node) More...
 
vlib_node_registration_t lgpe_ip6_lookup_node
 (constructor) VLIB_REGISTER_NODE (lgpe_ip6_lookup_node) More...
 
vlib_node_registration_t lisp_gpe_ip4_input_node
 (constructor) VLIB_REGISTER_NODE (lisp_gpe_ip4_input_node) More...
 
vlib_node_registration_t lisp_gpe_ip6_input_node
 (constructor) VLIB_REGISTER_NODE (lisp_gpe_ip6_input_node) More...
 

Macro Definition Documentation

#define foreach_lgpe_ip4_lookup_next
Value:
_(DROP, "error-drop") \
_(LISP_CP_LOOKUP, "lisp-cp-lookup")
DROP
Definition: error.def:41

Definition at line 312 of file lisp_gpe.h.

#define foreach_lgpe_ip6_lookup_next
Value:
_(DROP, "error-drop") \
_(LISP_CP_LOOKUP, "lisp-cp-lookup")
DROP
Definition: error.def:41

Definition at line 324 of file lisp_gpe.h.

#define foreach_lisp_gpe_ip_input_next
Value:
_(DROP, "error-drop") \
_(IP4_INPUT, "ip4-input") \
_(IP6_INPUT, "ip6-input") \
_(L2_INPUT, "l2-input")
DROP
Definition: error.def:41

Definition at line 120 of file lisp_gpe.h.

#define L2_FIB_DEFAULT_HASH_MEMORY_SIZE   (32<<20)

Definition at line 339 of file lisp_gpe.h.

#define L2_FIB_DEFAULT_HASH_NUM_BUCKETS   (64 * 1024)

Definition at line 338 of file lisp_gpe.h.

#define lisp_gpe_error (   n,
 
)    LISP_GPE_ERROR_##n,

Definition at line 136 of file lisp_gpe.h.

Typedef Documentation

Definition at line 145 of file lisp_gpe.h.

typedef struct ip6_src_fib ip6_src_fib_t

Enumeration Type Documentation

Enumerator
LGPE_IP4_LOOKUP_N_NEXT 

Definition at line 316 of file lisp_gpe.h.

Enumerator
LGPE_IP6_LOOKUP_N_NEXT 

Definition at line 328 of file lisp_gpe.h.

Enumerator
lisp_gpe_error 
lisp_gpe_error 

Definition at line 134 of file lisp_gpe.h.

Enumerator
LISP_GPE_INPUT_N_NEXT 

Definition at line 126 of file lisp_gpe.h.

Function Documentation

typedef CLIB_PACKED ( struct{ip4_header_t ip4;udp_header_t udp;lisp_gpe_header_t lisp;}  )
typedef CLIB_PACKED ( struct{ip6_header_t ip6;udp_header_t udp;lisp_gpe_header_t lisp;}  )
u8* format_lisp_gpe_header_with_length ( u8 s,
va_list *  args 
)

Definition at line 346 of file interface.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u8* format_vnet_lisp_gpe_status ( u8 s,
va_list *  args 
)

Definition at line 979 of file lisp_gpe.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int ip_sd_fib_add_del_route ( lisp_gpe_main_t lgm,
ip_prefix_t *  dst_prefix,
ip_prefix_t *  src_prefix,
u32  table_id,
ip_adjacency_t add_adj,
u8  is_add 
)

Definition at line 719 of file ip_forward.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u32 ip_sd_fib_get_route ( lisp_gpe_main_t lgm,
ip_prefix_t *  dst_prefix,
ip_prefix_t *  src_prefix,
u32  table_id 
)

Definition at line 733 of file ip_forward.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u32 lisp_l2_fib_lookup ( lisp_gpe_main_t lgm,
u16  bd_index,
u8  src_mac[8],
u8  dst_mac[8] 
)
int vnet_lisp_gpe_add_del_fwd_entry ( vnet_lisp_gpe_add_del_fwd_entry_args_t a,
u32 hw_if_indexp 
)

Definition at line 539 of file lisp_gpe.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int vnet_lisp_gpe_add_del_iface ( vnet_lisp_gpe_add_del_iface_args_t a,
u32 hw_if_indexp 
)

Definition at line 1060 of file interface.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

clib_error_t* vnet_lisp_gpe_enable_disable ( vnet_lisp_gpe_enable_disable_args_t a)

Definition at line 797 of file lisp_gpe.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u8 vnet_lisp_gpe_enable_disable_status ( void  )

Definition at line 789 of file lisp_gpe.c.

+ Here is the caller graph for this function:

static lisp_gpe_main_t* vnet_lisp_gpe_get_main ( )
inlinestatic

Definition at line 222 of file lisp_gpe.h.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Variable Documentation

vlib_node_registration_t lgpe_ip4_lookup_node

(constructor) VLIB_REGISTER_NODE (lgpe_ip4_lookup_node)

Definition at line 1029 of file ip_forward.c.

vlib_node_registration_t lgpe_ip6_lookup_node

(constructor) VLIB_REGISTER_NODE (lgpe_ip6_lookup_node)

Definition at line 1323 of file ip_forward.c.

vlib_node_registration_t lisp_gpe_ip4_input_node

(constructor) VLIB_REGISTER_NODE (lisp_gpe_ip4_input_node)

Definition at line 432 of file decap.c.

vlib_node_registration_t lisp_gpe_ip6_input_node

(constructor) VLIB_REGISTER_NODE (lisp_gpe_ip6_input_node)

Definition at line 454 of file decap.c.

Definition at line 219 of file lisp_gpe.h.