From 71612d61930e57e7c8ebf9e5647b15a4b23720b2 Mon Sep 17 00:00:00 2001 From: Dave Wallace Date: Tue, 24 Oct 2017 01:32:41 -0400 Subject: Add extern to *_main global variable declarations in header files. - Global variables declared in header files without the use of the 'extern' keword will result in multiple instances of the variable to be created by the compiler -- one for each different source file in which the the header file is included. This results in wasted memory allocated in the BSS segments as well as potentially introducing bugs in the application. Change-Id: I6ef1790b60a0bd9dd3994f8510723decf258b0cc Signed-off-by: Dave Wallace --- src/vnet/tcp/builtin_client.c | 2 ++ src/vnet/tcp/builtin_client.h | 2 +- src/vnet/tcp/builtin_proxy.h | 2 +- 3 files changed, 4 insertions(+), 2 deletions(-) (limited to 'src/vnet/tcp') diff --git a/src/vnet/tcp/builtin_client.c b/src/vnet/tcp/builtin_client.c index 4258fc43010..76c5c123ab9 100644 --- a/src/vnet/tcp/builtin_client.c +++ b/src/vnet/tcp/builtin_client.c @@ -23,6 +23,8 @@ #include #include +tclient_main_t tclient_main; + #define TCP_BUILTIN_CLIENT_DBG (0) static void diff --git a/src/vnet/tcp/builtin_client.h b/src/vnet/tcp/builtin_client.h index 06d239efe14..400c55c8685 100644 --- a/src/vnet/tcp/builtin_client.h +++ b/src/vnet/tcp/builtin_client.h @@ -106,7 +106,7 @@ typedef struct ethernet_main_t *ethernet_main; } tclient_main_t; -tclient_main_t tclient_main; +extern tclient_main_t tclient_main; vlib_node_registration_t tclient_node; diff --git a/src/vnet/tcp/builtin_proxy.h b/src/vnet/tcp/builtin_proxy.h index cf707a150cf..c8cde5f70e6 100644 --- a/src/vnet/tcp/builtin_proxy.h +++ b/src/vnet/tcp/builtin_proxy.h @@ -87,7 +87,7 @@ typedef struct ethernet_main_t *ethernet_main; } builtin_proxy_main_t; -builtin_proxy_main_t builtin_proxy_main; +extern builtin_proxy_main_t builtin_proxy_main; #endif /* __included_builtin_proxy_h__ */ -- cgit 1.2.3-korg