FD.io VPP  v18.01-8-g0eacf49
Vector Packet Processing
mfib_entry.h File Reference
+ Include dependency graph for mfib_entry.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  mfib_entry_t_
 An entry in a FIB table. More...
 

Macros

#define MFIB_ENTRY_FORMAT_BRIEF   (0x0)
 
#define MFIB_ENTRY_FORMAT_DETAIL   (0x1)
 
#define MFIB_ENTRY_FORMAT_DETAIL2   (0x2)
 

Typedefs

typedef struct mfib_entry_t_ mfib_entry_t
 An entry in a FIB table. More...
 

Functions

u8format_mfib_entry (u8 *s, va_list *args)
 
fib_node_index_t mfib_entry_create (u32 fib_index, mfib_source_t source, const mfib_prefix_t *prefix, fib_rpf_id_t rpf_id, mfib_entry_flags_t entry_flags)
 
int mfib_entry_update (fib_node_index_t fib_entry_index, mfib_source_t source, mfib_entry_flags_t entry_flags, fib_rpf_id_t rpf_id, index_t rep_dpo)
 
void mfib_entry_path_update (fib_node_index_t fib_entry_index, mfib_source_t source, const fib_route_path_t *rpath, mfib_itf_flags_t itf_flags)
 
int mfib_entry_path_remove (fib_node_index_t fib_entry_index, mfib_source_t source, const fib_route_path_t *rpath)
 
int mfib_entry_delete (fib_node_index_t mfib_entry_index, mfib_source_t source)
 mfib_entry_delete More...
 
int mfib_entry_cmp_for_sort (void *i1, void *i2)
 
u32 mfib_entry_child_add (fib_node_index_t mfib_entry_index, fib_node_type_t type, fib_node_index_t child_index)
 
void mfib_entry_child_remove (fib_node_index_t mfib_entry_index, u32 sibling_index)
 
void mfib_entry_lock (fib_node_index_t fib_entry_index)
 
void mfib_entry_unlock (fib_node_index_t fib_entry_index)
 
void mfib_entry_get_prefix (fib_node_index_t fib_entry_index, mfib_prefix_t *pfx)
 
u32 mfib_entry_get_fib_index (fib_node_index_t fib_entry_index)
 
int mfib_entry_is_sourced (fib_node_index_t fib_entry_index, mfib_source_t source)
 
const dpo_id_tmfib_entry_contribute_ip_forwarding (fib_node_index_t mfib_entry_index)
 
void mfib_entry_contribute_forwarding (fib_node_index_t mfib_entry_index, fib_forward_chain_type_t type, dpo_id_t *dpo)
 
void mfib_entry_encode (fib_node_index_t fib_entry_index, fib_route_path_encode_t **api_rpaths)
 
void mfib_entry_module_init (void)
 
static mfib_entry_tmfib_entry_get (fib_node_index_t index)
 
static fib_node_index_t mfib_entry_get_index (const mfib_entry_t *mfe)
 
static mfib_itf_tmfib_entry_itf_find (mfib_itf_t *itfs, u32 sw_if_index)
 
static mfib_itf_tmfib_entry_get_itf (const mfib_entry_t *mfe, u32 sw_if_index)
 

Variables

mfib_entry_tmfib_entry_pool
 

Macro Definition Documentation

#define MFIB_ENTRY_FORMAT_BRIEF   (0x0)

Definition at line 87 of file mfib_entry.h.

#define MFIB_ENTRY_FORMAT_DETAIL   (0x1)

Definition at line 88 of file mfib_entry.h.

#define MFIB_ENTRY_FORMAT_DETAIL2   (0x2)

Definition at line 89 of file mfib_entry.h.

Typedef Documentation

typedef struct mfib_entry_t_ mfib_entry_t

An entry in a FIB table.

This entry represents a route added to the FIB that is stored in one of the FIB tables.

Function Documentation

u8* format_mfib_entry ( u8 s,
va_list *  args 
)

Definition at line 171 of file mfib_entry.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u32 mfib_entry_child_add ( fib_node_index_t  mfib_entry_index,
fib_node_type_t  type,
fib_node_index_t  child_index 
)

Definition at line 379 of file mfib_entry.c.

+ Here is the call graph for this function:

void mfib_entry_child_remove ( fib_node_index_t  mfib_entry_index,
u32  sibling_index 
)

Definition at line 390 of file mfib_entry.c.

+ Here is the call graph for this function:

int mfib_entry_cmp_for_sort ( void *  i1,
void *  i2 
)

Definition at line 1066 of file mfib_entry.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void mfib_entry_contribute_forwarding ( fib_node_index_t  mfib_entry_index,
fib_forward_chain_type_t  type,
dpo_id_t dpo 
)

Definition at line 1240 of file mfib_entry.c.

+ Here is the call graph for this function:

const dpo_id_t* mfib_entry_contribute_ip_forwarding ( fib_node_index_t  mfib_entry_index)

Definition at line 1230 of file mfib_entry.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

fib_node_index_t mfib_entry_create ( u32  fib_index,
mfib_source_t  source,
const mfib_prefix_t prefix,
fib_rpf_id_t  rpf_id,
mfib_entry_flags_t  entry_flags 
)

Definition at line 719 of file mfib_entry.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int mfib_entry_delete ( fib_node_index_t  mfib_entry_index,
mfib_source_t  source 
)

mfib_entry_delete

The source is withdrawing all the paths it provided

Definition at line 979 of file mfib_entry.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void mfib_entry_encode ( fib_node_index_t  fib_entry_index,
fib_route_path_encode_t **  api_rpaths 
)

Definition at line 1191 of file mfib_entry.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static mfib_entry_t* mfib_entry_get ( fib_node_index_t  index)
inlinestatic

Definition at line 153 of file mfib_entry.h.

+ Here is the caller graph for this function:

u32 mfib_entry_get_fib_index ( fib_node_index_t  fib_entry_index)

Definition at line 1220 of file mfib_entry.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static fib_node_index_t mfib_entry_get_index ( const mfib_entry_t mfe)
inlinestatic

Definition at line 158 of file mfib_entry.h.

+ Here is the caller graph for this function:

static mfib_itf_t* mfib_entry_get_itf ( const mfib_entry_t mfe,
u32  sw_if_index 
)
inlinestatic

Definition at line 181 of file mfib_entry.h.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void mfib_entry_get_prefix ( fib_node_index_t  fib_entry_index,
mfib_prefix_t pfx 
)

Definition at line 1210 of file mfib_entry.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int mfib_entry_is_sourced ( fib_node_index_t  fib_entry_index,
mfib_source_t  source 
)

Definition at line 336 of file mfib_entry.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static mfib_itf_t* mfib_entry_itf_find ( mfib_itf_t itfs,
u32  sw_if_index 
)
inlinestatic

Definition at line 165 of file mfib_entry.h.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void mfib_entry_lock ( fib_node_index_t  fib_entry_index)

Definition at line 1131 of file mfib_entry.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void mfib_entry_module_init ( void  )

Definition at line 1184 of file mfib_entry.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int mfib_entry_path_remove ( fib_node_index_t  fib_entry_index,
mfib_source_t  source,
const fib_route_path_t rpath 
)

Definition at line 921 of file mfib_entry.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void mfib_entry_path_update ( fib_node_index_t  fib_entry_index,
mfib_source_t  source,
const fib_route_path_t rpath,
mfib_itf_flags_t  itf_flags 
)

Definition at line 831 of file mfib_entry.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void mfib_entry_unlock ( fib_node_index_t  fib_entry_index)

Definition at line 1141 of file mfib_entry.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int mfib_entry_update ( fib_node_index_t  fib_entry_index,
mfib_source_t  source,
mfib_entry_flags_t  entry_flags,
fib_rpf_id_t  rpf_id,
index_t  rep_dpo 
)

Definition at line 754 of file mfib_entry.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Variable Documentation

mfib_entry_t* mfib_entry_pool

Definition at line 111 of file mfib_entry.c.