FD.io VPP  v18.07-rc0-415-g6c78436
Vector Packet Processing
igmp_api.c File Reference
+ Include dependency graph for igmp_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 foreach_igmp_plugin_api_msg
 
#define vl_msg_name_crc_list
 

Functions

static void vl_api_igmp_listen_t_handler (vl_api_igmp_listen_t *mp)
 
static void vl_api_igmp_enable_disable_t_handler (vl_api_igmp_enable_disable_t *mp)
 
static void send_igmp_details (unix_shared_memory_queue_t *q, igmp_main_t *im, igmp_config_t *config, igmp_group_t *group, igmp_src_t *src, u32 context)
 
static void vl_api_igmp_dump_t_handler (vl_api_igmp_dump_t *mp)
 
static void vl_api_igmp_clear_interface_t_handler (vl_api_igmp_clear_interface_t *mp)
 
static vpe_client_registration_tigmp_api_client_lookup (igmp_main_t *im, u32 client_index)
 igmp group lookup More...
 
static void vl_api_want_igmp_events_t_handler (vl_api_want_igmp_events_t *mp)
 
static clib_error_twant_igmp_events_reaper (u32 client_index)
 
 VL_MSG_API_REAPER_FUNCTION (want_igmp_events_reaper)
 
void send_igmp_event (unix_shared_memory_queue_t *q, u32 context, igmp_main_t *im, igmp_config_t *config, igmp_group_t *group, igmp_src_t *src)
 
void igmp_event (igmp_main_t *im, igmp_config_t *config, igmp_group_t *group, igmp_src_t *src)
 igmp event More...
 
static void setup_message_id_table (igmp_main_t *im, api_main_t *am)
 
static clib_error_tigmp_plugin_api_hookup (vlib_main_t *vm)
 
 VLIB_API_INIT_FUNCTION (igmp_plugin_api_hookup)
 

Macro Definition Documentation

#define foreach_igmp_plugin_api_msg
Value:
_(IGMP_LISTEN, igmp_listen) \
_(IGMP_ENABLE_DISABLE, igmp_enable_disable) \
_(IGMP_DUMP, igmp_dump) \
_(IGMP_CLEAR_INTERFACE, igmp_clear_interface) \
_(WANT_IGMP_EVENTS, want_igmp_events) \
int igmp_listen(vlib_main_t *vm, u8 enable, u32 sw_if_index, ip46_address_t saddr, ip46_address_t gaddr, u8 cli_api_configured)
igmp listen
Definition: igmp.c:738

Definition at line 49 of file igmp_api.c.

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

Definition at line 43 of file igmp_api.c.

#define vl_endianfun

Definition at line 32 of file igmp_api.c.

#define vl_msg_name_crc_list

Definition at line 325 of file igmp_api.c.

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

Definition at line 37 of file igmp_api.c.

#define vl_printfun

Definition at line 38 of file igmp_api.c.

#define vl_typedefs

Definition at line 27 of file igmp_api.c.

Function Documentation

static vpe_client_registration_t* igmp_api_client_lookup ( igmp_main_t im,
u32  client_index 
)
static

igmp group lookup

Parameters
im- igmp main
client_index- client index

Definition at line 202 of file igmp_api.c.

+ Here is the caller graph for this function:

void igmp_event ( igmp_main_t im,
igmp_config_t config,
igmp_group_t group,
igmp_src_t src 
)

igmp event

Parameters
im- igmp main
config- igmp configuration
group- igmp group
src- source

Notify registered api clients of (S,G) filter update.

Definition at line 301 of file igmp_api.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static clib_error_t* igmp_plugin_api_hookup ( vlib_main_t vm)
static

Definition at line 340 of file igmp_api.c.

+ Here is the call graph for this function:

static void send_igmp_details ( unix_shared_memory_queue_t q,
igmp_main_t im,
igmp_config_t config,
igmp_group_t group,
igmp_src_t src,
u32  context 
)
static

Definition at line 109 of file igmp_api.c.

+ Here is the call graph for this function:

void send_igmp_event ( unix_shared_memory_queue_t q,
u32  context,
igmp_main_t im,
igmp_config_t config,
igmp_group_t group,
igmp_src_t src 
)

Definition at line 282 of file igmp_api.c.

+ Here is the call graph for this function:

static void setup_message_id_table ( igmp_main_t im,
api_main_t am 
)
static

Definition at line 330 of file igmp_api.c.

+ Here is the caller graph for this function:

static void vl_api_igmp_clear_interface_t_handler ( vl_api_igmp_clear_interface_t mp)
static

Definition at line 172 of file igmp_api.c.

+ Here is the call graph for this function:

static void vl_api_igmp_dump_t_handler ( vl_api_igmp_dump_t mp)
static

Definition at line 128 of file igmp_api.c.

+ Here is the call graph for this function:

static void vl_api_igmp_enable_disable_t_handler ( vl_api_igmp_enable_disable_t mp)
static

Definition at line 99 of file igmp_api.c.

static void vl_api_igmp_listen_t_handler ( vl_api_igmp_listen_t mp)
static

Definition at line 57 of file igmp_api.c.

+ Here is the call graph for this function:

static void vl_api_want_igmp_events_t_handler ( vl_api_want_igmp_events_t mp)
static

Definition at line 215 of file igmp_api.c.

+ Here is the call graph for this function:

VL_MSG_API_REAPER_FUNCTION ( want_igmp_events_reaper  )

+ Here is the caller graph for this function:

VLIB_API_INIT_FUNCTION ( igmp_plugin_api_hookup  )

+ Here is the caller graph for this function:

static clib_error_t* want_igmp_events_reaper ( u32  client_index)
static

Definition at line 262 of file igmp_api.c.

+ Here is the call graph for this function: