misc: don't export symbols from plugins 91/29491/7
authorDamjan Marion <damarion@cisco.com>
Sat, 17 Oct 2020 11:33:32 +0000 (13:33 +0200)
committerNeale Ranns <nranns@cisco.com>
Mon, 19 Oct 2020 10:06:38 +0000 (10:06 +0000)
Type: improvement
Change-Id: I2a176fe2871d2e54b010bffc4f1f7a3616f0c455
Signed-off-by: Damjan Marion <damarion@cisco.com>
src/cmake/plugin.cmake
src/plugins/acl/lookup_context.c
src/plugins/dpdk/main.c
src/plugins/http_static/static_server.c
src/plugins/ioam/lib-trace/trace_util.c
src/plugins/l2e/l2e.c
src/vlib/unix/plugin.h

index 1bcff55..516588c 100644 (file)
@@ -45,6 +45,7 @@ macro(add_vpp_plugin name)
   endforeach()
   add_library(${plugin_name} SHARED ${PLUGIN_SOURCES} ${api_includes})
   set_target_properties(${plugin_name} PROPERTIES NO_SONAME 1)
+  target_compile_options(${plugin_name} PRIVATE "-fvisibility=hidden")
   set(deps "")
   if(PLUGIN_API_FILES)
     list(APPEND deps ${plugin_name}_api_headers)
index 5344975..ed9b2c7 100644 (file)
@@ -359,7 +359,8 @@ acl_plugin_get_p_acl_main(void)
   return &acl_main;
 }
 
-clib_error_t *acl_plugin_methods_vtable_init(acl_plugin_methods_t *m)
+__clib_export clib_error_t *
+acl_plugin_methods_vtable_init(acl_plugin_methods_t *m)
 {
   m->p_acl_main = &acl_main;
 #define _(name) m->name = acl_plugin_ ## name;
index ea0348a..ef93a22 100644 (file)
@@ -99,7 +99,7 @@ VLIB_INIT_FUNCTION (dpdk_main_init) =
 /* *INDENT-ON* */
 
 
-clib_error_t *
+__clib_export clib_error_t *
 dpdk_early_init (vlib_main_t *vm)
 {
   int fd = -1;
index 4db3ead..b61243a 100644 (file)
@@ -521,7 +521,7 @@ close_session (http_session_t * hs)
 
 /** \brief Register a builtin GET or POST handler
  */
-void http_static_server_register_builtin_handler
+__clib_export void http_static_server_register_builtin_handler
   (void *fp, char *url, int request_type)
 {
   http_static_server_main_t *hsm = &http_static_server_main;
index af92513..d935543 100644 (file)
@@ -20,7 +20,7 @@
 #include "trace_util.h"
 #include "trace_config.h"
 
-trace_main_t trace_main;
+__clib_export trace_main_t trace_main;
 
 static int
 trace_profile_cleanup (trace_profile * profile)
index 01f7788..791c3f6 100644 (file)
@@ -27,7 +27,7 @@ l2_emulation_main_t l2_emulation_main;
  */
 static const l2_emulation_t ezero = { };
 
-void
+__clib_export void
 l2_emulation_enable (u32 sw_if_index)
 {
   l2_emulation_main_t *em = &l2_emulation_main;
@@ -49,7 +49,7 @@ l2_emulation_enable (u32 sw_if_index)
 }
 
 
-void
+__clib_export void
 l2_emulation_disable (u32 sw_if_index)
 {
   l2_emulation_main_t *em = &l2_emulation_main;
index 4beae43..ae15e5d 100644 (file)
@@ -150,7 +150,7 @@ u8 *vlib_get_vat_plugin_path (void);
 #define VLIB_PLUGIN_REGISTER() \
   vlib_plugin_registration_t vlib_plugin_registration \
   CLIB_NOSANITIZE_PLUGIN_REG_SECTION \
-  __attribute__((__section__(".vlib_plugin_registration")))
+  __clib_export __clib_section(".vlib_plugin_registration")
 
 /* Call a plugin init function: used for init function dependencies. */
 #define vlib_call_plugin_init_function(vm,p,x)                  \