FD.io VPP  v17.07.01-10-g3be13f0
Vector Packet Processing
interface_api.c File Reference
+ Include dependency graph for interface_api.c:

Go to the source code of this file.

Macros

#define vl_typedefs   /* define message structures */
 
#define vl_endianfun   /* define message structures */
 
#define vl_print(handle, ...)   vlib_cli_output (handle, __VA_ARGS__)
 
#define vl_printfun
 
#define foreach_vpe_api_msg
 
#define API_LINK_STATE_EVENT   1
 
#define API_ADMIN_UP_DOWN_EVENT   2
 
#define vl_msg_name_crc_list
 

Functions

static void vl_api_sw_interface_set_flags_t_handler (vl_api_sw_interface_set_flags_t *mp)
 
static void vl_api_sw_interface_set_mtu_t_handler (vl_api_sw_interface_set_mtu_t *mp)
 
static void send_sw_interface_details (vpe_api_main_t *am, unix_shared_memory_queue_t *q, vnet_sw_interface_t *swif, u8 *interface_name, u32 context)
 
static void vl_api_sw_interface_dump_t_handler (vl_api_sw_interface_dump_t *mp)
 
static void vl_api_sw_interface_add_del_address_t_handler (vl_api_sw_interface_add_del_address_t *mp)
 
void stats_dslock_with_hint (int hint, int tag)
 
void stats_dsunlock (void)
 
static void vl_api_sw_interface_set_table_t_handler (vl_api_sw_interface_set_table_t *mp)
 
static void send_sw_interface_get_table_reply (unix_shared_memory_queue_t *q, u32 context, int retval, u32 vrf_id)
 
static void vl_api_sw_interface_get_table_t_handler (vl_api_sw_interface_get_table_t *mp)
 
static void vl_api_sw_interface_set_unnumbered_t_handler (vl_api_sw_interface_set_unnumbered_t *mp)
 
static void vl_api_sw_interface_clear_stats_t_handler (vl_api_sw_interface_clear_stats_t *mp)
 
static int event_data_cmp (void *a1, void *a2)
 
static void send_sw_interface_flags (vpe_api_main_t *am, unix_shared_memory_queue_t *q, vnet_sw_interface_t *swif)
 
static uword link_state_process (vlib_main_t *vm, vlib_node_runtime_t *rt, vlib_frame_t *f)
 
static clib_error_tlink_up_down_function (vnet_main_t *vm, u32 hw_if_index, u32 flags)
 
static clib_error_tadmin_up_down_function (vnet_main_t *vm, u32 hw_if_index, u32 flags)
 
 VNET_SW_INTERFACE_ADMIN_UP_DOWN_FUNCTION (admin_up_down_function)
 
 VNET_HW_INTERFACE_LINK_UP_DOWN_FUNCTION (link_up_down_function)
 
static void vl_api_sw_interface_tag_add_del_t_handler (vl_api_sw_interface_tag_add_del_t *mp)
 
static void vl_api_sw_interface_set_mac_address_t_handler (vl_api_sw_interface_set_mac_address_t *mp)
 
static void setup_message_id_table (api_main_t *am)
 
 pub_sub_handler (interface_events, INTERFACE_EVENTS)
 
static clib_error_tinterface_api_hookup (vlib_main_t *vm)
 
 VLIB_API_INIT_FUNCTION (interface_api_hookup)
 

Variables

vpe_api_main_t vpe_api_main
 
static vlib_node_registration_t link_state_process_node
 (constructor) VLIB_REGISTER_NODE (link_state_process_node) More...
 

Macro Definition Documentation

#define API_ADMIN_UP_DOWN_EVENT   2

Definition at line 569 of file interface_api.c.

#define API_LINK_STATE_EVENT   1

Definition at line 568 of file interface_api.c.

#define foreach_vpe_api_msg
Value:
_(SW_INTERFACE_SET_FLAGS, sw_interface_set_flags) \
_(SW_INTERFACE_SET_MTU, sw_interface_set_mtu) \
_(WANT_INTERFACE_EVENTS, want_interface_events) \
_(SW_INTERFACE_DUMP, sw_interface_dump) \
_(SW_INTERFACE_ADD_DEL_ADDRESS, sw_interface_add_del_address) \
_(SW_INTERFACE_SET_TABLE, sw_interface_set_table) \
_(SW_INTERFACE_GET_TABLE, sw_interface_get_table) \
_(SW_INTERFACE_SET_UNNUMBERED, sw_interface_set_unnumbered) \
_(SW_INTERFACE_CLEAR_STATS, sw_interface_clear_stats) \
_(SW_INTERFACE_TAG_ADD_DEL, sw_interface_tag_add_del) \
_(SW_INTERFACE_SET_MAC_ADDRESS, sw_interface_set_mac_address)

Definition at line 51 of file interface_api.c.

#define vl_endianfun   /* define message structures */

Definition at line 38 of file interface_api.c.

#define vl_msg_name_crc_list

Definition at line 778 of file interface_api.c.

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

Definition at line 43 of file interface_api.c.

#define vl_printfun

Definition at line 44 of file interface_api.c.

#define vl_typedefs   /* define message structures */

Definition at line 34 of file interface_api.c.

Function Documentation

static clib_error_t * admin_up_down_function ( vnet_main_t vm,
u32  hw_if_index,
u32  flags 
)
static

Definition at line 690 of file interface_api.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static int event_data_cmp ( void *  a1,
void *  a2 
)
static

Definition at line 572 of file interface_api.c.

+ Here is the caller graph for this function:

static clib_error_t* interface_api_hookup ( vlib_main_t vm)
static

Definition at line 793 of file interface_api.c.

+ Here is the call graph for this function:

static uword link_state_process ( vlib_main_t vm,
vlib_node_runtime_t rt,
vlib_frame_t f 
)
static

Definition at line 601 of file interface_api.c.

+ Here is the call graph for this function:

static clib_error_t * link_up_down_function ( vnet_main_t vm,
u32  hw_if_index,
u32  flags 
)
static

Definition at line 677 of file interface_api.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

pub_sub_handler ( interface_events  ,
INTERFACE_EVENTS   
)

+ Here is the caller graph for this function:

static void send_sw_interface_details ( vpe_api_main_t am,
unix_shared_memory_queue_t q,
vnet_sw_interface_t swif,
u8 interface_name,
u32  context 
)
static

Definition at line 140 of file interface_api.c.

+ Here is the call graph for this function:

static void send_sw_interface_flags ( vpe_api_main_t am,
unix_shared_memory_queue_t q,
vnet_sw_interface_t swif 
)
static

Definition at line 581 of file interface_api.c.

+ Here is the call graph for this function:

static void send_sw_interface_get_table_reply ( unix_shared_memory_queue_t q,
u32  context,
int  retval,
u32  vrf_id 
)
static

Definition at line 388 of file interface_api.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static void setup_message_id_table ( api_main_t am)
static

Definition at line 783 of file interface_api.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void stats_dslock_with_hint ( int  hint,
int  tag 
)

Definition at line 310 of file interface_api.c.

+ Here is the caller graph for this function:

void stats_dsunlock ( void  )

Definition at line 316 of file interface_api.c.

+ Here is the caller graph for this function:

static void vl_api_sw_interface_add_del_address_t_handler ( vl_api_sw_interface_add_del_address_t mp)
static

Definition at line 281 of file interface_api.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static void vl_api_sw_interface_clear_stats_t_handler ( vl_api_sw_interface_clear_stats_t mp)
static

Definition at line 506 of file interface_api.c.

+ Here is the call graph for this function:

static void vl_api_sw_interface_dump_t_handler ( vl_api_sw_interface_dump_t mp)
static

Definition at line 240 of file interface_api.c.

+ Here is the call graph for this function:

static void vl_api_sw_interface_get_table_t_handler ( vl_api_sw_interface_get_table_t mp)
static

Definition at line 404 of file interface_api.c.

+ Here is the call graph for this function:

static void vl_api_sw_interface_set_flags_t_handler ( vl_api_sw_interface_set_flags_t mp)
static

Definition at line 65 of file interface_api.c.

+ Here is the call graph for this function:

static void vl_api_sw_interface_set_mac_address_t_handler ( vl_api_sw_interface_set_mac_address_t mp)
static

Definition at line 738 of file interface_api.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static void vl_api_sw_interface_set_mtu_t_handler ( vl_api_sw_interface_set_mtu_t mp)
static

Definition at line 89 of file interface_api.c.

+ Here is the call graph for this function:

static void vl_api_sw_interface_set_table_t_handler ( vl_api_sw_interface_set_table_t mp)
static

Definition at line 321 of file interface_api.c.

+ Here is the call graph for this function:

static void vl_api_sw_interface_set_unnumbered_t_handler ( vl_api_sw_interface_set_unnumbered_t mp)
static

Definition at line 438 of file interface_api.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static void vl_api_sw_interface_tag_add_del_t_handler ( vl_api_sw_interface_tag_add_del_t mp)
static

Definition at line 707 of file interface_api.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

VLIB_API_INIT_FUNCTION ( interface_api_hookup  )

+ Here is the caller graph for this function:

VNET_HW_INTERFACE_LINK_UP_DOWN_FUNCTION ( link_up_down_function  )
VNET_SW_INTERFACE_ADMIN_UP_DOWN_FUNCTION ( admin_up_down_function  )

Variable Documentation

vlib_node_registration_t link_state_process_node
static
Initial value:
= {
.function = link_state_process,
.name = "vpe-link-state-process",
}
static uword link_state_process(vlib_main_t *vm, vlib_node_runtime_t *rt, vlib_frame_t *f)

(constructor) VLIB_REGISTER_NODE (link_state_process_node)

Definition at line 666 of file interface_api.c.

vpe_api_main_t vpe_api_main

Definition at line 49 of file interface_api.c.