ntohl (mp->vtr_push_dot1q));
vat_json_object_add_uint (node, "vtr_tag1", ntohl (mp->vtr_tag1));
vat_json_object_add_uint (node, "vtr_tag2", ntohl (mp->vtr_tag2));
+ if (mp->sub_dot1ah)
+ {
+ vat_json_object_add_string_copy (node, "pbb_vtr_dmac",
+ format (0, "%U",
+ format_ethernet_address,
+ &mp->b_dmac));
+ vat_json_object_add_string_copy (node, "pbb_vtr_smac",
+ format (0, "%U",
+ format_ethernet_address,
+ &mp->b_smac));
+ vat_json_object_add_uint (node, "pbb_vtr_b_vlanid", mp->b_vlanid);
+ vat_json_object_add_uint (node, "pbb_vtr_i_sid", mp->i_sid);
+ }
}
static void vl_api_sw_interface_set_flags_t_handler
}
static void
-api_lisp_gpe_fwd_entry_net_to_host (vl_api_lisp_gpe_fwd_entry_t * e)
+api_gpe_fwd_entry_net_to_host (vl_api_gpe_fwd_entry_t * e)
{
e->dp_table = clib_net_to_host_u32 (e->dp_table);
e->fwd_entry_index = clib_net_to_host_u32 (e->fwd_entry_index);
}
static void
- lisp_gpe_fwd_entries_get_reply_t_net_to_host
- (vl_api_lisp_gpe_fwd_entries_get_reply_t * mp)
+ gpe_fwd_entries_get_reply_t_net_to_host
+ (vl_api_gpe_fwd_entries_get_reply_t * mp)
{
u32 i;
mp->count = clib_net_to_host_u32 (mp->count);
for (i = 0; i < mp->count; i++)
{
- api_lisp_gpe_fwd_entry_net_to_host (&mp->entries[i]);
+ api_gpe_fwd_entry_net_to_host (&mp->entries[i]);
}
}
static void
- vl_api_lisp_gpe_fwd_entry_path_details_t_handler
- (vl_api_lisp_gpe_fwd_entry_path_details_t * mp)
+ vl_api_gpe_fwd_entry_path_details_t_handler
+ (vl_api_gpe_fwd_entry_path_details_t * mp)
{
vat_main_t *vam = &vat_main;
u8 *(*format_ip_address_fcn) (u8 *, va_list *) = 0;
}
static void
-lisp_fill_locator_node (vat_json_node_t * n, vl_api_lisp_gpe_locator_t * loc)
+lisp_fill_locator_node (vat_json_node_t * n, vl_api_gpe_locator_t * loc)
{
struct in6_addr ip6;
struct in_addr ip4;
}
static void
- vl_api_lisp_gpe_fwd_entry_path_details_t_handler_json
- (vl_api_lisp_gpe_fwd_entry_path_details_t * mp)
+ vl_api_gpe_fwd_entry_path_details_t_handler_json
+ (vl_api_gpe_fwd_entry_path_details_t * mp)
{
vat_main_t *vam = &vat_main;
vat_json_node_t *node = NULL;
}
static void
- vl_api_lisp_gpe_fwd_entries_get_reply_t_handler
- (vl_api_lisp_gpe_fwd_entries_get_reply_t * mp)
+ vl_api_gpe_fwd_entries_get_reply_t_handler
+ (vl_api_gpe_fwd_entries_get_reply_t * mp)
{
vat_main_t *vam = &vat_main;
u32 i;
int retval = clib_net_to_host_u32 (mp->retval);
- vl_api_lisp_gpe_fwd_entry_t *e;
+ vl_api_gpe_fwd_entry_t *e;
if (retval)
goto end;
- lisp_gpe_fwd_entries_get_reply_t_net_to_host (mp);
+ gpe_fwd_entries_get_reply_t_net_to_host (mp);
for (i = 0; i < mp->count; i++)
{
}
static void
- vl_api_lisp_gpe_fwd_entries_get_reply_t_handler_json
- (vl_api_lisp_gpe_fwd_entries_get_reply_t * mp)
+ vl_api_gpe_fwd_entries_get_reply_t_handler_json
+ (vl_api_gpe_fwd_entries_get_reply_t * mp)
{
u8 *s = 0;
vat_main_t *vam = &vat_main;
vat_json_node_t *e = 0, root;
u32 i;
int retval = clib_net_to_host_u32 (mp->retval);
- vl_api_lisp_gpe_fwd_entry_t *fwd;
+ vl_api_gpe_fwd_entry_t *fwd;
if (retval)
goto end;
- lisp_gpe_fwd_entries_get_reply_t_net_to_host (mp);
+ gpe_fwd_entries_get_reply_t_net_to_host (mp);
vat_json_init_array (&root);
for (i = 0; i < mp->count; i++)
_(ikev2_profile_set_id_reply) \
_(ikev2_profile_set_ts_reply) \
_(ikev2_set_local_key_reply) \
+_(ikev2_set_responder_reply) \
+_(ikev2_set_ike_transforms_reply) \
+_(ikev2_set_esp_transforms_reply) \
+_(ikev2_set_sa_lifetime_reply) \
+_(ikev2_initiate_sa_init_reply) \
+_(ikev2_initiate_del_ike_sa_reply) \
+_(ikev2_initiate_del_child_sa_reply) \
+_(ikev2_initiate_rekey_child_sa_reply) \
_(delete_loopback_reply) \
_(bd_ip_mac_add_del_reply) \
_(map_del_domain_reply) \
_(lisp_add_del_local_eid_reply) \
_(lisp_add_del_remote_mapping_reply) \
_(lisp_add_del_adjacency_reply) \
-_(lisp_gpe_add_del_fwd_entry_reply) \
+_(gpe_add_del_fwd_entry_reply) \
_(lisp_add_del_map_resolver_reply) \
_(lisp_add_del_map_server_reply) \
-_(lisp_gpe_enable_disable_reply) \
-_(lisp_gpe_add_del_iface_reply) \
+_(gpe_enable_disable_reply) \
+_(gpe_add_del_iface_reply) \
_(lisp_enable_disable_reply) \
_(lisp_rloc_probe_enable_disable_reply) \
_(lisp_map_register_enable_disable_reply) \
_(IKEV2_PROFILE_SET_ID_REPLY, ikev2_profile_set_id_reply) \
_(IKEV2_PROFILE_SET_TS_REPLY, ikev2_profile_set_ts_reply) \
_(IKEV2_SET_LOCAL_KEY_REPLY, ikev2_set_local_key_reply) \
+_(IKEV2_SET_RESPONDER_REPLY, ikev2_set_responder_reply) \
+_(IKEV2_SET_IKE_TRANSFORMS_REPLY, ikev2_set_ike_transforms_reply) \
+_(IKEV2_SET_ESP_TRANSFORMS_REPLY, ikev2_set_esp_transforms_reply) \
+_(IKEV2_SET_SA_LIFETIME_REPLY, ikev2_set_sa_lifetime_reply) \
+_(IKEV2_INITIATE_SA_INIT_REPLY, ikev2_initiate_sa_init_reply) \
+_(IKEV2_INITIATE_DEL_IKE_SA_REPLY, ikev2_initiate_del_ike_sa_reply) \
+_(IKEV2_INITIATE_DEL_CHILD_SA_REPLY, ikev2_initiate_del_child_sa_reply) \
+_(IKEV2_INITIATE_REKEY_CHILD_SA_REPLY, ikev2_initiate_rekey_child_sa_reply) \
_(DELETE_LOOPBACK_REPLY, delete_loopback_reply) \
_(BD_IP_MAC_ADD_DEL_REPLY, bd_ip_mac_add_del_reply) \
_(DHCP_COMPL_EVENT, dhcp_compl_event) \
_(LISP_ADD_DEL_LOCAL_EID_REPLY, lisp_add_del_local_eid_reply) \
_(LISP_ADD_DEL_REMOTE_MAPPING_REPLY, lisp_add_del_remote_mapping_reply) \
_(LISP_ADD_DEL_ADJACENCY_REPLY, lisp_add_del_adjacency_reply) \
-_(LISP_GPE_ADD_DEL_FWD_ENTRY_REPLY, lisp_gpe_add_del_fwd_entry_reply) \
+_(GPE_ADD_DEL_FWD_ENTRY_REPLY, gpe_add_del_fwd_entry_reply) \
_(LISP_ADD_DEL_MAP_RESOLVER_REPLY, lisp_add_del_map_resolver_reply) \
_(LISP_ADD_DEL_MAP_SERVER_REPLY, lisp_add_del_map_server_reply) \
-_(LISP_GPE_ENABLE_DISABLE_REPLY, lisp_gpe_enable_disable_reply) \
+_(GPE_ENABLE_DISABLE_REPLY, gpe_enable_disable_reply) \
_(LISP_ENABLE_DISABLE_REPLY, lisp_enable_disable_reply) \
_(LISP_MAP_REGISTER_ENABLE_DISABLE_REPLY, \
lisp_map_register_enable_disable_reply) \
_(LISP_PITR_SET_LOCATOR_SET_REPLY, lisp_pitr_set_locator_set_reply) \
_(LISP_MAP_REQUEST_MODE_REPLY, lisp_map_request_mode_reply) \
_(LISP_EID_TABLE_ADD_DEL_MAP_REPLY, lisp_eid_table_add_del_map_reply) \
-_(LISP_GPE_ADD_DEL_IFACE_REPLY, lisp_gpe_add_del_iface_reply) \
+_(GPE_ADD_DEL_IFACE_REPLY, gpe_add_del_iface_reply) \
_(LISP_LOCATOR_SET_DETAILS, lisp_locator_set_details) \
_(LISP_LOCATOR_DETAILS, lisp_locator_details) \
_(LISP_EID_TABLE_DETAILS, lisp_eid_table_details) \
_(LISP_MAP_RESOLVER_DETAILS, lisp_map_resolver_details) \
_(LISP_MAP_SERVER_DETAILS, lisp_map_server_details) \
_(LISP_ADJACENCIES_GET_REPLY, lisp_adjacencies_get_reply) \
-_(LISP_GPE_FWD_ENTRIES_GET_REPLY, lisp_gpe_fwd_entries_get_reply) \
-_(LISP_GPE_FWD_ENTRY_PATH_DETAILS, \
- lisp_gpe_fwd_entry_path_details) \
+_(GPE_FWD_ENTRIES_GET_REPLY, gpe_fwd_entries_get_reply) \
+_(GPE_FWD_ENTRY_PATH_DETAILS, \
+ gpe_fwd_entry_path_details) \
_(SHOW_LISP_STATUS_REPLY, show_lisp_status_reply) \
_(LISP_ADD_DEL_MAP_REQUEST_ITR_RLOCS_REPLY, \
lisp_add_del_map_request_itr_rlocs_reply) \
return ret;
}
+static int
+api_ikev2_set_responder (vat_main_t * vam)
+{
+ unformat_input_t *i = vam->input;
+ vl_api_ikev2_set_responder_t *mp;
+ int ret;
+ u8 *name = 0;
+ u32 sw_if_index = ~0;
+ ip4_address_t address;
+
+ const char *valid_chars = "a-zA-Z0-9_";
+
+ while (unformat_check_input (i) != UNFORMAT_END_OF_INPUT)
+ {
+ if (unformat
+ (i, "%U interface %d address %U", unformat_token, valid_chars,
+ &name, &sw_if_index, unformat_ip4_address, &address))
+ vec_add1 (name, 0);
+ else
+ {
+ errmsg ("parse error '%U'", format_unformat_error, i);
+ return -99;
+ }
+ }
+
+ if (!vec_len (name))
+ {
+ errmsg ("profile name must be specified");
+ return -99;
+ }
+
+ if (vec_len (name) > 64)
+ {
+ errmsg ("profile name too long");
+ return -99;
+ }
+
+ M (IKEV2_SET_RESPONDER, mp);
+
+ clib_memcpy (mp->name, name, vec_len (name));
+ vec_free (name);
+
+ mp->sw_if_index = sw_if_index;
+ clib_memcpy (mp->address, &address, sizeof (address));
+
+ S (mp);
+ W (ret);
+ return ret;
+}
+
+static int
+api_ikev2_set_ike_transforms (vat_main_t * vam)
+{
+ unformat_input_t *i = vam->input;
+ vl_api_ikev2_set_ike_transforms_t *mp;
+ int ret;
+ u8 *name = 0;
+ u32 crypto_alg, crypto_key_size, integ_alg, dh_group;
+
+ const char *valid_chars = "a-zA-Z0-9_";
+
+ while (unformat_check_input (i) != UNFORMAT_END_OF_INPUT)
+ {
+ if (unformat (i, "%U %d %d %d %d", unformat_token, valid_chars, &name,
+ &crypto_alg, &crypto_key_size, &integ_alg, &dh_group))
+ vec_add1 (name, 0);
+ else
+ {
+ errmsg ("parse error '%U'", format_unformat_error, i);
+ return -99;
+ }
+ }
+
+ if (!vec_len (name))
+ {
+ errmsg ("profile name must be specified");
+ return -99;
+ }
+
+ if (vec_len (name) > 64)
+ {
+ errmsg ("profile name too long");
+ return -99;
+ }
+
+ M (IKEV2_SET_IKE_TRANSFORMS, mp);
+
+ clib_memcpy (mp->name, name, vec_len (name));
+ vec_free (name);
+ mp->crypto_alg = crypto_alg;
+ mp->crypto_key_size = crypto_key_size;
+ mp->integ_alg = integ_alg;
+ mp->dh_group = dh_group;
+
+ S (mp);
+ W (ret);
+ return ret;
+}
+
+
+static int
+api_ikev2_set_esp_transforms (vat_main_t * vam)
+{
+ unformat_input_t *i = vam->input;
+ vl_api_ikev2_set_esp_transforms_t *mp;
+ int ret;
+ u8 *name = 0;
+ u32 crypto_alg, crypto_key_size, integ_alg, dh_group;
+
+ const char *valid_chars = "a-zA-Z0-9_";
+
+ while (unformat_check_input (i) != UNFORMAT_END_OF_INPUT)
+ {
+ if (unformat (i, "%U %d %d %d %d", unformat_token, valid_chars, &name,
+ &crypto_alg, &crypto_key_size, &integ_alg, &dh_group))
+ vec_add1 (name, 0);
+ else
+ {
+ errmsg ("parse error '%U'", format_unformat_error, i);
+ return -99;
+ }
+ }
+
+ if (!vec_len (name))
+ {
+ errmsg ("profile name must be specified");
+ return -99;
+ }
+
+ if (vec_len (name) > 64)
+ {
+ errmsg ("profile name too long");
+ return -99;
+ }
+
+ M (IKEV2_SET_ESP_TRANSFORMS, mp);
+
+ clib_memcpy (mp->name, name, vec_len (name));
+ vec_free (name);
+ mp->crypto_alg = crypto_alg;
+ mp->crypto_key_size = crypto_key_size;
+ mp->integ_alg = integ_alg;
+ mp->dh_group = dh_group;
+
+ S (mp);
+ W (ret);
+ return ret;
+}
+
+static int
+api_ikev2_set_sa_lifetime (vat_main_t * vam)
+{
+ unformat_input_t *i = vam->input;
+ vl_api_ikev2_set_sa_lifetime_t *mp;
+ int ret;
+ u8 *name = 0;
+ u64 lifetime, lifetime_maxdata;
+ u32 lifetime_jitter, handover;
+
+ const char *valid_chars = "a-zA-Z0-9_";
+
+ while (unformat_check_input (i) != UNFORMAT_END_OF_INPUT)
+ {
+ if (unformat (i, "%U %lu %u %u %lu", unformat_token, valid_chars, &name,
+ &lifetime, &lifetime_jitter, &handover,
+ &lifetime_maxdata))
+ vec_add1 (name, 0);
+ else
+ {
+ errmsg ("parse error '%U'", format_unformat_error, i);
+ return -99;
+ }
+ }
+
+ if (!vec_len (name))
+ {
+ errmsg ("profile name must be specified");
+ return -99;
+ }
+
+ if (vec_len (name) > 64)
+ {
+ errmsg ("profile name too long");
+ return -99;
+ }
+
+ M (IKEV2_SET_SA_LIFETIME, mp);
+
+ clib_memcpy (mp->name, name, vec_len (name));
+ vec_free (name);
+ mp->lifetime = lifetime;
+ mp->lifetime_jitter = lifetime_jitter;
+ mp->handover = handover;
+ mp->lifetime_maxdata = lifetime_maxdata;
+
+ S (mp);
+ W (ret);
+ return ret;
+}
+
+static int
+api_ikev2_initiate_sa_init (vat_main_t * vam)
+{
+ unformat_input_t *i = vam->input;
+ vl_api_ikev2_initiate_sa_init_t *mp;
+ int ret;
+ u8 *name = 0;
+
+ const char *valid_chars = "a-zA-Z0-9_";
+
+ while (unformat_check_input (i) != UNFORMAT_END_OF_INPUT)
+ {
+ if (unformat (i, "%U", unformat_token, valid_chars, &name))
+ vec_add1 (name, 0);
+ else
+ {
+ errmsg ("parse error '%U'", format_unformat_error, i);
+ return -99;
+ }
+ }
+
+ if (!vec_len (name))
+ {
+ errmsg ("profile name must be specified");
+ return -99;
+ }
+
+ if (vec_len (name) > 64)
+ {
+ errmsg ("profile name too long");
+ return -99;
+ }
+
+ M (IKEV2_INITIATE_SA_INIT, mp);
+
+ clib_memcpy (mp->name, name, vec_len (name));
+ vec_free (name);
+
+ S (mp);
+ W (ret);
+ return ret;
+}
+
+static int
+api_ikev2_initiate_del_ike_sa (vat_main_t * vam)
+{
+ unformat_input_t *i = vam->input;
+ vl_api_ikev2_initiate_del_ike_sa_t *mp;
+ int ret;
+ u64 ispi;
+
+
+ while (unformat_check_input (i) != UNFORMAT_END_OF_INPUT)
+ {
+ if (unformat (i, "%lx", &ispi))
+ ;
+ else
+ {
+ errmsg ("parse error '%U'", format_unformat_error, i);
+ return -99;
+ }
+ }
+
+ M (IKEV2_INITIATE_DEL_IKE_SA, mp);
+
+ mp->ispi = ispi;
+
+ S (mp);
+ W (ret);
+ return ret;
+}
+
+static int
+api_ikev2_initiate_del_child_sa (vat_main_t * vam)
+{
+ unformat_input_t *i = vam->input;
+ vl_api_ikev2_initiate_del_child_sa_t *mp;
+ int ret;
+ u32 ispi;
+
+
+ while (unformat_check_input (i) != UNFORMAT_END_OF_INPUT)
+ {
+ if (unformat (i, "%x", &ispi))
+ ;
+ else
+ {
+ errmsg ("parse error '%U'", format_unformat_error, i);
+ return -99;
+ }
+ }
+
+ M (IKEV2_INITIATE_DEL_CHILD_SA, mp);
+
+ mp->ispi = ispi;
+
+ S (mp);
+ W (ret);
+ return ret;
+}
+
+static int
+api_ikev2_initiate_rekey_child_sa (vat_main_t * vam)
+{
+ unformat_input_t *i = vam->input;
+ vl_api_ikev2_initiate_rekey_child_sa_t *mp;
+ int ret;
+ u32 ispi;
+
+
+ while (unformat_check_input (i) != UNFORMAT_END_OF_INPUT)
+ {
+ if (unformat (i, "%x", &ispi))
+ ;
+ else
+ {
+ errmsg ("parse error '%U'", format_unformat_error, i);
+ return -99;
+ }
+ }
+
+ M (IKEV2_INITIATE_REKEY_CHILD_SA, mp);
+
+ mp->ispi = ispi;
+
+ S (mp);
+ W (ret);
+ return ret;
+}
+
/*
* MAP
*/
{
u32 dp_table = 0, vni = 0;;
unformat_input_t *input = vam->input;
- vl_api_lisp_gpe_add_del_fwd_entry_t *mp;
+ vl_api_gpe_add_del_fwd_entry_t *mp;
u8 is_add = 1;
lisp_eid_vat_t _rmt_eid, *rmt_eid = &_rmt_eid;
lisp_eid_vat_t _lcl_eid, *lcl_eid = &_lcl_eid;
u32 action = ~0, w;
ip4_address_t rmt_rloc4, lcl_rloc4;
ip6_address_t rmt_rloc6, lcl_rloc6;
- vl_api_lisp_gpe_locator_t *rmt_locs = 0, *lcl_locs = 0, rloc, *curr_rloc =
- 0;
+ vl_api_gpe_locator_t *rmt_locs = 0, *lcl_locs = 0, rloc, *curr_rloc = 0;
int ret;
memset (&rloc, 0, sizeof (rloc));
}
/* Construct the API message */
- M2 (LISP_GPE_ADD_DEL_FWD_ENTRY, mp,
- sizeof (vl_api_lisp_gpe_locator_t) * vec_len (rmt_locs) * 2);
+ M2 (GPE_ADD_DEL_FWD_ENTRY, mp,
+ sizeof (vl_api_gpe_locator_t) * vec_len (rmt_locs) * 2);
mp->is_add = is_add;
lisp_eid_put_vat (mp->rmt_eid, rmt_eid->addr, rmt_eid->type);
{
mp->loc_num = clib_host_to_net_u32 (vec_len (rmt_locs) * 2);
clib_memcpy (mp->locs, lcl_locs,
- (sizeof (vl_api_lisp_gpe_locator_t) * vec_len (lcl_locs)));
+ (sizeof (vl_api_gpe_locator_t) * vec_len (lcl_locs)));
- u32 offset = sizeof (vl_api_lisp_gpe_locator_t) * vec_len (lcl_locs);
+ u32 offset = sizeof (vl_api_gpe_locator_t) * vec_len (lcl_locs);
clib_memcpy (((u8 *) mp->locs) + offset, rmt_locs,
- (sizeof (vl_api_lisp_gpe_locator_t) * vec_len (rmt_locs)));
+ (sizeof (vl_api_gpe_locator_t) * vec_len (rmt_locs)));
}
vec_free (lcl_locs);
vec_free (rmt_locs);
api_lisp_gpe_enable_disable (vat_main_t * vam)
{
unformat_input_t *input = vam->input;
- vl_api_lisp_gpe_enable_disable_t *mp;
+ vl_api_gpe_enable_disable_t *mp;
u8 is_set = 0;
u8 is_en = 1;
int ret;
}
/* Construct the API message */
- M (LISP_GPE_ENABLE_DISABLE, mp);
+ M (GPE_ENABLE_DISABLE, mp);
mp->is_en = is_en;
api_lisp_gpe_add_del_iface (vat_main_t * vam)
{
unformat_input_t *input = vam->input;
- vl_api_lisp_gpe_add_del_iface_t *mp;
+ vl_api_gpe_add_del_iface_t *mp;
u8 action_set = 0, is_add = 1, is_l2 = 0, dp_table_set = 0, vni_set = 0;
u32 dp_table = 0, vni = 0;
int ret;
}
/* Construct the API message */
- M (LISP_GPE_ADD_DEL_IFACE, mp);
+ M (GPE_ADD_DEL_IFACE, mp);
mp->is_add = is_add;
mp->dp_table = dp_table;
api_lisp_gpe_fwd_entries_get (vat_main_t * vam)
{
unformat_input_t *i = vam->input;
- vl_api_lisp_gpe_fwd_entries_get_t *mp;
+ vl_api_gpe_fwd_entries_get_t *mp;
u8 vni_set = 0;
u32 vni = ~0;
int ret;
"leid", "reid");
}
- M (LISP_GPE_FWD_ENTRIES_GET, mp);
+ M (GPE_FWD_ENTRIES_GET, mp);
mp->vni = clib_host_to_net_u32 (vni);
/* send it... */
return ret;
}
-#define vl_api_lisp_gpe_fwd_entries_get_reply_t_endian vl_noop_handler
-#define vl_api_lisp_gpe_fwd_entries_get_reply_t_print vl_noop_handler
-#define vl_api_lisp_gpe_fwd_entry_path_details_t_endian vl_noop_handler
-#define vl_api_lisp_gpe_fwd_entry_path_details_t_print vl_noop_handler
+#define vl_api_gpe_fwd_entries_get_reply_t_endian vl_noop_handler
+#define vl_api_gpe_fwd_entries_get_reply_t_print vl_noop_handler
+#define vl_api_gpe_fwd_entry_path_details_t_endian vl_noop_handler
+#define vl_api_gpe_fwd_entry_path_details_t_print vl_noop_handler
static int
api_lisp_adjacencies_get (vat_main_t * vam)
static int
api_lisp_gpe_fwd_entry_path_dump (vat_main_t * vam)
{
- vl_api_lisp_gpe_fwd_entry_path_dump_t *mp;
+ vl_api_gpe_fwd_entry_path_dump_t *mp;
vl_api_control_ping_t *mp_ping;
unformat_input_t *i = vam->input;
u32 fwd_entry_index = ~0;
print (vam->ofp, "first line");
}
- M (LISP_GPE_FWD_ENTRY_PATH_DUMP, mp);
+ M (GPE_FWD_ENTRY_PATH_DUMP, mp);
/* send it... */
S (mp);
return ret;
}
+static int
+api_ip_mfib_dump (vat_main_t * vam)
+{
+ vl_api_ip_mfib_dump_t *mp;
+ vl_api_control_ping_t *mp_ping;
+ int ret;
+
+ M (IP_MFIB_DUMP, mp);
+ S (mp);
+
+ /* Use a control ping for synchronization */
+ M (CONTROL_PING, mp_ping);
+ S (mp_ping);
+
+ W (ret);
+ return ret;
+}
+
static void vl_api_ip_neighbor_details_t_handler
(vl_api_ip_neighbor_details_t * mp)
{
return ret;
}
+static int
+api_ip6_mfib_dump (vat_main_t * vam)
+{
+ vl_api_ip6_mfib_dump_t *mp;
+ vl_api_control_ping_t *mp_ping;
+ int ret;
+
+ M (IP6_MFIB_DUMP, mp);
+ S (mp);
+
+ /* Use a control ping for synchronization */
+ M (CONTROL_PING, mp_ping);
+ S (mp_ping);
+
+ W (ret);
+ return ret;
+}
+
int
api_classify_table_ids (vat_main_t * vam)
{
"start_port <port> end_port <port> start_addr <ip4> end_addr <ip4>\n" \
"(local|remote)") \
_(ikev2_set_local_key, "file <absolute_file_path>") \
+_(ikev2_set_responder, "<profile_name> interface <interface> address <addr>") \
+_(ikev2_set_ike_transforms, "<profile_name> <crypto alg> <key size> <integrity alg> <DH group>") \
+_(ikev2_set_esp_transforms, "<profile_name> <crypto alg> <key size> <integrity alg> <DH group>") \
+_(ikev2_set_sa_lifetime, "<profile_name> <seconds> <jitter> <handover> <max bytes>") \
+_(ikev2_initiate_sa_init, "<profile_name>") \
+_(ikev2_initiate_del_ike_sa, "<ispi>") \
+_(ikev2_initiate_del_child_sa, "<ispi>") \
+_(ikev2_initiate_rekey_child_sa, "<ispi>") \
_(delete_loopback,"sw_if_index <nn>") \
_(bd_ip_mac_add_del, "bd_id <bridge-domain-id> <ip4/6-addr> <mac-addr> [del]") \
_(map_add_domain, \
"<ipv4|ipv6>/<prefix> | <L2 address> " \
"locator-set <locator_name> [del]" \
"[key-id sha1|sha256 secret-key <secret-key>]") \
-_(lisp_gpe_add_del_fwd_entry, "reid <eid> [leid <eid>] vni <vni>" \
- "vrf/bd <dp_table> loc-pair <lcl_loc> <rmt_loc> w <weight>... [del]") \
_(lisp_add_del_map_resolver, "<ip4|6-addr> [del]") \
_(lisp_add_del_map_server, "<ip4|6-addr> [del]") \
-_(lisp_gpe_enable_disable, "enable|disable") \
_(lisp_enable_disable, "enable|disable") \
_(lisp_map_register_enable_disable, "enable|disable") \
_(lisp_rloc_probe_enable_disable, "enable|disable") \
-_(lisp_gpe_add_del_iface, "up|down") \
_(lisp_add_del_remote_mapping, "add|del vni <vni> eid <dest-eid> " \
"[seid <seid>] " \
"rloc <locator> p <prio> " \
_(lisp_adjacencies_get, "vni <vni>") \
_(lisp_gpe_fwd_entries_get, "vni <vni>") \
_(lisp_gpe_fwd_entry_path_dump, "index <fwd_entry_index>") \
+_(lisp_gpe_add_del_iface, "up|down") \
+_(lisp_gpe_enable_disable, "enable|disable") \
+_(lisp_gpe_add_del_fwd_entry, "reid <eid> [leid <eid>] vni <vni>" \
+ "vrf/bd <dp_table> loc-pair <lcl_loc> <rmt_loc> w <weight>... [del]") \
_(show_lisp_rloc_probe_state, "") \
_(show_lisp_map_register_state, "") \
_(show_lisp_status, "") \
"<intfc> | sw_if_index <nn> [ip4-table <nn>] [ip6-table <nn>] [del]") \
_(flow_classify_dump, "type [ip4|ip6]") \
_(ip_fib_dump, "") \
+_(ip_mfib_dump, "") \
_(ip6_fib_dump, "") \
+_(ip6_mfib_dump, "") \
_(feature_enable_disable, "arc_name <arc_name> " \
"feature_name <feature_name> <intfc> | sw_if_index <nn> [disable]") \
_(sw_interface_tag_add_del, "<intfc> | sw_if_index <nn> tag <text>" \