VCL: Handle epoll HUP events in sock_test_server
[vpp.git] / src / plugins / lb / lb_test.c
index a811079..b027939 100644 (file)
@@ -16,7 +16,7 @@
 #include <vat/vat.h>
 #include <vlibapi/api.h>
 #include <vlibmemory/api.h>
-#include <vlibsocket/api.h>
+
 #include <vppinfra/error.h>
 #include <lb/lb.h>
 
@@ -134,6 +134,7 @@ static int api_lb_conf (vat_main_t * vam)
 {
   unformat_input_t *i = vam->input;
   vl_api_lb_conf_t mps, *mp;
+  int ret;
 
   if (!unformat(i, "%U %U %u %u",
                unformat_ip4_address, &mps.ip4_src_address,
@@ -146,18 +147,17 @@ static int api_lb_conf (vat_main_t * vam)
 
   M(LB_CONF, mp);
   S(mp);
-  W;
-
-  /* NOTREACHED */
-  return 0;
+  W (ret);
+  return ret;
 }
 
 static int api_lb_add_del_vip (vat_main_t * vam)
 {
   unformat_input_t * i = vam->input;
   vl_api_lb_add_del_vip_t mps, *mp;
+  int ret;
   mps.is_del = 0;
-  mps.is_gre4 = 0;
+  mps.encap = LB_ENCAP_TYPE_GRE4;
 
   if (!unformat(i, "%U",
                 unformat_ip46_prefix, mps.ip_prefix, &mps.prefix_length, IP46_TYPE_ANY)) {
@@ -166,9 +166,11 @@ static int api_lb_add_del_vip (vat_main_t * vam)
   }
 
   if (unformat(i, "gre4")) {
-    mps.is_gre4 = 1;
+    mps.encap = LB_ENCAP_TYPE_GRE4;
   } else if (unformat(i, "gre6")) {
-    mps.is_gre4 = 0;
+    mps.encap = LB_ENCAP_TYPE_GRE6;
+  } else if (unformat(i, "l3dsr")) {
+    mps.encap = LB_ENCAP_TYPE_L3DSR;
   } else {
     errmsg ("no encap\n");
     return -99;
@@ -185,15 +187,15 @@ static int api_lb_add_del_vip (vat_main_t * vam)
 
   M(LB_ADD_DEL_VIP, mp);
   S(mp);
-  W;
-  /* NOTREACHED */
-  return 0;
+  W (ret);
+  return ret;
 }
 
 static int api_lb_add_del_as (vat_main_t * vam)
 {
   unformat_input_t * i = vam->input;
   vl_api_lb_add_del_as_t mps, *mp;
+  int ret;
   mps.is_del = 0;
 
   if (!unformat(i, "%U %U",
@@ -209,9 +211,8 @@ static int api_lb_add_del_as (vat_main_t * vam)
 
   M(LB_ADD_DEL_AS, mp);
   S(mp);
-  W;
-  /* NOTREACHED */
-  return 0;
+  W (ret);
+  return ret;
 }
 
 /*