FD.io VPP  v21.10.1-2-g0a485f517
Vector Packet Processing
fib_api.c File Reference
+ Include dependency graph for fib_api.c:

Go to the source code of this file.

Data Structures

struct  fib_source_dump_ctx_t_
 

Macros

#define REPLY_MSG_ID_BASE   fib_base_msg_id
 

Typedefs

typedef struct fib_source_dump_ctx_t_ fib_source_dump_ctx_t
 

Functions

int fib_api_table_id_decode (fib_protocol_t fproto, u32 table_id, u32 *fib_index)
 
int fib_api_mtable_id_decode (fib_protocol_t fproto, u32 table_id, u32 *fib_index)
 
static void fib_api_next_hop_decode (const vl_api_fib_path_t *in, ip46_address_t *out)
 
static vl_api_fib_path_nh_proto_t fib_api_path_dpo_proto_to_nh (dpo_proto_t dproto)
 
static void fib_api_next_hop_encode (const fib_route_path_t *rpath, vl_api_fib_path_t *fp)
 
static int fib_api_path_nh_proto_to_dpo (vl_api_fib_path_nh_proto_t pp, dpo_proto_t *dproto)
 
int fib_api_path_decode (vl_api_fib_path_t *in, fib_route_path_t *out)
 
void fib_api_path_encode (const fib_route_path_t *rpath, vl_api_fib_path_t *out)
 Encode and decode functions from the API types to internal types. More...
 
int fib_api_route_add_del (u8 is_add, u8 is_multipath, u32 fib_index, const fib_prefix_t *prefix, fib_source_t src, fib_entry_flag_t entry_flags, fib_route_path_t *rpaths)
 Adding routes from the API. More...
 
u8format_vl_api_fib_path (u8 *s, va_list *args)
 
int fib_proto_from_api_address_family (vl_api_address_family_t af, fib_protocol_t *out)
 
vl_api_address_family_t fib_proto_to_api_address_family (fib_protocol_t fproto)
 
void vl_api_fib_source_add_t_handler (vl_api_fib_source_add_t *mp)
 
static walk_rc_t send_fib_source (fib_source_t id, const char *name, fib_source_priority_t prio, fib_source_behaviour_t bh, void *data)
 
void vl_api_fib_source_dump_t_handler (vl_api_fib_source_dump_t *mp)
 
static clib_error_tfib_api_hookup (vlib_main_t *vm)
 
 VLIB_API_INIT_FUNCTION (fib_api_hookup)
 

Variables

static u16 fib_base_msg_id
 

Macro Definition Documentation

◆ REPLY_MSG_ID_BASE

#define REPLY_MSG_ID_BASE   fib_base_msg_id

Definition at line 31 of file fib_api.c.

Typedef Documentation

◆ fib_source_dump_ctx_t

Function Documentation

◆ fib_api_hookup()

static clib_error_t* fib_api_hookup ( vlib_main_t vm)
static

Definition at line 642 of file fib_api.c.

+ Here is the call graph for this function:

◆ fib_api_mtable_id_decode()

int fib_api_mtable_id_decode ( fib_protocol_t  fproto,
u32  table_id,
u32 fib_index 
)

Definition at line 50 of file fib_api.c.

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

◆ fib_api_next_hop_decode()

static void fib_api_next_hop_decode ( const vl_api_fib_path_t *  in,
ip46_address_t *  out 
)
static

Definition at line 65 of file fib_api.c.

+ Here is the caller graph for this function:

◆ fib_api_next_hop_encode()

static void fib_api_next_hop_encode ( const fib_route_path_t rpath,
vl_api_fib_path_t *  fp 
)
static

Definition at line 98 of file fib_api.c.

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

◆ fib_api_path_decode()

int fib_api_path_decode ( vl_api_fib_path_t *  in,
fib_route_path_t out 
)

Definition at line 141 of file fib_api.c.

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

◆ fib_api_path_dpo_proto_to_nh()

static vl_api_fib_path_nh_proto_t fib_api_path_dpo_proto_to_nh ( dpo_proto_t  dproto)
static

Definition at line 75 of file fib_api.c.

+ Here is the caller graph for this function:

◆ fib_api_path_encode()

void fib_api_path_encode ( const fib_route_path_t rpath,
vl_api_fib_path_t *  out 
)

Encode and decode functions from the API types to internal types.

Definition at line 349 of file fib_api.c.

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

◆ fib_api_path_nh_proto_to_dpo()

static int fib_api_path_nh_proto_to_dpo ( vl_api_fib_path_nh_proto_t  pp,
dpo_proto_t dproto 
)
static

Definition at line 114 of file fib_api.c.

+ Here is the caller graph for this function:

◆ fib_api_route_add_del()

int fib_api_route_add_del ( u8  is_add,
u8  is_multipath,
u32  fib_index,
const fib_prefix_t prefix,
fib_source_t  src,
fib_entry_flag_t  entry_flags,
fib_route_path_t rpaths 
)

Adding routes from the API.

Definition at line 450 of file fib_api.c.

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

◆ fib_api_table_id_decode()

int fib_api_table_id_decode ( fib_protocol_t  fproto,
u32  table_id,
u32 fib_index 
)

Definition at line 35 of file fib_api.c.

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

◆ fib_proto_from_api_address_family()

int fib_proto_from_api_address_family ( vl_api_address_family_t  af,
fib_protocol_t out 
)

Definition at line 532 of file fib_api.c.

+ Here is the caller graph for this function:

◆ fib_proto_to_api_address_family()

vl_api_address_family_t fib_proto_to_api_address_family ( fib_protocol_t  fproto)

Definition at line 548 of file fib_api.c.

+ Here is the caller graph for this function:

◆ format_vl_api_fib_path()

u8* format_vl_api_fib_path ( u8 s,
va_list *  args 
)

Definition at line 501 of file fib_api.c.

+ Here is the call graph for this function:

◆ send_fib_source()

static walk_rc_t send_fib_source ( fib_source_t  id,
const char *  name,
fib_source_priority_t  prio,
fib_source_behaviour_t  bh,
void *  data 
)
static

Definition at line 594 of file fib_api.c.

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

◆ vl_api_fib_source_add_t_handler()

void vl_api_fib_source_add_t_handler ( vl_api_fib_source_add_t mp)

Definition at line 565 of file fib_api.c.

+ Here is the call graph for this function:

◆ vl_api_fib_source_dump_t_handler()

void vl_api_fib_source_dump_t_handler ( vl_api_fib_source_dump_t mp)

Definition at line 622 of file fib_api.c.

+ Here is the call graph for this function:

◆ VLIB_API_INIT_FUNCTION()

VLIB_API_INIT_FUNCTION ( fib_api_hookup  )

Variable Documentation

◆ fib_base_msg_id

u16 fib_base_msg_id
static

Definition at line 30 of file fib_api.c.