Mailing List Archive

[PATCH 8/9] sysdep.c: don't include <linux/if_tun.h> on Linux
Including <linux/if_tun.h> in sysdep.c is not necessary since sysdep.h
already includes <netinet/if_ether.h>. And this is actually
potentially harmful since both files redefine the same 'struct
ethhdr', causing the following build failure with the musl C library:

In file included from sysdep.h:28:0,
from sysdep.c:71:
.../buildroot/output/host/usr/arm-buildroot-linux-musleabihf/sysroot/usr/include/netinet/if_ether.h:96:8: error: redefinition of ‘struct ethhdr’
struct ethhdr {
^
In file included from .../buildroot/output/host/usr/arm-buildroot-linux-musleabihf/sysroot/usr/include/linux/if_tun.h:20:0,
from sysdep.c:62:
.../buildroot/output/host/usr/arm-buildroot-linux-musleabihf/sysroot/usr/include/linux/if_ether.h:138:8: note: originally defined here
struct ethhdr {
^

Original patch from:
http://git.alpinelinux.org/cgit/aports/tree/testing/vpnc/working.patch

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
sysdep.c | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/sysdep.c b/sysdep.c
index d8f181d..f83543d 100644
--- a/sysdep.c
+++ b/sysdep.c
@@ -58,13 +58,11 @@

#if defined(__DragonFly__)
#include <net/tun/if_tun.h>
-#elif defined(__linux__)
-#include <linux/if_tun.h>
#elif defined(__APPLE__)
/* no header for tun */
#elif defined(__CYGWIN__)
#include "tap-win32.h"
-#else
+#elif !defined(__linux__)
#include <net/if_tun.h>
#endif

--
2.7.4

_______________________________________________
vpnc-devel mailing list
vpnc-devel@unix-ag.uni-kl.de
https://lists.unix-ag.uni-kl.de/mailman/listinfo/vpnc-devel
http://www.unix-ag.uni-kl.de/~massar/vpnc/