X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=src%2Fvlib%2Funix%2Fplugin.c;h=b4eb0b92fb4a6591b17e9edf5d46f16c9e80a8ab;hb=06bc26077c59c26afb8a6ab44d274e98efbbba95;hp=058afcfcae0f9ba3b1e5165c945c19dcaa704212;hpb=0a32b60cf0ac8362360f0cf0a50ec27103c79f28;p=vpp.git diff --git a/src/vlib/unix/plugin.c b/src/vlib/unix/plugin.c index 058afcfcae0..b4eb0b92fb4 100644 --- a/src/vlib/unix/plugin.c +++ b/src/vlib/unix/plugin.c @@ -94,6 +94,9 @@ load_one_plugin (plugin_main_t * pm, plugin_info_t * pi, int from_early_init) goto error; } + if (pm->plugins_default_disable) + reg->default_disabled = 1; + p = hash_get_mem (pm->config_index_by_name, pi->name); if (p) { @@ -141,7 +144,7 @@ load_one_plugin (plugin_main_t * pm, plugin_info_t * pi, int from_early_init) { clib_warning ("%s", dlerror ()); clib_warning ("Failed to load plugin '%s'", pi->name); - os_exit (1); + goto error; } pi->handle = handle; @@ -517,6 +520,13 @@ done: pm->vat_plugin_path = s; else if (unformat (input, "vat-name-filter %s", &s)) pm->vat_plugin_name_filter = s; + else if (unformat (input, "plugin default %U", + unformat_vlib_cli_sub_input, &sub_input)) + { + pm->plugins_default_disable = + unformat (&sub_input, "disable") ? 1 : 0; + unformat_free (&sub_input); + } else if (unformat (input, "plugin %s %U", &s, unformat_vlib_cli_sub_input, &sub_input)) {