[PATCH] vlan: fix musl libc conflict with Linux kernel headers

Jörg Krause joerg.krause at embedded.rocks
Sat Mar 26 08:22:31 PDT 2016


On Sa, 2016-03-26 at 10:53 +0200, Jouni Malinen wrote:
> On Fri, Mar 25, 2016 at 08:26:07PM +0100, Johannes Berg wrote:
> > 
> > Looks like it went the other way around, look at commit
> > 66f1c44887ba4f47d617f8ae21cf8e04e1892bd7
> > Author: Gregory Fong <gregory.0xf0 at gmail.com>
> > Date:   Tue Nov 4 11:21:21 2014 -0800
> > 
> >     bridge: include in6.h in if_bridge.h for struct in6_addr
> > 
> > (from the kernel)
> Great.. The discussion behind that was long enough that I didn't even
> want to go through it all.. It looks like there are changes both in
> the
> kernel and glibc to make this work. I think I'll just apply this
> patch
> instead and forget that linux/if_bridge.h even exists..
> 
> There are not really that many linux/*.h files included and it might
> make sense to get rid of more or less all those includes at least
> outside src/drivers/* if this type of sudden breakage can be expected
> to
> continue in the future.
> 

The kernel headers have a hardcoded compatibility fix for glibc
(linux/libc_compat.h): http://wiki.musl-libc.org/wiki/FAQ#Q:_why_am_i_g
etting_.22error:_redefinition_of_struct_ethhdr.2Ftcphdr.2Fetc.22_.3F

Getting rid of the linux headers would at least increase portability
for non-glibc libraries.

Best regards
Jörg Krause



More information about the Hostap mailing list