1From dde68ed77114d7b19bfed3068edefc9dc0644445 Mon Sep 17 00:00:00 2001
2From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
3Date: Sun, 16 Aug 2020 10:21:46 +0200
4Subject: [PATCH] src/bandwidthd.h: fix build with gcc 10
5
6Remove SubnetTable[SUBNET_NUM] and IpTable[IP_NUM] from bandwidthd.h as
7they are already in bandwidthd.c otherwise the build with gcc 10 will
8fail on:
9
10/home/buildroot/autobuild/instance-2/output-1/host/bin/arm-buildroot-linux-gnueabihf-gcc  -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -Os     -o bandwidthd bandwidthd.o graph.o extensions.o sqlight.o parser.o lexer.o pgsql.o  -lpcap -lgd -lm -lresolv  -L/home/buildroot/autobuild/instance-2/output-1/host/bin/../arm-buildroot-linux-gnueabihf/sysroot/usr/lib -lpng16 -lz  -L/home/buildroot/autobuild/instance-2/output-1/host/arm-buildroot-linux-gnueabihf/sysroot/usr/bin/../../../../arm-buildroot-linux-gnueabihf/sysroot/usr/lib/.libs -lnl-genl-3 -lnl-3
11/home/buildroot/autobuild/instance-2/output-1/host/lib/gcc/arm-buildroot-linux-gnueabihf/10.2.0/../../../../arm-buildroot-linux-gnueabihf/bin/ld: graph.o:(.bss+0x4b0): multiple definition of `IpTable'; bandwidthd.o:(.bss+0x3e0): first defined here
12/home/buildroot/autobuild/instance-2/output-1/host/lib/gcc/arm-buildroot-linux-gnueabihf/10.2.0/../../../../arm-buildroot-linux-gnueabihf/bin/ld: graph.o:(.bss+0x18c): multiple definition of `SubnetTable'; bandwidthd.o:(.bss+0x88): first defined here
13
14Fixes:
15 - http://autobuild.buildroot.org/results/6308c8ee38b6017215038d47c009b238113bd36f
16
17Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
18[Upstream status: https://github.com/nroach44/bandwidthd/pull/1]
19---
20 src/bandwidthd.h | 4 ++--
21 src/graph.c      | 1 +
22 2 files changed, 3 insertions(+), 2 deletions(-)
23
24diff --git a/src/bandwidthd.h b/src/bandwidthd.h
25index 870fdf7..eb4c830 100644
26--- a/src/bandwidthd.h
27+++ b/src/bandwidthd.h
28@@ -134,7 +134,7 @@ struct SubnetData
29 {
30   uint32_t ip;
31   uint32_t mask;
32-} SubnetTable[SUBNET_NUM];
33+};
34
35 struct Statistics
36 {
37@@ -157,7 +157,7 @@ struct IPData
38   uint32_t ip;			// Host byte order
39   struct Statistics Send;
40   struct Statistics Receive;
41-} IpTable[IP_NUM];
42+};
43
44 struct SummaryData
45 {
46diff --git a/src/graph.c b/src/graph.c
47index b4b68f0..058e8c7 100644
48--- a/src/graph.c
49+++ b/src/graph.c
50@@ -18,6 +18,7 @@
51 #include <resolv.h>
52 #endif
53
54+extern struct SubnetData SubnetTable[SUBNET_NUM];
55 extern unsigned int SubnetCount;
56 extern struct config config;
57
58--
592.27.0
60
61