VPP-323: Add LISP locator set index to reply API message 34/2334/3
authorFilip Tehlar <ftehlar@cisco.com>
Thu, 11 Aug 2016 10:21:37 +0000 (12:21 +0200)
committerFlorin Coras <florin.coras@gmail.com>
Tue, 23 Aug 2016 13:23:13 +0000 (13:23 +0000)
Change-Id: Id798f63f4cf1a8aa7a75931bc23d3c7f5d738938
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
vpp-api-test/vat/api_format.c
vpp/vpp-api/api.c
vpp/vpp-api/vpe.api

index c12b247..5ddb7f7 100644 (file)
@@ -1555,6 +1555,40 @@ static void vl_api_l2tpv3_create_tunnel_reply_t_handler_json
   vam->result_ready = 1;
 }
 
+
+static void vl_api_lisp_add_del_locator_set_reply_t_handler
+  (vl_api_lisp_add_del_locator_set_reply_t * mp)
+{
+  vat_main_t *vam = &vat_main;
+  i32 retval = ntohl (mp->retval);
+  if (vam->async_mode)
+    {
+      vam->async_errors += (retval < 0);
+    }
+  else
+    {
+      vam->retval = retval;
+      vam->result_ready = 1;
+    }
+}
+
+static void vl_api_lisp_add_del_locator_set_reply_t_handler_json
+  (vl_api_lisp_add_del_locator_set_reply_t * mp)
+{
+  vat_main_t *vam = &vat_main;
+  vat_json_node_t node;
+
+  vat_json_init_object (&node);
+  vat_json_object_add_int (&node, "retval", ntohl (mp->retval));
+  vat_json_object_add_uint (&node, "locator_set_index", ntohl (mp->ls_index));
+
+  vat_json_print (vam->ofp, &node);
+  vat_json_free (&node);
+
+  vam->retval = ntohl (mp->retval);
+  vam->result_ready = 1;
+}
+
 static void vl_api_vxlan_add_del_tunnel_reply_t_handler
   (vl_api_vxlan_add_del_tunnel_reply_t * mp)
 {
@@ -3306,7 +3340,6 @@ _(sw_interface_clear_stats_reply)                       \
 _(trace_profile_add_reply)                              \
 _(trace_profile_apply_reply)                            \
 _(trace_profile_del_reply)                              \
-_(lisp_add_del_locator_set_reply)                       \
 _(lisp_add_del_locator_reply)                           \
 _(lisp_add_del_local_eid_reply)                         \
 _(lisp_add_del_remote_mapping_reply)                    \
index db818fd..17893f1 100644 (file)
@@ -5160,7 +5160,12 @@ vl_api_lisp_add_del_locator_set_t_handler (vl_api_lisp_add_del_locator_set_t *
   vec_free (locator_name);
   vec_free (a->locators);
 
-  REPLY_MACRO (VL_API_LISP_ADD_DEL_LOCATOR_SET_REPLY);
+  /* *INDENT-OFF* */
+  REPLY_MACRO2 (VL_API_LISP_ADD_DEL_LOCATOR_SET_REPLY,
+  ({
+    rmp->ls_index = clib_host_to_net_u32 (ls_index);
+  }));
+  /* *INDENT-ON* */
 }
 
 static void
index 0685d21..3b3025d 100644 (file)
@@ -2362,11 +2362,13 @@ define lisp_add_del_locator_set
 /** \brief Reply for locator_set add/del
     @param context - returned sender context, to match reply w/ request
     @param retval - return code
+    @param ls_index - locator set index
 */
 define lisp_add_del_locator_set_reply
 {
   u32 context;
   i32 retval;
+  u32 ls_index;
 };
 
 /** \brief add or delete locator for locator_set