FD.io VPP  v16.06
Vector Packet Processing
api_shared.c File Reference
+ Include dependency graph for api_shared.c:

Go to the source code of this file.

Macros

#define ELOG_API_MESSAGE_HANDLERS   0
 
#define foreach_msg_api_vector
 

Enumerations

enum  vl_api_replay_t { DUMP, CUSTOM_DUMP, REPLAY, INITIALIZERS }
 

Functions

void vl_msg_api_barrier_sync (void)
 
void vl_msg_api_barrier_release (void)
 
void vl_msg_api_increment_missing_client_counter (void)
 
int vl_msg_api_rx_trace_enabled (api_main_t *am)
 
int vl_msg_api_tx_trace_enabled (api_main_t *am)
 
void vl_msg_api_trace (api_main_t *am, vl_api_trace_t *tp, void *msg)
 
int vl_msg_api_trace_onoff (api_main_t *am, vl_api_trace_which_t which, int onoff)
 
int vl_msg_api_trace_free (api_main_t *am, vl_api_trace_which_t which)
 
int vl_msg_api_trace_save (api_main_t *am, vl_api_trace_which_t which, FILE *fp)
 
int vl_msg_api_trace_configure (api_main_t *am, vl_api_trace_which_t which, u32 nitems)
 
always_inline void msg_handler_internal (api_main_t *am, void *the_msg, int trace_it, int do_it, int free_it)
 
void vl_msg_api_handler_with_vm_node (api_main_t *am, void *the_msg, vlib_main_t *vm, vlib_node_runtime_t *node)
 
void vl_msg_api_handler (void *the_msg)
 
void vl_msg_api_handler_no_free (void *the_msg)
 
void vl_msg_api_handler_no_trace_no_free (void *the_msg)
 
void vl_msg_api_trace_only (void *the_msg)
 
void vl_msg_api_cleanup_handler (void *the_msg)
 
void vl_msg_api_replay_handler (void *the_msg)
 
void vl_msg_api_socket_handler (void *the_msg)
 
void vl_msg_api_config (vl_msg_api_msg_config_t *c)
 
void vl_msg_api_set_handlers (int id, char *name, void *handler, void *cleanup, void *endian, void *print, int size, int traced)
 
void vl_msg_api_set_cleanup_handler (int msg_id, void *fp)
 
void vl_msg_api_queue_handler (unix_shared_memory_queue_t *q)
 
vl_api_trace_tvl_msg_api_trace_get (api_main_t *am, vl_api_trace_which_t which)
 
void vl_noop_handler (void *mp)
 
clib_error_tvl_api_init (vlib_main_t *vm)
 
void vl_msg_api_custom_dump_configure (api_main_t *am)
 
static void vl_msg_api_process_file (vlib_main_t *vm, u8 *filename, u32 first_index, u32 last_index, vl_api_replay_t which)
 
u8format_vl_msg_api_trace_status (u8 *s, va_list *args)
 
static clib_error_tapi_trace_command_fn (vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
 
static clib_error_tapi_config_fn (vlib_main_t *vm, unformat_input_t *input)
 
void vl_msg_api_post_mortem_dump (void)
 
void vl_msg_api_register_pd_handler (void *fp, u16 msg_id_host_byte_order)
 
int vl_msg_api_pd_handler (void *mp, int rv)
 
void vl_msg_api_set_first_available_msg_id (u16 first_avail)
 
u16 vl_msg_api_get_msg_ids (char *name, int n)
 

Variables

api_main_t api_main
 
static u8 post_mortem_dump_enabled
 
vlib_cli_command_t api_trace_command
 (constructor) VLIB_CLI_COMMAND (api_trace_command) More...
 

Macro Definition Documentation

#define ELOG_API_MESSAGE_HANDLERS   0

Definition at line 372 of file api_shared.c.

#define foreach_msg_api_vector
Value:
_(msg_names) \
_(msg_handlers) \
_(msg_cleanup_handlers) \
_(msg_endian_handlers) \
_(msg_print_handlers) \
_(api_trace_cfg) \
_(message_bounce) \
_(is_mp_safe)

Definition at line 549 of file api_shared.c.

Enumeration Type Documentation

Enumerator
DUMP 
CUSTOM_DUMP 
REPLAY 
INITIALIZERS 

Definition at line 52 of file api_shared.c.

Function Documentation

static clib_error_t* api_config_fn ( vlib_main_t vm,
unformat_input_t input 
)
static

Definition at line 1014 of file api_shared.c.

+ Here is the call graph for this function:

static clib_error_t* api_trace_command_fn ( vlib_main_t vm,
unformat_input_t input,
vlib_cli_command_t cmd 
)
static

Definition at line 927 of file api_shared.c.

+ Here is the call graph for this function:

u8* format_vl_msg_api_trace_status ( u8 s,
va_list *  args 
)

Definition at line 889 of file api_shared.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

always_inline void msg_handler_internal ( api_main_t am,
void the_msg,
int  trace_it,
int  do_it,
int  free_it 
)

Definition at line 331 of file api_shared.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

clib_error_t* vl_api_init ( vlib_main_t vm)

Definition at line 639 of file api_shared.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void vl_msg_api_barrier_release ( void  )

Definition at line 44 of file api_shared.c.

+ Here is the caller graph for this function:

void vl_msg_api_barrier_sync ( void  )

Definition at line 41 of file api_shared.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void vl_msg_api_cleanup_handler ( void the_msg)

Definition at line 503 of file api_shared.c.

+ Here is the call graph for this function:

void vl_msg_api_config ( vl_msg_api_msg_config_t c)

Definition at line 559 of file api_shared.c.

+ Here is the caller graph for this function:

void vl_msg_api_custom_dump_configure ( api_main_t am)

Definition at line 663 of file api_shared.c.

+ Here is the caller graph for this function:

u16 vl_msg_api_get_msg_ids ( char *  name,
int  n 
)

Definition at line 1108 of file api_shared.c.

+ Here is the call graph for this function:

void vl_msg_api_handler ( void the_msg)

Definition at line 458 of file api_shared.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void vl_msg_api_handler_no_free ( void the_msg)

Definition at line 468 of file api_shared.c.

+ Here is the call graph for this function:

void vl_msg_api_handler_no_trace_no_free ( void the_msg)

Definition at line 477 of file api_shared.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void vl_msg_api_handler_with_vm_node ( api_main_t am,
void the_msg,
vlib_main_t vm,
vlib_node_runtime_t node 
)

Definition at line 398 of file api_shared.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void vl_msg_api_increment_missing_client_counter ( void  )

Definition at line 46 of file api_shared.c.

+ Here is the caller graph for this function:

int vl_msg_api_pd_handler ( void mp,
int  rv 
)

Definition at line 1081 of file api_shared.c.

void vl_msg_api_post_mortem_dump ( void  )

Definition at line 1036 of file api_shared.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static void vl_msg_api_process_file ( vlib_main_t vm,
u8 filename,
u32  first_index,
u32  last_index,
vl_api_replay_t  which 
)
static

Definition at line 667 of file api_shared.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void vl_msg_api_queue_handler ( unix_shared_memory_queue_t q)

Definition at line 615 of file api_shared.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void vl_msg_api_register_pd_handler ( void fp,
u16  msg_id_host_byte_order 
)

Definition at line 1068 of file api_shared.c.

void vl_msg_api_replay_handler ( void the_msg)

Definition at line 521 of file api_shared.c.

int vl_msg_api_rx_trace_enabled ( api_main_t am)

Definition at line 59 of file api_shared.c.

void vl_msg_api_set_cleanup_handler ( int  msg_id,
void fp 
)

Definition at line 606 of file api_shared.c.

void vl_msg_api_set_first_available_msg_id ( u16  first_avail)

Definition at line 1101 of file api_shared.c.

+ Here is the caller graph for this function:

void vl_msg_api_set_handlers ( int  id,
char *  name,
void handler,
void cleanup,
void endian,
void print,
int  size,
int  traced 
)

Definition at line 586 of file api_shared.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void vl_msg_api_socket_handler ( void the_msg)

Definition at line 539 of file api_shared.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void vl_msg_api_trace ( api_main_t am,
vl_api_trace_t tp,
void msg 
)

Definition at line 72 of file api_shared.c.

+ Here is the caller graph for this function:

int vl_msg_api_trace_configure ( api_main_t am,
vl_api_trace_which_t  which,
u32  nitems 
)

Definition at line 279 of file api_shared.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int vl_msg_api_trace_free ( api_main_t am,
vl_api_trace_which_t  which 
)

Definition at line 148 of file api_shared.c.

+ Here is the caller graph for this function:

vl_api_trace_t* vl_msg_api_trace_get ( api_main_t am,
vl_api_trace_which_t  which 
)

Definition at line 623 of file api_shared.c.

void vl_msg_api_trace_only ( void the_msg)

Definition at line 493 of file api_shared.c.

+ Here is the call graph for this function:

int vl_msg_api_trace_onoff ( api_main_t am,
vl_api_trace_which_t  which,
int  onoff 
)

Definition at line 109 of file api_shared.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int vl_msg_api_trace_save ( api_main_t am,
vl_api_trace_which_t  which,
FILE *  fp 
)

Definition at line 183 of file api_shared.c.

+ Here is the caller graph for this function:

int vl_msg_api_tx_trace_enabled ( api_main_t am)

Definition at line 64 of file api_shared.c.

void vl_noop_handler ( void mp)

Definition at line 636 of file api_shared.c.

+ Here is the caller graph for this function:

Variable Documentation

api_main_t api_main

Definition at line 38 of file api_shared.c.

vlib_cli_command_t api_trace_command
Initial value:
= {
.path = "api trace",
.short_help =
"api trace [on|off][dump|save|replay <file>][status][free][post-mortem-on]",
.function = api_trace_command_fn,
}
static clib_error_t * api_trace_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
Definition: api_shared.c:927

(constructor) VLIB_CLI_COMMAND (api_trace_command)

Definition at line 1006 of file api_shared.c.

u8 post_mortem_dump_enabled
static

Definition at line 924 of file api_shared.c.