aboutsummaryrefslogtreecommitdiff
blob: b61476555fb4faf1a86d4c9580870eae1658e4bc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
From 499a006a7d6bb154f9e1ab430e4c9e231ba6096a Mon Sep 17 00:00:00 2001
From: Lee Duncan <lduncan@suse.com>
Date: Tue, 28 Jan 2020 16:36:56 -0800
Subject: [PATCH] Updates to support gcc -fno-common option.

This meant cleaning up the definition of some
global variables, so that they were only defined
in one place and refered to as external elsewhere.
---
 include/iscsi_err.h    | 6 ++++--
 iscsiuio/configure.ac  | 2 +-
 iscsiuio/src/uip/uip.h | 4 ++--
 usr/iscsi_err.c        | 2 ++
 usr/log.c              | 1 +
 usr/log.h              | 2 +-
 6 files changed, 11 insertions(+), 6 deletions(-)

diff --git a/include/iscsi_err.h b/include/iscsi_err.h
index ed000dd0..04a8723e 100644
--- a/include/iscsi_err.h
+++ b/include/iscsi_err.h
@@ -4,7 +4,7 @@
 #ifndef _ISCSI_ERR_
 #define _ISCSI_ERR_
 
-enum {
+enum iscsi_error_list {
 	ISCSI_SUCCESS			= 0,
 	/* Generic error */
 	ISCSI_ERR			= 1,
@@ -73,7 +73,9 @@ enum {
 
 	/* Always last. Indicates end of error code space */
 	ISCSI_MAX_ERR_VAL,
-} iscsi_err;
+};
+
+extern enum iscsi_error_list iscsi_err;
 
 extern void iscsi_err_print_msg(int err);
 extern char *iscsi_err_to_str(int err);
diff --git a/iscsiuio/configure.ac b/iscsiuio/configure.ac
index b41df0ec..8099f09c 100644
--- a/iscsiuio/configure.ac
+++ b/iscsiuio/configure.ac
@@ -78,7 +78,7 @@ AC_CONFIG_COMMANDS([default],[[
     else
         echo 'char *build_date = "'`date`'";' > src/unix/build_date.c
     fi
-    echo 'char *build_date;'> src/unix/build_date.h
+    echo 'extern char *build_date;'> src/unix/build_date.h
 ]],[[]])
 
 AC_PREFIX_DEFAULT()
diff --git a/iscsiuio/src/uip/uip.h b/iscsiuio/src/uip/uip.h
index 1180ab50..9d9428a2 100644
--- a/iscsiuio/src/uip/uip.h
+++ b/iscsiuio/src/uip/uip.h
@@ -70,8 +70,8 @@ struct uip_stack;
 typedef u16_t uip_ip4addr_t[2];
 typedef u16_t uip_ip6addr_t[8];
 
-const uip_ip6addr_t all_zeroes_addr6;
-const uip_ip4addr_t all_zeroes_addr4;
+extern const uip_ip6addr_t all_zeroes_addr6;
+extern const uip_ip4addr_t all_zeroes_addr4;
 
 #define ETH_BUF(buf) ((struct uip_eth_hdr *)buf)
 #define VLAN_ETH_BUF(buf) ((struct uip_vlan_eth_hdr *)buf)
diff --git a/usr/iscsi_err.c b/usr/iscsi_err.c
index 23c61fc3..4a057d57 100644
--- a/usr/iscsi_err.c
+++ b/usr/iscsi_err.c
@@ -21,6 +21,8 @@
 #include "iscsi_err.h"
 #include "log.h"
 
+enum iscsi_error_list iscsi_err;
+
 static char *iscsi_err_msgs[] = {
 	/* 0 */ "",
 	/* 1 */ "unknown error",
diff --git a/usr/log.c b/usr/log.c
index f29b54b3..6e16e7ce 100644
--- a/usr/log.c
+++ b/usr/log.c
@@ -33,6 +33,7 @@
 
 char *log_name;
 int log_level = 0;
+struct logarea *la = NULL;
 
 static int log_stop_daemon = 0;
 static void (*log_func)(int prio, void *priv, const char *fmt, va_list ap);
diff --git a/usr/log.h b/usr/log.h
index 486a08ea..c548791e 100644
--- a/usr/log.h
+++ b/usr/log.h
@@ -64,7 +64,7 @@ struct logarea {
 	union semun semarg;
 };
 
-struct logarea *la;
+extern struct logarea *la;
 
 extern int log_init(char *program_name, int size,
 	void (*func)(int prio, void *priv, const char *fmt, va_list ap),