aboutsummaryrefslogtreecommitdiffstats
path: root/src/vpp
diff options
context:
space:
mode:
authorDave Barach <dave@barachs.net>2020-05-26 11:19:28 -0400
committerFlorin Coras <florin.coras@gmail.com>2020-05-27 20:53:57 +0000
commit7f475bf4b77ae2e74d65c62a22dc550329bb59c1 (patch)
treec93fe64b721ff42cedc10bab9335c7776b7f65a3 /src/vpp
parentec3a3f16e4cd3b33e2a409fb01b8d8826e05f9fa (diff)
dhcp: vat support for the dhcp_client_dump API
Also: permanently solve ordering issues with the vpp builtin vat plugin loader, by explicitly loading vat plugins once we're sure that all data plane plugins have registered their APIs / API message handlers. Fix compilation / link errors when the vpp builtin vat plugin loader is disbled by cmake configuration. Type: fix Signed-off-by: Dave Barach <dave@barachs.net> Change-Id: Id553c63ae860ebfc196c5ad4b55c19e08fec2c9e Signed-off-by: Ole Troan <ot@cisco.com>
Diffstat (limited to 'src/vpp')
-rw-r--r--src/vpp/api/api_main.c8
-rw-r--r--src/vpp/vnet/main.c4
2 files changed, 8 insertions, 4 deletions
diff --git a/src/vpp/api/api_main.c b/src/vpp/api/api_main.c
index 1d16f78ea88..e2223a402b9 100644
--- a/src/vpp/api/api_main.c
+++ b/src/vpp/api/api_main.c
@@ -38,8 +38,9 @@ init_error_string_table (vat_main_t * vam)
hash_set (vam->error_string_by_error_number, 99, "Misc");
}
-static clib_error_t *
-api_main_init (vlib_main_t * vm)
+#if VPP_API_TEST_BUILTIN > 0
+clib_error_t *
+vat_builtin_main_init (vlib_main_t * vm)
{
vat_main_t *vam = &vat_main;
int rv;
@@ -58,8 +59,7 @@ api_main_init (vlib_main_t * vm)
return 0;
}
-
-VLIB_MAIN_LOOP_ENTER_FUNCTION (api_main_init);
+#endif
void
vat_plugin_hash_create (void)
diff --git a/src/vpp/vnet/main.c b/src/vpp/vnet/main.c
index f4cc5042d45..b8a6f2b5ae2 100644
--- a/src/vpp/vnet/main.c
+++ b/src/vpp/vnet/main.c
@@ -74,7 +74,9 @@ vpp_find_plugin_path ()
static void
vpe_main_init (vlib_main_t * vm)
{
+#if VPP_API_TEST_BUILTIN > 0
void vat_plugin_hash_create (void);
+#endif
if (CLIB_DEBUG > 0)
vlib_unix_cli_set_prompt ("DBGvpp# ");
@@ -87,7 +89,9 @@ vpe_main_init (vlib_main_t * vm)
/*
* Create the binary api plugin hashes before loading plugins
*/
+#if VPP_API_TEST_BUILTIN > 0
vat_plugin_hash_create ();
+#endif
if (!vlib_plugin_path)
vpp_find_plugin_path ();