5 #ifndef vnsw_agent_gmp_map_h
6 #define vnsw_agent_gmp_map_h
25 #define IGMP_MAX_NOTIF_PER_PASS 10
26 #define IGMP_MAX_HOST_NOTIF_PER_PASS 50
28 #define MGM_GROUP_ADDED 1
29 #define MGM_GROUP_REMOVED 2
30 #define MGM_GROUP_SRC_REMOVED 3
41 void *rcv_pkt, uint32_t packet_len,
46 uint8_t *group_addr, uint8_t *source_addr,
49 uint8_t *group_addr, uint8_t *source_addr,
50 boolean static_group);
54 boolean querier, uint8_t *querier_addr);
77 uint8_t *pkt, uint32_t pkt_len,
void gmp_free_send_buffer(mgm_global_data *gd, gmp_intf *intf, uint8_t *buffer)
uint8_t * gmp_get_send_buffer(mgm_global_data *gd, gmp_intf *intf)
struct _mgm_global_data mgm_global_data
gmp_intf * gmp_attach_intf(mgm_global_data *gd, void *mif_state)
void igmp_host_notification_ready(void *context)
void gmp_xmit_ready(gmp_role role, gmp_proto proto, gmpx_intf_id intf_id)
void gmp_deinit(mc_af mcast_af)
boolean gmp_oif_map_cb(void *inst_context UNUSED, gmp_intf_handle *handle, u_int8_t *group_addr, u_int8_t *source_addr, gmp_intf_handle **output_handle)
mgm_global_data * gmp_init(mc_af mcast_af, task *tp, void *gmp_sm)
boolean gmp_update_intf_state(mgm_global_data *gd, gmp_intf *gif, const gmp_addr_string *intf_addr)
boolean gmp_policy_check(mgm_global_data *gd, gmp_intf *intf, gmp_addr_string source, gmp_addr_string group)
void mgm_querier_change(void *cli_context UNUSED, gmp_intf_handle *handle, boolean querier, u_int8_t *querier_addr)
void igmp_notification_ready(void *context)
boolean gmp_process_pkt(mgm_global_data *gd, gmp_intf *gif, void *rcv_pkt, u_int32_t packet_len, const gmp_addr_string *src_addr, const gmp_addr_string *dst_addr)
void gmp_notification_ready(mgm_global_data *gd)
boolean gmp_policy_cb(void *inst_context, gmp_intf_handle *handle, u_int8_t *group_addr, u_int8_t *source_addr, boolean static_group)
void gmp_group_notify(mgm_global_data *gd, gmp_intf *gif, int group_action, gmp_addr_string source, gmp_addr_string group)
boolean gmp_ssm_check_cb(void *inst_context UNUSED, gmp_intf_handle *handle, u_int8_t *group_addr)
void gmp_cache_resync_notify(mgm_global_data *gd, gmp_intf *gif, gmp_addr_string source, gmp_addr_string group)
void gmp_detach_intf(mgm_global_data *gd, gmp_intf *gif)
void gmp_static_peek(gmp_intf_handle *handle, gmp_proto proto, gmp_packet *rcv_packet)
boolean gmp_notification_handler(mgm_global_data *gd)
void gmp_host_update(mgm_global_data *gd, gmp_intf *intf, boolean join, gmp_addr_string host, gmp_addr_string source, gmp_addr_string group)
void gmp_send_one_packet(mgm_global_data *gd, gmp_intf *intf, uint8_t *pkt, uint32_t pkt_len, gmp_addr_string dest)
boolean gmp_update_intf_querying(mgm_global_data *gd, gmp_intf *gif, boolean query)