aboutsummaryrefslogtreecommitdiffstats
path: root/src/vnet/map
diff options
context:
space:
mode:
authorDave Wallace <dwallacelf@gmail.com>2017-10-24 01:32:41 -0400
committerDave Wallace <dwallacelf@gmail.com>2017-10-24 01:32:41 -0400
commit71612d61930e57e7c8ebf9e5647b15a4b23720b2 (patch)
tree3c135af6d40442f5ae9f8397c62080e2b7e3f342 /src/vnet/map
parent92b0275a364022af6ab828dfac83e38c0117cfe6 (diff)
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 <dwallacelf@gmail.com>
Diffstat (limited to 'src/vnet/map')
-rw-r--r--src/vnet/map/map.c2
-rw-r--r--src/vnet/map/map.h2
2 files changed, 3 insertions, 1 deletions
diff --git a/src/vnet/map/map.c b/src/vnet/map/map.c
index 862f7cf5612..6d18a069459 100644
--- a/src/vnet/map/map.c
+++ b/src/vnet/map/map.c
@@ -23,6 +23,8 @@
#include "map.h"
+map_main_t map_main;
+
/*
* This code supports the following MAP modes:
*
diff --git a/src/vnet/map/map.h b/src/vnet/map/map.h
index 208a58efc42..b9b3353dd2e 100644
--- a/src/vnet/map/map.h
+++ b/src/vnet/map/map.h
@@ -329,7 +329,7 @@ typedef struct {
u16 port;
} map_trace_t;
-map_main_t map_main;
+extern map_main_t map_main;
extern vlib_node_registration_t ip4_map_node;
extern vlib_node_registration_t ip6_map_node;