FD.io VPP  v17.01-9-ge7dcee4
Vector Packet Processing
node.c File Reference
+ Include dependency graph for node.c:

Go to the source code of this file.

Data Structures

struct  lb_trace_t
 

Macros

#define foreach_lb_error
 

Enumerations

enum  lb_error_t { LB_N_ERROR }
 

Functions

u8format_lb_trace (u8 *s, va_list *args)
 
lb_hash_tlb_get_sticky_table (u32 cpu_index)
 
u64 lb_node_get_other_ports4 (ip4_header_t *ip40)
 
u64 lb_node_get_other_ports6 (ip6_header_t *ip60)
 
static_always_inline u32 lb_node_get_hash (vlib_buffer_t *p, u8 is_input_v4)
 
static_always_inline uword lb_node_fn (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame, u8 is_input_v4, u8 is_encap_v4)
 
static uword lb6_gre6_node_fn (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame)
 
static uword lb6_gre4_node_fn (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame)
 
static uword lb4_gre6_node_fn (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame)
 
static uword lb4_gre4_node_fn (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame)
 

Variables

static char * lb_error_strings []
 
vlib_node_registration_t lb6_gre6_node
 (constructor) VLIB_REGISTER_NODE (lb6_gre6_node) More...
 
vlib_node_registration_t lb6_gre4_node
 (constructor) VLIB_REGISTER_NODE (lb6_gre4_node) More...
 
vlib_node_registration_t lb4_gre6_node
 (constructor) VLIB_REGISTER_NODE (lb4_gre6_node) More...
 
vlib_node_registration_t lb4_gre4_node
 (constructor) VLIB_REGISTER_NODE (lb4_gre4_node) More...
 

Macro Definition Documentation

#define foreach_lb_error
Value:
_(NONE, "no error") \
_(PROTO_NOT_SUPPORTED, "protocol not supported")

Definition at line 21 of file node.c.

Enumeration Type Documentation

enum lb_error_t
Enumerator
LB_N_ERROR 

Definition at line 25 of file node.c.

Function Documentation

u8* format_lb_trace ( u8 s,
va_list *  args 
)

Definition at line 44 of file node.c.

+ Here is the call graph for this function:

static uword lb4_gre4_node_fn ( vlib_main_t vm,
vlib_node_runtime_t node,
vlib_frame_t frame 
)
static

Definition at line 346 of file node.c.

+ Here is the call graph for this function:

static uword lb4_gre6_node_fn ( vlib_main_t vm,
vlib_node_runtime_t node,
vlib_frame_t frame 
)
static

Definition at line 339 of file node.c.

+ Here is the call graph for this function:

static uword lb6_gre4_node_fn ( vlib_main_t vm,
vlib_node_runtime_t node,
vlib_frame_t frame 
)
static

Definition at line 332 of file node.c.

+ Here is the call graph for this function:

static uword lb6_gre6_node_fn ( vlib_main_t vm,
vlib_node_runtime_t node,
vlib_frame_t frame 
)
static

Definition at line 325 of file node.c.

+ Here is the call graph for this function:

lb_hash_t* lb_get_sticky_table ( u32  cpu_index)

Definition at line 63 of file node.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static_always_inline uword lb_node_fn ( vlib_main_t vm,
vlib_node_runtime_t node,
vlib_frame_t frame,
u8  is_input_v4,
u8  is_encap_v4 
)

Definition at line 149 of file node.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static_always_inline u32 lb_node_get_hash ( vlib_buffer_t p,
u8  is_input_v4 
)

Definition at line 109 of file node.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u64 lb_node_get_other_ports4 ( ip4_header_t ip40)

Definition at line 97 of file node.c.

+ Here is the caller graph for this function:

u64 lb_node_get_other_ports6 ( ip6_header_t ip60)

Definition at line 103 of file node.c.

+ Here is the caller graph for this function:

Variable Documentation

vlib_node_registration_t lb4_gre4_node
Initial value:
=
{
.function = lb4_gre4_node_fn,
.name = "lb4-gre4",
.vector_size = sizeof (u32),
.format_trace = format_lb_trace,
.n_errors = LB_N_ERROR,
.error_strings = lb_error_strings,
.n_next_nodes = LB_N_NEXT,
.next_nodes =
{
[LB_NEXT_DROP] = "error-drop"
},
}
static uword lb4_gre4_node_fn(vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame)
Definition: node.c:346
Definition: lb.h:48
static char * lb_error_strings[]
Definition: node.c:32
unsigned int u32
Definition: types.h:88
u8 * format_lb_trace(u8 *s, va_list *args)
Definition: node.c:44

(constructor) VLIB_REGISTER_NODE (lb4_gre4_node)

Definition at line 403 of file node.c.

vlib_node_registration_t lb4_gre6_node
Initial value:
=
{
.function = lb4_gre6_node_fn,
.name = "lb4-gre6",
.vector_size = sizeof (u32),
.format_trace = format_lb_trace,
.n_errors = LB_N_ERROR,
.error_strings = lb_error_strings,
.n_next_nodes = LB_N_NEXT,
.next_nodes =
{
[LB_NEXT_DROP] = "error-drop"
},
}
Definition: lb.h:48
static char * lb_error_strings[]
Definition: node.c:32
unsigned int u32
Definition: types.h:88
u8 * format_lb_trace(u8 *s, va_list *args)
Definition: node.c:44
static uword lb4_gre6_node_fn(vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame)
Definition: node.c:339

(constructor) VLIB_REGISTER_NODE (lb4_gre6_node)

Definition at line 386 of file node.c.

vlib_node_registration_t lb6_gre4_node
Initial value:
=
{
.function = lb6_gre4_node_fn,
.name = "lb6-gre4",
.vector_size = sizeof (u32),
.format_trace = format_lb_trace,
.n_errors = LB_N_ERROR,
.error_strings = lb_error_strings,
.n_next_nodes = LB_N_NEXT,
.next_nodes =
{
[LB_NEXT_DROP] = "error-drop"
},
}
Definition: lb.h:48
static uword lb6_gre4_node_fn(vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame)
Definition: node.c:332
static char * lb_error_strings[]
Definition: node.c:32
unsigned int u32
Definition: types.h:88
u8 * format_lb_trace(u8 *s, va_list *args)
Definition: node.c:44

(constructor) VLIB_REGISTER_NODE (lb6_gre4_node)

Definition at line 369 of file node.c.

vlib_node_registration_t lb6_gre6_node
Initial value:
=
{
.function = lb6_gre6_node_fn,
.name = "lb6-gre6",
.vector_size = sizeof (u32),
.format_trace = format_lb_trace,
.n_errors = LB_N_ERROR,
.error_strings = lb_error_strings,
.n_next_nodes = LB_N_NEXT,
.next_nodes =
{
[LB_NEXT_DROP] = "error-drop"
},
}
Definition: lb.h:48
static char * lb_error_strings[]
Definition: node.c:32
unsigned int u32
Definition: types.h:88
static uword lb6_gre6_node_fn(vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame)
Definition: node.c:325
u8 * format_lb_trace(u8 *s, va_list *args)
Definition: node.c:44

(constructor) VLIB_REGISTER_NODE (lb6_gre6_node)

Definition at line 352 of file node.c.

char* lb_error_strings[]
static
Initial value:
= {
#define _(sym,string)
}
#define foreach_lb_error
Definition: node.c:21

Definition at line 32 of file node.c.