- vl_msg_api_send_shmem (q, (u8 *) & mp);
-}
-
-static void
-send_bd_sw_if_details (l2input_main_t * l2im,
- unix_shared_memory_queue_t * q,
- l2_flood_member_t * member, u32 bd_id, u32 context)
-{
- vl_api_bridge_domain_sw_if_details_t *mp;
- l2_input_config_t *input_cfg;
-
- mp = vl_msg_api_alloc (sizeof (*mp));
- memset (mp, 0, sizeof (*mp));
- mp->_vl_msg_id = ntohs (VL_API_BRIDGE_DOMAIN_SW_IF_DETAILS);
- mp->bd_id = ntohl (bd_id);
- mp->sw_if_index = ntohl (member->sw_if_index);
- input_cfg = vec_elt_at_index (l2im->configs, member->sw_if_index);
- mp->shg = input_cfg->shg;
- mp->context = context;
+ sw_ifs = (vl_api_bridge_domain_sw_if_t *) mp->sw_if_details;
+ vec_foreach (m, bd_config->members)
+ {
+ sw_ifs->sw_if_index = ntohl (m->sw_if_index);
+ input_cfg = vec_elt_at_index (l2im->configs, m->sw_if_index);
+ sw_ifs->shg = input_cfg->shg;
+ sw_ifs++;
+ mp->n_sw_ifs++;
+ }
+ mp->n_sw_ifs = htonl (mp->n_sw_ifs);