FD.io VPP  v17.10-9-gd594711
Vector Packet Processing
application.c File Reference
+ Include dependency graph for application.c:

Go to the source code of this file.

Functions

int application_api_queue_is_full (application_t *app)
 
static void application_table_add (application_t *app)
 
static void application_table_del (application_t *app)
 
application_t * application_lookup (u32 api_client_index)
 
application_t * application_new ()
 
void application_del (application_t *app)
 
static void application_verify_cb_fns (session_cb_vft_t *cb_fns)
 
int application_init (application_t *app, u32 api_client_index, u64 *options, session_cb_vft_t *cb_fns)
 
application_t * application_get (u32 index)
 
application_t * application_get_if_valid (u32 index)
 
u32 application_get_index (application_t *app)
 
static segment_manager_t * application_alloc_segment_manager (application_t *app)
 
int application_start_listen (application_t *srv, session_type_t session_type, transport_endpoint_t *tep, u64 *res)
 Start listening local transport endpoint for requested transport. More...
 
int application_stop_listen (application_t *srv, u64 handle)
 Stop listening on session associated to handle. More...
 
int application_open_session (application_t *app, session_type_t sst, transport_endpoint_t *tep, u32 api_context)
 
segment_manager_t * application_get_connect_segment_manager (application_t *app)
 
segment_manager_t * application_get_listen_segment_manager (application_t *app, stream_session_t *s)
 
static u8 * app_get_name_from_reg_index (application_t *app)
 
int application_is_proxy (application_t *app)
 
int application_add_segment_notify (u32 app_index, u32 fifo_segment_index)
 
u8 * format_application_listener (u8 *s, va_list *args)
 
void application_format_connects (application_t *app, int verbose)
 
u8 * format_application (u8 *s, va_list *args)
 
static clib_error_t * show_app_command_fn (vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
 

Variables

static application_t * app_pool
 Pool from which we allocate all applications. More...
 
static uword * app_by_api_client_index
 Hash table of apps by api client index. More...
 
static u32 default_app_evt_queue_size = 128
 Default application event queue size. More...
 
static vlib_cli_command_t show_app_command
 (constructor) VLIB_CLI_COMMAND (show_app_command) More...
 

Function Documentation

static u8* app_get_name_from_reg_index ( application_t *  app)
static

Definition at line 388 of file application.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int application_add_segment_notify ( u32  app_index,
u32  fifo_segment_index 
)

Definition at line 409 of file application.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static segment_manager_t* application_alloc_segment_manager ( application_t *  app)
static

Definition at line 245 of file application.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int application_api_queue_is_full ( application_t *  app)

Definition at line 36 of file application.c.

+ Here is the call graph for this function:

void application_del ( application_t *  app)

Definition at line 91 of file application.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void application_format_connects ( application_t *  app,
int  verbose 
)

Definition at line 461 of file application.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

application_t* application_get ( u32  index)

Definition at line 224 of file application.c.

+ Here is the caller graph for this function:

segment_manager_t* application_get_connect_segment_manager ( application_t *  app)

Definition at line 371 of file application.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

application_t* application_get_if_valid ( u32  index)

Definition at line 230 of file application.c.

+ Here is the caller graph for this function:

u32 application_get_index ( application_t *  app)

Definition at line 239 of file application.c.

+ Here is the caller graph for this function:

segment_manager_t* application_get_listen_segment_manager ( application_t *  app,
stream_session_t *  s 
)

Definition at line 378 of file application.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int application_init ( application_t *  app,
u32  api_client_index,
u64 *  options,
session_cb_vft_t *  cb_fns 
)

Definition at line 171 of file application.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int application_is_proxy ( application_t *  app)

Definition at line 403 of file application.c.

+ Here is the caller graph for this function:

application_t* application_lookup ( u32  api_client_index)

Definition at line 66 of file application.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

application_t* application_new ( )

Definition at line 77 of file application.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int application_open_session ( application_t *  app,
session_type_t  sst,
transport_endpoint_t *  tep,
u32  api_context 
)

Definition at line 344 of file application.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int application_start_listen ( application_t *  srv,
session_type_t  session_type,
transport_endpoint_t *  tep,
u64 *  res 
)

Start listening local transport endpoint for requested transport.

Creates a 'dummy' stream session with state LISTENING to be used in session lookups, prior to establishing connection. Requests transport to build it's own specific listening connection.

Definition at line 272 of file application.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int application_stop_listen ( application_t *  srv,
u64  handle 
)

Stop listening on session associated to handle.

Definition at line 308 of file application.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static void application_table_add ( application_t *  app)
static

Definition at line 54 of file application.c.

+ Here is the caller graph for this function:

static void application_table_del ( application_t *  app)
static

Definition at line 60 of file application.c.

+ Here is the caller graph for this function:

static void application_verify_cb_fns ( session_cb_vft_t *  cb_fns)
static

Definition at line 158 of file application.c.

+ Here is the caller graph for this function:

u8* format_application ( u8 *  s,
va_list *  args 
)

Definition at line 525 of file application.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u8* format_application_listener ( u8 *  s,
va_list *  args 
)

Definition at line 424 of file application.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

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

Definition at line 555 of file application.c.

+ Here is the call graph for this function:

Variable Documentation

uword* app_by_api_client_index
static

Hash table of apps by api client index.

Definition at line 28 of file application.c.

application_t* app_pool
static

Pool from which we allocate all applications.

Definition at line 23 of file application.c.

u32 default_app_evt_queue_size = 128
static

Default application event queue size.

Definition at line 33 of file application.c.

vlib_cli_command_t show_app_command
static
Initial value:
=
{
.path = "show app",
.short_help = "show app [server|client] [verbose]",
.function = show_app_command_fn,
}
static clib_error_t * show_app_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
Definition: application.c:555

(constructor) VLIB_CLI_COMMAND (show_app_command)

Definition at line 643 of file application.c.