FD.io VPP  v18.10-32-g1161dda
Vector Packet Processing
mfib_forward.c File Reference
+ Include dependency graph for mfib_forward.c:

Go to the source code of this file.

Data Structures

struct  mfib_forward_lookup_trace_t_
 

Typedefs

typedef struct mfib_forward_lookup_trace_t_ mfib_forward_lookup_trace_t
 
typedef enum mfib_forward_lookup_next_t_ mfib_forward_lookup_next_t
 
typedef enum mfib_forward_rpf_next_t_ mfib_forward_rpf_next_t
 

Enumerations

enum  mfib_forward_lookup_next_t_ { MFIB_FORWARD_LOOKUP_NEXT_RPF, MFIB_FORWARD_LOOKUP_N_NEXT }
 
enum  mfib_forward_rpf_next_t_ { MFIB_FORWARD_RPF_NEXT_DROP, MFIB_FORWARD_RPF_N_NEXT }
 

Functions

static u8format_mfib_forward_lookup_trace (u8 *s, va_list *args)
 
void mfib_forward_lookup_trace (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame)
 
static uword mfib_forward_lookup (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame, int is_v4)
 
static uword ip4_mfib_forward_lookup (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame)
 
 VLIB_NODE_FUNCTION_MULTIARCH (ip4_mfib_forward_lookup_node, ip4_mfib_forward_lookup)
 
 VLIB_NODE_FUNCTION_MULTIARCH (ip6_mfib_forward_lookup_node, ip6_mfib_forward_lookup)
 
static u8format_mfib_forward_rpf_trace (u8 *s, va_list *args)
 
static int mfib_forward_connected_check (vlib_buffer_t *b0, u32 sw_if_index, int is_v4)
 
static void mfib_forward_itf_signal (vlib_main_t *vm, const mfib_entry_t *mfe, mfib_itf_t *mfi, vlib_buffer_t *b0)
 
static uword mfib_forward_rpf (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame, int is_v4)
 
static uword ip4_mfib_forward_rpf (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame)
 
 VLIB_NODE_FUNCTION_MULTIARCH (ip4_mfib_forward_rpf_node, ip4_mfib_forward_rpf)
 

Variables

static vlib_node_registration_t ip4_mfib_forward_lookup_node
 (constructor) VLIB_REGISTER_NODE (ip4_mfib_forward_lookup_node) More...
 
static vlib_node_registration_t ip6_mfib_forward_lookup_node
 (constructor) VLIB_REGISTER_NODE (ip6_mfib_forward_lookup_node) More...
 
 mfib_forward_rpf_trace_t
 
static vlib_node_registration_t ip4_mfib_forward_rpf_node
 (constructor) VLIB_REGISTER_NODE (ip4_mfib_forward_rpf_node) More...
 
static vlib_node_registration_t ip6_mfib_forward_rpf_node
 (constructor) VLIB_REGISTER_NODE (ip6_mfib_forward_rpf_node) More...
 

Typedef Documentation

Enumeration Type Documentation

Enumerator
MFIB_FORWARD_LOOKUP_NEXT_RPF 
MFIB_FORWARD_LOOKUP_N_NEXT 

Definition at line 112 of file mfib_forward.c.

Enumerator
MFIB_FORWARD_RPF_NEXT_DROP 
MFIB_FORWARD_RPF_N_NEXT 

Definition at line 242 of file mfib_forward.c.

Function Documentation

static u8* format_mfib_forward_lookup_trace ( u8 s,
va_list *  args 
)
static

Definition at line 34 of file mfib_forward.c.

+ Here is the call graph for this function:

static u8* format_mfib_forward_rpf_trace ( u8 s,
va_list *  args 
)
static

Definition at line 248 of file mfib_forward.c.

+ Here is the call graph for this function:

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

Definition at line 188 of file mfib_forward.c.

+ Here is the call graph for this function:

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

Definition at line 487 of file mfib_forward.c.

+ Here is the call graph for this function:

static int mfib_forward_connected_check ( vlib_buffer_t b0,
u32  sw_if_index,
int  is_v4 
)
static

Definition at line 262 of file mfib_forward.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static void mfib_forward_itf_signal ( vlib_main_t vm,
const mfib_entry_t mfe,
mfib_itf_t mfi,
vlib_buffer_t b0 
)
static

Definition at line 296 of file mfib_forward.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static uword mfib_forward_lookup ( vlib_main_t vm,
vlib_node_runtime_t node,
vlib_frame_t frame,
int  is_v4 
)
static

Definition at line 118 of file mfib_forward.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void mfib_forward_lookup_trace ( vlib_main_t vm,
vlib_node_runtime_t node,
vlib_frame_t frame 
)

Definition at line 46 of file mfib_forward.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static uword mfib_forward_rpf ( vlib_main_t vm,
vlib_node_runtime_t node,
vlib_frame_t frame,
int  is_v4 
)
inlinestatic

Definition at line 338 of file mfib_forward.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

VLIB_NODE_FUNCTION_MULTIARCH ( ip4_mfib_forward_lookup_node  ,
ip4_mfib_forward_lookup   
)

Definition at line 208 of file mfib_forward.c.

+ Here is the call graph for this function:

VLIB_NODE_FUNCTION_MULTIARCH ( ip6_mfib_forward_lookup_node  ,
ip6_mfib_forward_lookup   
)

Definition at line 232 of file mfib_forward.c.

VLIB_NODE_FUNCTION_MULTIARCH ( ip4_mfib_forward_rpf_node  ,
ip4_mfib_forward_rpf   
)

Definition at line 508 of file mfib_forward.c.

+ Here is the call graph for this function:

Variable Documentation

vlib_node_registration_t ip4_mfib_forward_lookup_node
static
Initial value:
= {
.name = "ip4-mfib-forward-lookup",
.vector_size = sizeof (u32),
.n_next_nodes = MFIB_FORWARD_LOOKUP_N_NEXT,
.next_nodes = {
[MFIB_FORWARD_LOOKUP_NEXT_RPF] = "ip4-mfib-forward-rpf",
},
}
unsigned int u32
Definition: types.h:88
static uword ip4_mfib_forward_lookup(vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame)
Definition: mfib_forward.c:188
static u8 * format_mfib_forward_lookup_trace(u8 *s, va_list *args)
Definition: mfib_forward.c:34

(constructor) VLIB_REGISTER_NODE (ip4_mfib_forward_lookup_node)

Definition at line 195 of file mfib_forward.c.

vlib_node_registration_t ip4_mfib_forward_rpf_node
static
Initial value:
= {
.function = ip4_mfib_forward_rpf,
.name = "ip4-mfib-forward-rpf",
.vector_size = sizeof (u32),
.n_next_nodes = MFIB_FORWARD_RPF_N_NEXT,
.next_nodes = {
},
}
static u8 * format_mfib_forward_rpf_trace(u8 *s, va_list *args)
Definition: mfib_forward.c:248
unsigned int u32
Definition: types.h:88
static uword ip4_mfib_forward_rpf(vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame)
Definition: mfib_forward.c:487

(constructor) VLIB_REGISTER_NODE (ip4_mfib_forward_rpf_node)

Definition at line 495 of file mfib_forward.c.

vlib_node_registration_t ip6_mfib_forward_lookup_node
static
Initial value:
= {
.function = ip6_mfib_forward_lookup,
.name = "ip6-mfib-forward-lookup",
.vector_size = sizeof (u32),
.n_next_nodes = MFIB_FORWARD_LOOKUP_N_NEXT,
.next_nodes = {
[MFIB_FORWARD_LOOKUP_NEXT_RPF] = "ip6-mfib-forward-rpf",
},
}
unsigned int u32
Definition: types.h:88
static u8 * format_mfib_forward_lookup_trace(u8 *s, va_list *args)
Definition: mfib_forward.c:34

(constructor) VLIB_REGISTER_NODE (ip6_mfib_forward_lookup_node)

Definition at line 219 of file mfib_forward.c.

vlib_node_registration_t ip6_mfib_forward_rpf_node
static
Initial value:
= {
.function = ip6_mfib_forward_rpf,
.name = "ip6-mfib-forward-rpf",
.vector_size = sizeof (u32),
.n_next_nodes = MFIB_FORWARD_RPF_N_NEXT,
.next_nodes = {
},
}
static u8 * format_mfib_forward_rpf_trace(u8 *s, va_list *args)
Definition: mfib_forward.c:248
unsigned int u32
Definition: types.h:88

(constructor) VLIB_REGISTER_NODE (ip6_mfib_forward_rpf_node)

Definition at line 520 of file mfib_forward.c.

mfib_forward_rpf_trace_t

Definition at line 240 of file mfib_forward.c.