FD.io VPP  v16.09
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)
 
static 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
 
static 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 416 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 620 of file api_shared.c.

Enumeration Type Documentation

Enumerator
DUMP 
CUSTOM_DUMP 
REPLAY 
INITIALIZERS 

Definition at line 59 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 1165 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 1038 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 1000 of file api_shared.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static void msg_handler_internal ( api_main_t am,
void *  the_msg,
int  trace_it,
int  do_it,
int  free_it 
)
inlinestatic

Definition at line 372 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 718 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 48 of file api_shared.c.

+ Here is the caller graph for this function:

void vl_msg_api_barrier_sync ( void  )

Definition at line 42 of file api_shared.c.

+ Here is the caller graph for this function:

void vl_msg_api_cleanup_handler ( void *  the_msg)

Definition at line 569 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 631 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 744 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 1269 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 ( void *  the_msg)

Definition at line 520 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 531 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 541 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 444 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 53 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 1240 of file api_shared.c.

void vl_msg_api_post_mortem_dump ( void  )

Definition at line 1191 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 751 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 690 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 1226 of file api_shared.c.

void vl_msg_api_replay_handler ( void *  the_msg)

Definition at line 589 of file api_shared.c.

int vl_msg_api_rx_trace_enabled ( api_main_t am)

Definition at line 68 of file api_shared.c.

void vl_msg_api_set_cleanup_handler ( int  msg_id,
void *  fp 
)

Definition at line 680 of file api_shared.c.

void vl_msg_api_set_first_available_msg_id ( u16  first_avail)

Definition at line 1261 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 659 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 610 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 83 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 311 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 167 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 699 of file api_shared.c.

void vl_msg_api_trace_only ( void *  the_msg)

Definition at line 558 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 125 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 204 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 74 of file api_shared.c.

void vl_noop_handler ( void *  mp)

Definition at line 713 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
static
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:1038

(constructor) VLIB_CLI_COMMAND (api_trace_command)

Definition at line 1156 of file api_shared.c.

u8 post_mortem_dump_enabled
static

Definition at line 1035 of file api_shared.c.