aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/ioam/ioam_test.c
diff options
context:
space:
mode:
authorOle Troan <ot@cisco.com>2019-12-09 14:25:09 +0100
committerPaul Vinciguerra <pvinci@vinciconsulting.com>2019-12-10 04:11:04 +0000
commit0fa66d618e7d839782a896f75bc8b0337cc2a2b8 (patch)
tree9a9b8593063d59dbf66cc6d09914df072c6663e6 /src/plugins/ioam/ioam_test.c
parent668605fc873a6409f38df712106f4b1290d87648 (diff)
ioam: use explicit api types
Also remove API boilerplate. Type: fix Signed-off-by: Ole Troan <ot@cisco.com> Change-Id: I62e795f5af3843af7912707ade4ba178ff326942
Diffstat (limited to 'src/plugins/ioam/ioam_test.c')
-rw-r--r--src/plugins/ioam/ioam_test.c20
1 files changed, 20 insertions, 0 deletions
diff --git a/src/plugins/ioam/ioam_test.c b/src/plugins/ioam/ioam_test.c
index 323c8d75738..228ac07b182 100644
--- a/src/plugins/ioam/ioam_test.c
+++ b/src/plugins/ioam/ioam_test.c
@@ -16,12 +16,15 @@
#include <vat/vat.h>
#include <vlibapi/api.h>
#include <vlibmemory/api.h>
+#include <vnet/format_fns.h>
+#include <vnet/ip/ip_types_api.h>
clib_error_t * vxlan_gpe_ioam_export_vat_plugin_register (vat_main_t * vam);
clib_error_t * pot_vat_plugin_register (vat_main_t *vam);
clib_error_t * trace_vat_plugin_register (vat_main_t * vam);
clib_error_t * vxlan_gpe_vat_plugin_register (vat_main_t * vam);
clib_error_t * udp_ping_vat_plugin_register (vat_main_t * vam);
+clib_error_t * ioam_export_vat_plugin_register (vat_main_t * vam);
clib_error_t *
vat_plugin_register (vat_main_t *vam)
@@ -43,5 +46,22 @@ vat_plugin_register (vat_main_t *vam)
if ((err = udp_ping_vat_plugin_register (vam)))
return err;
+ if ((err = ioam_export_vat_plugin_register (vam)))
+ return err;
+
+ return 0;
+}
+uword unformat_ip46_address (unformat_input_t * input, va_list * args)
+{
+ ip46_address_t *ip46 = va_arg (*args, ip46_address_t *);
+ ip46_type_t type = va_arg (*args, ip46_type_t);
+ if ((type != IP46_TYPE_IP6) &&
+ unformat(input, "%U", unformat_ip4_address, &ip46->ip4)) {
+ ip46_address_mask_ip4(ip46);
+ return 1;
+ } else if ((type != IP46_TYPE_IP4) &&
+ unformat(input, "%U", unformat_ip6_address, &ip46->ip6)) {
+ return 1;
+ }
return 0;
}