FD.io VPP  v21.06-3-gbb25fbf28
Vector Packet Processing
bier_disp_table.h File Reference
+ Include dependency graph for bier_disp_table.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  bier_disp_table_t_
 A protocol Independent IP multicast FIB table. More...
 

Typedefs

typedef struct bier_disp_table_t_ bier_disp_table_t
 A protocol Independent IP multicast FIB table. More...
 
typedef void(* bier_disp_table_walk_fn_t) (const bier_disp_table_t *bdt, const bier_disp_entry_t *bde, u16 bp, void *ctx)
 Types and functions to walk all the entries in one BIER Table. More...
 

Functions

u8format_bier_disp_table (u8 *s, va_list *ap)
 Format the description/name of the table. More...
 
void bier_disp_table_entry_path_add (u32 table_id, bier_bp_t src, bier_hdr_proto_id_t payload_proto, const fib_route_path_t *rpath)
 
void bier_disp_table_entry_path_remove (u32 table_id, bier_bp_t src, bier_hdr_proto_id_t payload_proto, const fib_route_path_t *paths)
 
index_t bier_disp_table_find (u32 table_id)
 
index_t bier_disp_table_add_or_lock (u32 table_id)
 
void bier_disp_table_unlock_w_table_id (u32 table_id)
 
void bier_disp_table_unlock (index_t bdti)
 
void bier_disp_table_lock (index_t bdti)
 
void bier_disp_table_contribute_forwarding (index_t bdti, dpo_id_t *dpo)
 
void bier_disp_table_walk (u32 table_id, bier_disp_table_walk_fn_t fn, void *ctx)
 
static bier_disp_table_tbier_disp_table_get (index_t bdti)
 
static index_t bier_disp_table_lookup (index_t bdti, bier_hdr_src_id_t src)
 

Variables

bier_disp_table_tbier_disp_table_pool
 Get a pointer to a FIB table. More...
 

Typedef Documentation

◆ bier_disp_table_t

A protocol Independent IP multicast FIB table.

◆ bier_disp_table_walk_fn_t

typedef void(* bier_disp_table_walk_fn_t) (const bier_disp_table_t *bdt, const bier_disp_entry_t *bde, u16 bp, void *ctx)

Types and functions to walk all the entries in one BIER Table.

Definition at line 84 of file bier_disp_table.h.

Function Documentation

◆ bier_disp_table_add_or_lock()

index_t bier_disp_table_add_or_lock ( u32  table_id)

Set the result for each entry in the DB to be invalid

Definition at line 57 of file bier_disp_table.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ bier_disp_table_contribute_forwarding()

void bier_disp_table_contribute_forwarding ( index_t  bdti,
dpo_id_t dpo 
)

Definition at line 132 of file bier_disp_table.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ bier_disp_table_entry_path_add()

void bier_disp_table_entry_path_add ( u32  table_id,
bier_bp_t  src,
bier_hdr_proto_id_t  payload_proto,
const fib_route_path_t rpath 
)

Definition at line 217 of file bier_disp_table.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ bier_disp_table_entry_path_remove()

void bier_disp_table_entry_path_remove ( u32  table_id,
bier_bp_t  src,
bier_hdr_proto_id_t  payload_proto,
const fib_route_path_t paths 
)

Definition at line 243 of file bier_disp_table.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ bier_disp_table_find()

index_t bier_disp_table_find ( u32  table_id)

Definition at line 42 of file bier_disp_table.c.

+ Here is the caller graph for this function:

◆ bier_disp_table_get()

static bier_disp_table_t* bier_disp_table_get ( index_t  bdti)
inlinestatic

Definition at line 99 of file bier_disp_table.h.

+ Here is the caller graph for this function:

◆ bier_disp_table_lock()

void bier_disp_table_lock ( index_t  bdti)

Definition at line 126 of file bier_disp_table.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ bier_disp_table_lookup()

static index_t bier_disp_table_lookup ( index_t  bdti,
bier_hdr_src_id_t  src 
)
inlinestatic

Definition at line 105 of file bier_disp_table.h.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ bier_disp_table_unlock()

void bier_disp_table_unlock ( index_t  bdti)

Definition at line 104 of file bier_disp_table.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ bier_disp_table_unlock_w_table_id()

void bier_disp_table_unlock_w_table_id ( u32  table_id)

Definition at line 91 of file bier_disp_table.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ bier_disp_table_walk()

void bier_disp_table_walk ( u32  table_id,
bier_disp_table_walk_fn_t  fn,
void *  ctx 
)

Definition at line 274 of file bier_disp_table.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ format_bier_disp_table()

u8* format_bier_disp_table ( u8 s,
va_list *  ap 
)

Format the description/name of the table.

Definition at line 143 of file bier_disp_table.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Variable Documentation

◆ bier_disp_table_pool

bier_disp_table_t* bier_disp_table_pool

Get a pointer to a FIB table.

Get a pointer to a FIB table.

Definition at line 22 of file bier_disp_table.c.