FD.io VPP  v18.04-17-g3a0d853
Vector Packet Processing
vxlan_gpe_api.c File Reference
+ Include dependency graph for vxlan_gpe_api.c:

Go to the source code of this file.

Macros

#define vl_typedefs
 
#define vl_endianfun
 
#define vl_print(handle, ...)   vlib_cli_output (handle, __VA_ARGS__)
 
#define vl_printfun
 
#define vl_api_version(n, v)   static u32 api_version=(v);
 
#define VXLAN_GPE_REPLY_MACRO(t)
 
#define VXLAN_GPE_REPLY_MACRO2(t, body)
 
#define foreach_vxlan_gpe_plugin_api_msg
 
#define vl_msg_name_crc_list
 

Functions

static void vl_api_vxlan_gpe_ioam_enable_t_handler (vl_api_vxlan_gpe_ioam_enable_t *mp)
 
static void vl_api_vxlan_gpe_ioam_disable_t_handler (vl_api_vxlan_gpe_ioam_disable_t *mp)
 
static void vl_api_vxlan_gpe_ioam_vni_enable_t_handler (vl_api_vxlan_gpe_ioam_vni_enable_t *mp)
 
static void vl_api_vxlan_gpe_ioam_vni_disable_t_handler (vl_api_vxlan_gpe_ioam_vni_disable_t *mp)
 
static void vl_api_vxlan_gpe_ioam_transit_enable_t_handler (vl_api_vxlan_gpe_ioam_transit_enable_t *mp)
 
static void vl_api_vxlan_gpe_ioam_transit_disable_t_handler (vl_api_vxlan_gpe_ioam_transit_disable_t *mp)
 
static clib_error_tvxlan_gpe_plugin_api_hookup (vlib_main_t *vm)
 
static void setup_message_id_table (vxlan_gpe_ioam_main_t *sm, api_main_t *am)
 
static clib_error_tvxlan_gpe_init (vlib_main_t *vm)
 

Macro Definition Documentation

#define foreach_vxlan_gpe_plugin_api_msg
Value:
_(VXLAN_GPE_IOAM_ENABLE, vxlan_gpe_ioam_enable) \
_(VXLAN_GPE_IOAM_DISABLE, vxlan_gpe_ioam_disable) \
_(VXLAN_GPE_IOAM_VNI_ENABLE, vxlan_gpe_ioam_vni_enable) \
_(VXLAN_GPE_IOAM_VNI_DISABLE, vxlan_gpe_ioam_vni_disable) \
_(VXLAN_GPE_IOAM_TRANSIT_ENABLE, vxlan_gpe_ioam_transit_enable) \
_(VXLAN_GPE_IOAM_TRANSIT_DISABLE, vxlan_gpe_ioam_transit_disable) \
clib_error_t * vxlan_gpe_ioam_enable(int has_trace_option, int has_pot_option, int has_ppc_option)
clib_error_t * vxlan_gpe_ioam_disable(int has_trace_option, int has_pot_option, int has_ppc_option)

Definition at line 97 of file vxlan_gpe_api.c.

#define vl_api_version (   n,
  v 
)    static u32 api_version=(v);

Definition at line 50 of file vxlan_gpe_api.c.

#define vl_endianfun

Definition at line 39 of file vxlan_gpe_api.c.

#define vl_msg_name_crc_list

Definition at line 306 of file vxlan_gpe_api.c.

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

Definition at line 44 of file vxlan_gpe_api.c.

#define vl_printfun

Definition at line 45 of file vxlan_gpe_api.c.

#define vl_typedefs

Definition at line 34 of file vxlan_gpe_api.c.

#define VXLAN_GPE_REPLY_MACRO (   t)
Value:
do { \
if (!q) \
return; \
\
rmp = vl_msg_api_alloc (sizeof (*rmp)); \
rmp->_vl_msg_id = ntohs((t)+sm->msg_id_base); \
rmp->context = mp->context; \
rmp->retval = ntohl(rv); \
vl_msg_api_send_shmem (q, (u8 *)&rmp); \
} while(0);
void * vl_msg_api_alloc(int nbytes)
void vl_msg_api_send_shmem(svm_queue_t *q, u8 *elem)
svm_queue_t * vl_api_client_index_to_input_queue(u32 index)
Definition: memory_api.c:739
unsigned char u8
Definition: types.h:56
struct _svm_queue svm_queue_t

Definition at line 62 of file vxlan_gpe_api.c.

#define VXLAN_GPE_REPLY_MACRO2 (   t,
  body 
)
Value:
do { \
rv = vl_msg_api_pd_handler (mp, rv); \
q = vl_api_client_index_to_input_queue (mp->client_index); \
if (!q) \
return; \
\
rmp = vl_msg_api_alloc (sizeof (*rmp)); \
rmp->_vl_msg_id = ntohs((t)); \
rmp->context = mp->context; \
rmp->retval = ntohl(rv); \
do {body;} while (0); \
vl_msg_api_send_shmem (q, (u8 *)&rmp); \
} while(0);
int vl_msg_api_pd_handler(void *mp, int rv)
Definition: api_shared.c:843
void * vl_msg_api_alloc(int nbytes)
void vl_msg_api_send_shmem(svm_queue_t *q, u8 *elem)
svm_queue_t * vl_api_client_index_to_input_queue(u32 index)
Definition: memory_api.c:739
unsigned char u8
Definition: types.h:56
struct _svm_queue svm_queue_t

Definition at line 78 of file vxlan_gpe_api.c.

Function Documentation

static void setup_message_id_table ( vxlan_gpe_ioam_main_t sm,
api_main_t am 
)
static

Definition at line 311 of file vxlan_gpe_api.c.

+ Here is the caller graph for this function:

static void vl_api_vxlan_gpe_ioam_disable_t_handler ( vl_api_vxlan_gpe_ioam_disable_t mp)
static

Definition at line 128 of file vxlan_gpe_api.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static void vl_api_vxlan_gpe_ioam_enable_t_handler ( vl_api_vxlan_gpe_ioam_enable_t mp)
static

Definition at line 107 of file vxlan_gpe_api.c.

+ Here is the call graph for this function:

static void vl_api_vxlan_gpe_ioam_transit_disable_t_handler ( vl_api_vxlan_gpe_ioam_transit_disable_t mp)
static

Definition at line 267 of file vxlan_gpe_api.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static void vl_api_vxlan_gpe_ioam_transit_enable_t_handler ( vl_api_vxlan_gpe_ioam_transit_enable_t mp)
static

Definition at line 245 of file vxlan_gpe_api.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static void vl_api_vxlan_gpe_ioam_vni_disable_t_handler ( vl_api_vxlan_gpe_ioam_vni_disable_t mp)
static

Definition at line 198 of file vxlan_gpe_api.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static void vl_api_vxlan_gpe_ioam_vni_enable_t_handler ( vl_api_vxlan_gpe_ioam_vni_enable_t mp)
static

Definition at line 148 of file vxlan_gpe_api.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static clib_error_t* vxlan_gpe_init ( vlib_main_t vm)
static

Definition at line 320 of file vxlan_gpe_api.c.

+ Here is the call graph for this function:

static clib_error_t* vxlan_gpe_plugin_api_hookup ( vlib_main_t vm)
static

Definition at line 289 of file vxlan_gpe_api.c.

+ Here is the caller graph for this function: