ikev2: add support for custom ipsec-over-udp port
[vpp.git] / src / plugins / vrrp / vrrp_api.c
index 3b9c256..9ef9020 100644 (file)
@@ -34,6 +34,8 @@ vl_api_vrrp_vr_add_del_t_handler (vl_api_vrrp_vr_add_del_t * mp)
   ip46_address_t *addrs = 0;
   int rv;
 
+  VALIDATE_SW_IF_INDEX (mp);
+
   api_flags = htonl (mp->flags);
 
   clib_memset (&vr_conf, 0, sizeof (vr_conf));
@@ -106,6 +108,7 @@ vl_api_vrrp_vr_add_del_t_handler (vl_api_vrrp_vr_add_del_t * mp)
 
   vec_free (addrs);
 
+  BAD_SW_IF_INDEX_LABEL;
   REPLY_MACRO (VL_API_VRRP_VR_ADD_DEL_REPLY);
 }
 
@@ -211,6 +214,8 @@ vl_api_vrrp_vr_dump_t_handler (vl_api_vrrp_vr_dump_t * mp)
   u32 sw_if_index;
 
   reg = vl_api_client_index_to_registration (mp->client_index);
+  if (!reg)
+    return;
 
   sw_if_index = htonl (mp->sw_if_index);
 
@@ -340,6 +345,8 @@ vl_api_vrrp_vr_peer_dump_t_handler (vl_api_vrrp_vr_peer_dump_t * mp)
   vrrp_vr_key_t vr_key;
 
   reg = vl_api_client_index_to_registration (mp->client_index);
+  if (!reg)
+    return;
 
   vr_key.sw_if_index = ntohl (mp->sw_if_index);
 
@@ -456,6 +463,8 @@ vl_api_vrrp_vr_track_if_dump_t_handler (vl_api_vrrp_vr_track_if_dump_t * mp)
   vrrp_vr_t *vr;
 
   reg = vl_api_client_index_to_registration (mp->client_index);
+  if (!reg)
+    return;
 
   if (!mp->dump_all)
     {