diff options
Diffstat (limited to 'plugins')
-rw-r--r-- | plugins/flowperpkt-plugin/flowperpkt/flowperpkt.c | 16 | ||||
-rw-r--r-- | plugins/ioam-plugin/ioam/export/ioam_export.c | 16 | ||||
-rw-r--r-- | plugins/ioam-plugin/ioam/lib-pot/pot_api.c | 16 | ||||
-rw-r--r-- | plugins/ioam-plugin/ioam/lib-trace/trace_api.c | 16 | ||||
-rw-r--r-- | plugins/lb-plugin/lb/api.c | 16 | ||||
-rw-r--r-- | plugins/sample-plugin/sample/sample.c | 16 | ||||
-rw-r--r-- | plugins/snat-plugin/Makefile.am | 7 | ||||
-rw-r--r-- | plugins/snat-plugin/snat/snat.c | 17 |
8 files changed, 117 insertions, 3 deletions
diff --git a/plugins/flowperpkt-plugin/flowperpkt/flowperpkt.c b/plugins/flowperpkt-plugin/flowperpkt/flowperpkt.c index dbdb189865d..529b9195b46 100644 --- a/plugins/flowperpkt-plugin/flowperpkt/flowperpkt.c +++ b/plugins/flowperpkt-plugin/flowperpkt/flowperpkt.c @@ -438,6 +438,19 @@ flowperpkt_plugin_api_hookup (vlib_main_t * vm) return 0; } +#define vl_msg_name_crc_list +#include <flowperpkt/flowperpkt_all_api_h.h> +#undef vl_msg_name_crc_list + +static void +setup_message_id_table (flowperpkt_main_t * fm, api_main_t * am) +{ +#define _(id,n,crc) \ + vl_msg_api_add_msg_name_crc (am, #n "_" #crc, id + fm->msg_id_base); + foreach_vl_msg_name_crc_flowperpkt; +#undef _ +} + /** * @brief Set up the API message handling tables * @param vm vlib_main_t * vlib main data structure pointer @@ -462,6 +475,9 @@ flowperpkt_init (vlib_main_t * vm) /* Hook up message handlers */ error = flowperpkt_plugin_api_hookup (vm); + /* Add our API messages to the global name_crc hash table */ + setup_message_id_table (fm, &api_main); + vec_free (name); /* Decide how many worker threads we have */ diff --git a/plugins/ioam-plugin/ioam/export/ioam_export.c b/plugins/ioam-plugin/ioam/export/ioam_export.c index 9efcab05487..e51c43eb4c1 100644 --- a/plugins/ioam-plugin/ioam/export/ioam_export.c +++ b/plugins/ioam-plugin/ioam/export/ioam_export.c @@ -176,6 +176,19 @@ ioam_export_plugin_api_hookup (vlib_main_t * vm) return 0; } +#define vl_msg_name_crc_list +#include <ioam/export/ioam_export_all_api_h.h> +#undef vl_msg_name_crc_list + +static void +setup_message_id_table (ioam_export_main_t * sm, api_main_t * am) +{ +#define _(id,n,crc) \ + vl_msg_api_add_msg_name_crc (am, #n "_" #crc, id + sm->msg_id_base); + foreach_vl_msg_name_crc_ioam_export; +#undef _ +} + static clib_error_t * set_ioam_export_ipfix_command_fn (vlib_main_t * vm, unformat_input_t * input, @@ -247,6 +260,9 @@ ioam_export_init (vlib_main_t * vm) error = ioam_export_plugin_api_hookup (vm); + /* Add our API messages to the global name_crc hash table */ + setup_message_id_table (em, &api_main); + /* Hook this export node to ip6-hop-by-hop */ ip6_hbyh_node = vlib_get_node_by_name (vm, (u8 *) "ip6-hop-by-hop"); em->my_hbh_slot = vlib_node_add_next (vm, ip6_hbyh_node->index, node_index); diff --git a/plugins/ioam-plugin/ioam/lib-pot/pot_api.c b/plugins/ioam-plugin/ioam/lib-pot/pot_api.c index 95be9e02adf..484f223603e 100644 --- a/plugins/ioam-plugin/ioam/lib-pot/pot_api.c +++ b/plugins/ioam-plugin/ioam/lib-pot/pot_api.c @@ -206,6 +206,19 @@ pot_plugin_api_hookup (vlib_main_t *vm) return 0; } +#define vl_msg_name_crc_list +#include <ioam/lib-pot/pot_all_api_h.h> +#undef vl_msg_name_crc_list + +static void +setup_message_id_table (pot_main_t * sm, api_main_t * am) +{ +#define _(id,n,crc) \ + vl_msg_api_add_msg_name_crc (am, #n "_" #crc, id + sm->msg_id_base); + foreach_vl_msg_name_crc_pot; +#undef _ +} + static clib_error_t * pot_init (vlib_main_t * vm) { pot_main_t * sm = &pot_main; @@ -222,6 +235,9 @@ static clib_error_t * pot_init (vlib_main_t * vm) error = pot_plugin_api_hookup (vm); + /* Add our API messages to the global name_crc hash table */ + setup_message_id_table (sm, &api_main); + vec_free(name); return error; diff --git a/plugins/ioam-plugin/ioam/lib-trace/trace_api.c b/plugins/ioam-plugin/ioam/lib-trace/trace_api.c index b98e65fb320..32c8e23fae3 100644 --- a/plugins/ioam-plugin/ioam/lib-trace/trace_api.c +++ b/plugins/ioam-plugin/ioam/lib-trace/trace_api.c @@ -178,6 +178,19 @@ trace_plugin_api_hookup (vlib_main_t * vm) return 0; } +#define vl_msg_name_crc_list +#include <ioam/lib-trace/trace_all_api_h.h> +#undef vl_msg_name_crc_list + +static void +setup_message_id_table (trace_main_t * sm, api_main_t * am) +{ +#define _(id,n,crc) \ + vl_msg_api_add_msg_name_crc (am, #n "_" #crc, id + sm->msg_id_base); + foreach_vl_msg_name_crc_trace; +#undef _ +} + static clib_error_t * trace_init (vlib_main_t * vm) { @@ -195,6 +208,9 @@ trace_init (vlib_main_t * vm) error = trace_plugin_api_hookup (vm); + /* Add our API messages to the global name_crc hash table */ + setup_message_id_table (sm, &api_main); + vec_free (name); return error; diff --git a/plugins/lb-plugin/lb/api.c b/plugins/lb-plugin/lb/api.c index 56806d25d0c..06c53fa1005 100644 --- a/plugins/lb-plugin/lb/api.c +++ b/plugins/lb-plugin/lb/api.c @@ -47,6 +47,19 @@ typedef enum { #include <lb/lb.api.h> #undef vl_api_version +#define vl_msg_name_crc_list +#include <lb/lb.api.h> +#undef vl_msg_name_crc_list + +static void +setup_message_id_table (lb_main_t * lbm, api_main_t * am) +{ +#define _(id,n,crc) \ + vl_msg_api_add_msg_name_crc (am, #n "_" #crc, id + lbm->msg_id_base); + foreach_vl_msg_name_crc_lb; +#undef _ +} + /* Macro to finish up custom dump fns */ #define FINISH \ vec_add1 (s, 0); \ @@ -206,6 +219,9 @@ static clib_error_t * lb_api_init (vlib_main_t * vm) foreach_lb_plugin_api_msg; #undef _ + /* Add our API messages to the global name_crc hash table */ + setup_message_id_table (lbm, &api_main); + return 0; } diff --git a/plugins/sample-plugin/sample/sample.c b/plugins/sample-plugin/sample/sample.c index 321b66c0fb1..603cb2d0ee4 100644 --- a/plugins/sample-plugin/sample/sample.c +++ b/plugins/sample-plugin/sample/sample.c @@ -210,6 +210,19 @@ sample_plugin_api_hookup (vlib_main_t *vm) return 0; } +#define vl_msg_name_crc_list +#include <sample/sample_all_api_h.h> +#undef vl_msg_name_crc_list + +static void +setup_message_id_table (sample_main_t * sm, api_main_t *am) +{ +#define _(id,n,crc) \ + vl_msg_api_add_msg_name_crc (am, #n "_" #crc, id + sm->msg_id_base); + foreach_vl_msg_name_crc_sample; +#undef _ +} + static clib_error_t * sample_init (vlib_main_t * vm) { sample_main_t * sm = &sample_main; @@ -224,6 +237,9 @@ static clib_error_t * sample_init (vlib_main_t * vm) error = sample_plugin_api_hookup (vm); + /* Add our API messages to the global name_crc hash table */ + setup_message_id_table (sm, &api_main); + vec_free(name); return error; diff --git a/plugins/snat-plugin/Makefile.am b/plugins/snat-plugin/Makefile.am index 9f41193a708..0a0fff86486 100644 --- a/plugins/snat-plugin/Makefile.am +++ b/plugins/snat-plugin/Makefile.am @@ -39,8 +39,8 @@ SUFFIXES = .api.h .api %.py: %.api $(info Creating Python binding for $@) - $(CC) $(CPPFLAGS) -E -P -C -x c $< \ - | vppapigen --input - --python - \ + $(CC) $(CPPFLAGS) -E -P -C -x c $< \ + | vppapigen --input - --python - \ | pyvppapigen.py --input - > $@ pyapidir = ${prefix}/vpp_papi_plugins @@ -59,7 +59,8 @@ install-data-hook: @(cd $(vpppluginsdir) && $(RM) $(vppplugins_LTLIBRARIES)) @(cd $(vppapitestpluginsdir) && $(RM) $(vppapitestplugins_LTLIBRARIES)) - +apidir = $(prefix)/snat +api_DATA = snat/snat.api # # Java code generation diff --git a/plugins/snat-plugin/snat/snat.c b/plugins/snat-plugin/snat/snat.c index 66c03817ca0..2956e24f054 100644 --- a/plugins/snat-plugin/snat/snat.c +++ b/plugins/snat-plugin/snat/snat.c @@ -955,6 +955,19 @@ snat_plugin_api_hookup (vlib_main_t *vm) return 0; } +#define vl_msg_name_crc_list +#include <snat/snat_all_api_h.h> +#undef vl_msg_name_crc_list + +static void +setup_message_id_table (snat_main_t * sm, api_main_t * am) +{ +#define _(id,n,crc) \ + vl_msg_api_add_msg_name_crc (am, #n "_" #crc, id + sm->msg_id_base); + foreach_vl_msg_name_crc_snat; +#undef _ +} + static void plugin_custom_dump_configure (snat_main_t * sm) { #define _(n,f) sm->api_main->msg_print_handlers \ @@ -985,6 +998,10 @@ static clib_error_t * snat_init (vlib_main_t * vm) sm->api_main = &api_main; error = snat_plugin_api_hookup (vm); + + /* Add our API messages to the global name_crc hash table */ + setup_message_id_table (sm, &api_main); + plugin_custom_dump_configure (sm); vec_free(name); |