{
vat_main_t *vam = &vat_main;
i32 retval = ntohl (mp->retval);
- u32 length = ntohl (mp->length);
+ u32 length = vl_api_string_len (&mp->reply);
vec_reset_length (vam->cmd_reply);
if (retval == 0)
{
vec_validate (vam->cmd_reply, length);
- clib_memcpy ((char *) (vam->cmd_reply), mp->reply, length);
+ clib_memcpy ((char *) (vam->cmd_reply),
+ vl_api_from_api_string (&mp->reply), length);
vam->cmd_reply[length] = 0;
}
vam->result_ready = 1;
vat_json_init_object (&node);
vat_json_object_add_int (&node, "retval", ntohl (mp->retval));
- vat_json_object_add_string_copy (&node, "reply", mp->reply);
+ vat_json_object_add_string_copy (&node, "reply",
+ vl_api_from_api_string (&mp->reply));
vat_json_print (vam->ofp, &node);
vat_json_free (&node);
if (retval >= 0)
{
- errmsg (" program: %s", mp->program);
- errmsg (" version: %s", mp->version);
- errmsg (" build date: %s", mp->build_date);
- errmsg ("build directory: %s", mp->build_directory);
+ char *s;
+ char *p = (char *) &mp->program;
+
+ s = vl_api_from_api_string_c ((vl_api_string_t *) p);
+ errmsg (" program: %s\n", s);
+ free (s);
+
+ p +=
+ vl_api_string_len ((vl_api_string_t *) p) + sizeof (vl_api_string_t);
+ s = vl_api_from_api_string_c ((vl_api_string_t *) p);
+ errmsg (" version: %s\n", s);
+ free (s);
+
+ p +=
+ vl_api_string_len ((vl_api_string_t *) p) + sizeof (vl_api_string_t);
+ s = vl_api_from_api_string_c ((vl_api_string_t *) p);
+ errmsg (" build date: %s\n", s);
+ free (s);
+
+ p +=
+ vl_api_string_len ((vl_api_string_t *) p) + sizeof (vl_api_string_t);
+ s = vl_api_from_api_string_c ((vl_api_string_t *) p);
+ errmsg ("build directory: %s\n", s);
+ free (s);
}
vam->retval = retval;
vam->result_ready = 1;
vat_json_init_object (&node);
vat_json_object_add_int (&node, "retval", ntohl (mp->retval));
- vat_json_object_add_string_copy (&node, "program", mp->program);
- vat_json_object_add_string_copy (&node, "version", mp->version);
- vat_json_object_add_string_copy (&node, "build_date", mp->build_date);
+ char *p = (char *) &mp->program;
+ vat_json_object_add_string_copy (&node, "program",
+ vl_api_from_api_string ((vl_api_string_t *)
+ p));
+ p += vl_api_string_len ((vl_api_string_t *) p) + sizeof (u32);
+ vat_json_object_add_string_copy (&node, "version",
+ vl_api_from_api_string ((vl_api_string_t *)
+ p));
+ p += vl_api_string_len ((vl_api_string_t *) p) + sizeof (u32);
+ vat_json_object_add_string_copy (&node, "build_date",
+ vl_api_from_api_string ((vl_api_string_t *)
+ p));
+ p += vl_api_string_len ((vl_api_string_t *) p) + sizeof (u32);
vat_json_object_add_string_copy (&node, "build_directory",
- mp->build_directory);
+ vl_api_from_api_string ((vl_api_string_t *)
+ p));
vat_json_print (vam->ofp, &node);
vat_json_free (&node);
_(ip_source_and_port_range_check_interface_add_del_reply)\
_(delete_subif_reply) \
_(l2_interface_pbb_tag_rewrite_reply) \
-_(punt_reply) \
+_(set_punt_reply) \
_(feature_enable_disable_reply) \
_(sw_interface_tag_add_del_reply) \
_(hw_interface_set_mtu_reply) \
_(IPSEC_GRE_TUNNEL_DETAILS, ipsec_gre_tunnel_details) \
_(DELETE_SUBIF_REPLY, delete_subif_reply) \
_(L2_INTERFACE_PBB_TAG_REWRITE_REPLY, l2_interface_pbb_tag_rewrite_reply) \
-_(PUNT_REPLY, punt_reply) \
+_(SET_PUNT_REPLY, set_punt_reply) \
_(IP_FIB_DETAILS, ip_fib_details) \
_(IP6_FIB_DETAILS, ip6_fib_details) \
_(FEATURE_ENABLE_DISABLE_REPLY, feature_enable_disable_reply) \
*/
u32 len = vec_len (vam->input->buffer);
M2 (CLI_INBAND, mp, len);
- clib_memcpy (mp->cmd, vam->input->buffer, len);
- mp->length = htonl (len);
+ vl_api_to_api_string (len - 1, (const char *) vam->input->buffer, &mp->cmd);
S (mp);
W (ret);
print (vam->ofp,
" weight %d, sw_if_index %d, is_local %d, is_drop %d, "
"is_unreach %d, is_prohitbit %d, afi %d, next_hop %U",
- ntohl (fp->weight), ntohl (fp->sw_if_index), fp->is_local,
+ fp->weight, ntohl (fp->sw_if_index), fp->is_local,
fp->is_drop, fp->is_unreach, fp->is_prohibit, fp->afi,
format_ip6_address, fp->next_hop);
else if (fp->afi == IP46_TYPE_IP4)
print (vam->ofp,
" weight %d, sw_if_index %d, is_local %d, is_drop %d, "
"is_unreach %d, is_prohitbit %d, afi %d, next_hop %U",
- ntohl (fp->weight), ntohl (fp->sw_if_index), fp->is_local,
+ fp->weight, ntohl (fp->sw_if_index), fp->is_local,
fp->is_drop, fp->is_unreach, fp->is_prohibit, fp->afi,
format_ip4_address, fp->next_hop);
}
}
static int
-api_punt (vat_main_t * vam)
+api_set_punt (vat_main_t * vam)
{
unformat_input_t *i = vam->input;
- vl_api_punt_t *mp;
+ vl_api_set_punt_t *mp;
u32 ipv = ~0;
u32 protocol = ~0;
u32 port = ~0;
}
}
- M (PUNT, mp);
+ M (SET_PUNT, mp);
mp->is_add = (u8) is_add;
- mp->ipv = (u8) ipv;
- mp->l4_protocol = (u8) protocol;
- mp->l4_port = htons ((u16) port);
+ mp->punt.ipv = (u8) ipv;
+ mp->punt.l4_protocol = (u8) protocol;
+ mp->punt.l4_port = htons ((u16) port);
S (mp);
W (ret);
"<intfc> | sw_if_index <nn> \n" \
"[disable | push | pop | translate_pbb_stag <outer_tag>] \n" \
"dmac <mac> smac <mac> sid <nn> [vlanid <nn>]") \
-_(punt, "protocol <l4-protocol> [ip <ver>] [port <l4-port>] [del]") \
+_(set_punt, "protocol <l4-protocol> [ip <ver>] [port <l4-port>] [del]") \
_(flow_classify_set_interface, \
"<intfc> | sw_if_index <nn> [ip4-table <nn>] [ip6-table <nn>] [del]") \
_(flow_classify_dump, "type [ip4|ip6]") \