|
|
Message-ID: <20180627005123.GD1392@brightrain.aerifal.cx>
Date: Tue, 26 Jun 2018 20:51:23 -0400
From: Rich Felker <dalias@...c.org>
To: musl@...ts.openwall.com
Subject: Re: Package build failure with musl 1.1.19 + Linux 4.14.48
(UAPI?)
On Tue, Jun 26, 2018 at 06:19:49PM -0500, A. Wilcox wrote:
> Hi there,
>
> Attempting to build net-tools 1.60 on musl 1.1.19 with Linux headers
> from kernel 4.14.48 installed on a PowerPC computer, we're seeing the
> following build error:
>
>
> In file included from /usr/include/linux/if_tunnel.h:7:0,
> from iptunnel.c:34:
> /usr/include/linux/ip.h:86:8: error: redefinition of ‘struct iphdr’
> struct iphdr {
> ^~~~~
> In file included from iptunnel.c:29:0:
> /usr/include/netinet/ip.h:25:8: note: originally defined here
> struct iphdr {
> ^~~~~
> make: *** [Makefile:94: iptunnel.o] Error 1
>
>
> This failure was not present with kernel headers from 4.4. This may be
> a regression in the kernel or it may just be a change that needs to be
> made to musl. I am not very experienced in dealing with UAPI and didn't
> see much in the kernel doc tree so I was wondering if someone on this
> list could point me towards any resources about how to debug/fix such
> issues.
>
> Thank you for your time and attention.
The breakage was introduced in 2016 in Linux commit
1fe8e0f074c77aa41aaa579345a9e675acbebfa9. Incidentally, they *knew*
this was wrong back in 2009; before the UAPI headers were separated
out, commit 0afd4a21ba7d75e93fa79cf05d7a21774e149c0f documents that if
if_tunnel.h includes linux/ip.h it will break userspace, and puts it
under #ifdef __KERNEL__.
Rich
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.