FD.io VPP  v18.01.1-37-g7ea3975
Vector Packet Processing
application_interface.h File Reference
+ Include dependency graph for application_interface.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define foreach_app_options_flags
 

Typedefs

typedef struct _vnet_app_attach_args_t vnet_app_attach_args_t
 
typedef struct _vnet_app_detach_args_t vnet_app_detach_args_t
 
typedef struct _vnet_bind_args_t vnet_bind_args_t
 
typedef struct _vnet_unbind_args_t vnet_unbind_args_t
 
typedef struct _vnet_connect_args vnet_connect_args_t
 
typedef struct _vnet_disconnect_args_t vnet_disconnect_args_t
 
typedef enum _app_options app_options_t
 
typedef enum _app_options_flags app_options_flags_t
 

Enumerations

enum  app_attach_options_index_t {
  APP_OPTIONS_FLAGS, APP_OPTIONS_EVT_QUEUE_SIZE, APP_OPTIONS_SEGMENT_SIZE, APP_OPTIONS_ADD_SEGMENT_SIZE,
  APP_OPTIONS_PRIVATE_SEGMENT_COUNT, APP_OPTIONS_RX_FIFO_SIZE, APP_OPTIONS_TX_FIFO_SIZE, APP_OPTIONS_PREALLOC_FIFO_PAIRS,
  APP_OPTIONS_NAMESPACE, APP_OPTIONS_NAMESPACE_SECRET, APP_OPTIONS_PROXY_TRANSPORT, APP_OPTIONS_ACCEPT_COOKIE,
  APP_OPTIONS_N_OPTIONS
}
 

Functions

clib_error_tvnet_application_attach (vnet_app_attach_args_t *a)
 Attach application to vpp. More...
 
int vnet_application_detach (vnet_app_detach_args_t *a)
 Detach application from vpp. More...
 
int vnet_bind_uri (vnet_bind_args_t *)
 
int vnet_unbind_uri (vnet_unbind_args_t *a)
 
clib_error_tvnet_connect_uri (vnet_connect_args_t *a)
 
int vnet_disconnect_session (vnet_disconnect_args_t *a)
 
clib_error_tvnet_bind (vnet_bind_args_t *a)
 
clib_error_tvnet_connect (vnet_connect_args_t *a)
 
clib_error_tvnet_unbind (vnet_unbind_args_t *a)
 
int api_parse_session_handle (u64 handle, u32 *session_index, u32 *thread_index)
 

Macro Definition Documentation

foreach_app_options_flags
Value:
_(ACCEPT_REDIRECT, "Use FIFO with redirects") \
_(ADD_SEGMENT, "Add segment and signal app if needed") \
_(IS_BUILTIN, "Application is builtin") \
_(IS_PROXY, "Application is proxying") \
_(USE_GLOBAL_SCOPE, "App can use global session scope") \
_(USE_LOCAL_SCOPE, "App can use local session scope")

Definition at line 119 of file application_interface.h.

Typedef Documentation

typedef enum _app_options_flags app_options_flags_t
typedef enum _app_options app_options_t
typedef struct _vnet_app_attach_args_t vnet_app_attach_args_t
typedef struct _vnet_app_detach_args_t vnet_app_detach_args_t
typedef struct _vnet_bind_args_t vnet_bind_args_t
typedef struct _vnet_connect_args vnet_connect_args_t
typedef struct _vnet_disconnect_args_t vnet_disconnect_args_t
typedef struct _vnet_unbind_args_t vnet_unbind_args_t

Enumeration Type Documentation

Enumerator
APP_OPTIONS_FLAGS 
APP_OPTIONS_EVT_QUEUE_SIZE 
APP_OPTIONS_SEGMENT_SIZE 
APP_OPTIONS_ADD_SEGMENT_SIZE 
APP_OPTIONS_PRIVATE_SEGMENT_COUNT 
APP_OPTIONS_RX_FIFO_SIZE 
APP_OPTIONS_TX_FIFO_SIZE 
APP_OPTIONS_PREALLOC_FIFO_PAIRS 
APP_OPTIONS_NAMESPACE 
APP_OPTIONS_NAMESPACE_SECRET 
APP_OPTIONS_PROXY_TRANSPORT 
APP_OPTIONS_ACCEPT_COOKIE 
APP_OPTIONS_N_OPTIONS 

Definition at line 102 of file application_interface.h.

Function Documentation

int api_parse_session_handle ( u64  handle,
u32 session_index,
u32 thread_index 
)

Definition at line 54 of file application_interface.c.

+ Here is the call graph for this function:

clib_error_t* vnet_application_attach ( vnet_app_attach_args_t a)

Attach application to vpp.

Allocates a vpp app, i.e., a structure that keeps back pointers to external app and a segment manager for shared memory fifo based communication with the external app.

Definition at line 399 of file application_interface.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int vnet_application_detach ( vnet_app_detach_args_t a)

Detach application from vpp.

Definition at line 442 of file application_interface.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

clib_error_t* vnet_bind ( vnet_bind_args_t a)

Definition at line 526 of file application_interface.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int vnet_bind_uri ( vnet_bind_args_t )

Definition at line 458 of file application_interface.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

clib_error_t* vnet_connect ( vnet_connect_args_t a)

Definition at line 544 of file application_interface.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

clib_error_t* vnet_connect_uri ( vnet_connect_args_t a)

Definition at line 490 of file application_interface.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int vnet_disconnect_session ( vnet_disconnect_args_t a)

Definition at line 506 of file application_interface.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

clib_error_t* vnet_unbind ( vnet_unbind_args_t a)

Definition at line 535 of file application_interface.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int vnet_unbind_uri ( vnet_unbind_args_t a)

Definition at line 471 of file application_interface.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function: