FD.io VPP  v21.06-3-gbb25fbf28
Vector Packet Processing
socket_api.c File Reference
+ Include dependency graph for socket_api.c:

Go to the source code of this file.

Macros

#define vl_typedefs   /* define message structures */
 
#define vl_print(handle, ...)   vlib_cli_output (handle, __VA_ARGS__)
 
#define vl_printfun
 
#define vl_endianfun
 
#define SOCK_API_REG_HANDLE_BIT   (1<<31)
 
#define foreach_vlib_api_msg
 

Functions

static u32 sock_api_registration_handle (vl_api_registration_t *regp)
 
static u32 socket_api_registration_handle_to_index (u32 reg_index)
 
u8 vl_socket_api_registration_handle_is_valid (u32 reg_handle)
 
void vl_sock_api_dump_clients (vlib_main_t *vm, api_main_t *am)
 
vl_api_registration_tvl_socket_api_client_handle_to_registration (u32 handle)
 
void vl_socket_api_send (vl_api_registration_t *rp, u8 *elem)
 
void vl_socket_free_registration_index (u32 pool_index)
 
void vl_socket_process_api_msg (vl_api_registration_t *rp, i8 *input_v)
 
int is_being_removed_reg_index (u32 reg_index)
 
static void socket_cleanup_pending_remove_registration_cb (u32 *preg_index)
 
static void vl_socket_request_remove_reg_index (u32 reg_index)
 
clib_error_tvl_socket_read_ready (clib_file_t *uf)
 
clib_error_tvl_socket_write_ready (clib_file_t *uf)
 
clib_error_tvl_socket_error_ready (clib_file_t *uf)
 
void socksvr_file_add (clib_file_main_t *fm, int fd)
 
static clib_error_tsocksvr_accept_ready (clib_file_t *uf)
 
static clib_error_tsocksvr_bogus_write (clib_file_t *uf)
 
void vl_api_sockclnt_create_t_handler (vl_api_sockclnt_create_t *mp)
 
void vl_api_sockclnt_delete_t_handler (vl_api_sockclnt_delete_t *mp)
 
clib_error_tvl_sock_api_send_fd_msg (int socket_fd, int fds[], int n_fds)
 
vl_api_shm_elem_config_tvl_api_make_shm_config (vl_api_sock_init_shm_t *mp)
 
void vl_api_sock_init_shm_t_handler (vl_api_sock_init_shm_t *mp)
 
clib_error_tvl_sock_api_init (vlib_main_t *vm)
 
static clib_error_tsocket_exit (vlib_main_t *vm)
 
static clib_error_tsocksvr_config (vlib_main_t *vm, unformat_input_t *input)
 
void vlibsocket_reference ()
 

Variables

socket_main_t socket_main
 

Macro Definition Documentation

◆ foreach_vlib_api_msg

#define foreach_vlib_api_msg
Value:
_(SOCKCLNT_CREATE, sockclnt_create, 1) \
_(SOCKCLNT_DELETE, sockclnt_delete, 1) \
_(SOCK_INIT_SHM, sock_init_shm, 1)

Definition at line 768 of file socket_api.c.

◆ SOCK_API_REG_HANDLE_BIT

#define SOCK_API_REG_HANDLE_BIT   (1<<31)

Definition at line 50 of file socket_api.c.

◆ vl_endianfun

#define vl_endianfun

Definition at line 44 of file socket_api.c.

◆ vl_print

#define vl_print (   handle,
  ... 
)    vlib_cli_output (handle, __VA_ARGS__)

Definition at line 38 of file socket_api.c.

◆ vl_printfun

#define vl_printfun

Definition at line 39 of file socket_api.c.

◆ vl_typedefs

#define vl_typedefs   /* define message structures */

Definition at line 33 of file socket_api.c.

Function Documentation

◆ is_being_removed_reg_index()

int is_being_removed_reg_index ( u32  reg_index)

Definition at line 208 of file socket_api.c.

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

◆ sock_api_registration_handle()

static u32 sock_api_registration_handle ( vl_api_registration_t regp)
static

Definition at line 53 of file socket_api.c.

+ Here is the caller graph for this function:

◆ socket_api_registration_handle_to_index()

static u32 socket_api_registration_handle_to_index ( u32  reg_index)
static

Definition at line 60 of file socket_api.c.

+ Here is the caller graph for this function:

◆ socket_cleanup_pending_remove_registration_cb()

static void socket_cleanup_pending_remove_registration_cb ( u32 preg_index)
static

Definition at line 216 of file socket_api.c.

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

◆ socket_exit()

static clib_error_t* socket_exit ( vlib_main_t vm)
static

Definition at line 821 of file socket_api.c.

+ Here is the call graph for this function:

◆ socksvr_accept_ready()

static clib_error_t* socksvr_accept_ready ( clib_file_t uf)
static

Definition at line 459 of file socket_api.c.

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

◆ socksvr_bogus_write()

static clib_error_t* socksvr_bogus_write ( clib_file_t uf)
static

Definition at line 476 of file socket_api.c.

+ Here is the caller graph for this function:

◆ socksvr_config()

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

Definition at line 845 of file socket_api.c.

+ Here is the call graph for this function:

◆ socksvr_file_add()

void socksvr_file_add ( clib_file_main_t fm,
int  fd 
)

Definition at line 438 of file socket_api.c.

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

◆ vl_api_make_shm_config()

vl_api_shm_elem_config_t* vl_api_make_shm_config ( vl_api_sock_init_shm_t mp)

Definition at line 590 of file socket_api.c.

+ Here is the caller graph for this function:

◆ vl_api_sock_init_shm_t_handler()

void vl_api_sock_init_shm_t_handler ( vl_api_sock_init_shm_t mp)

Definition at line 648 of file socket_api.c.

+ Here is the call graph for this function:

◆ vl_api_sockclnt_create_t_handler()

void vl_api_sockclnt_create_t_handler ( vl_api_sockclnt_create_t mp)

Definition at line 486 of file socket_api.c.

+ Here is the call graph for this function:

◆ vl_api_sockclnt_delete_t_handler()

void vl_api_sockclnt_delete_t_handler ( vl_api_sockclnt_delete_t mp)

Definition at line 528 of file socket_api.c.

+ Here is the call graph for this function:

◆ vl_sock_api_dump_clients()

void vl_sock_api_dump_clients ( vlib_main_t vm,
api_main_t am 
)

Definition at line 72 of file socket_api.c.

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

◆ vl_sock_api_init()

clib_error_t* vl_sock_api_init ( vlib_main_t vm)

Definition at line 774 of file socket_api.c.

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

◆ vl_sock_api_send_fd_msg()

clib_error_t* vl_sock_api_send_fd_msg ( int  socket_fd,
int  fds[],
int  n_fds 
)

Definition at line 559 of file socket_api.c.

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

◆ vl_socket_api_client_handle_to_registration()

vl_api_registration_t* vl_socket_api_client_handle_to_registration ( u32  handle)

Definition at line 99 of file socket_api.c.

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

◆ vl_socket_api_registration_handle_is_valid()

u8 vl_socket_api_registration_handle_is_valid ( u32  reg_handle)

Definition at line 66 of file socket_api.c.

+ Here is the caller graph for this function:

◆ vl_socket_api_send()

void vl_socket_api_send ( vl_api_registration_t rp,
u8 elem 
)

Definition at line 114 of file socket_api.c.

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

◆ vl_socket_error_ready()

clib_error_t* vl_socket_error_ready ( clib_file_t uf)

Definition at line 430 of file socket_api.c.

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

◆ vl_socket_free_registration_index()

void vl_socket_free_registration_index ( u32  pool_index)

Definition at line 169 of file socket_api.c.

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

◆ vl_socket_process_api_msg()

void vl_socket_process_api_msg ( vl_api_registration_t rp,
i8 input_v 
)

Definition at line 197 of file socket_api.c.

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

◆ vl_socket_read_ready()

clib_error_t* vl_socket_read_ready ( clib_file_t uf)

Definition at line 260 of file socket_api.c.

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

◆ vl_socket_request_remove_reg_index()

static void vl_socket_request_remove_reg_index ( u32  reg_index)
static

Definition at line 229 of file socket_api.c.

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

◆ vl_socket_write_ready()

clib_error_t* vl_socket_write_ready ( clib_file_t uf)

Definition at line 380 of file socket_api.c.

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

◆ vlibsocket_reference()

void vlibsocket_reference ( )

Definition at line 874 of file socket_api.c.

+ Here is the caller graph for this function:

Variable Documentation

◆ socket_main

socket_main_t socket_main

Definition at line 48 of file socket_api.c.