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

Johannes Berg johannes at sipsolutions.net
Fri Mar 25 12:26:07 PDT 2016


On Fri, 2016-03-25 at 17:04 +0200, Jouni Malinen wrote:
> On Tue, Mar 08, 2016 at 09:42:30PM +0100, Jörg Krause wrote:
> > 
> > Due to both <netinet/in.h> (in "utils/includes.h") and
> > <linux/in6.h> (in
> > <linux/if_bridge.h>) being included, the in6_addr is being
> > redefined: once from
> > the C library headers and once from the Linux kernel headers. This
> > causes some
> > build failures with for example the musl C library:
> > 
> > In file included from /usr/include/linux/if_bridge.h:18,
> >                  from ../src/ap/vlan_init.c:17:
> > /usr/include/linux/in6.h:32: error: redefinition of 'struct
> > in6_addr'
> What is this /usr/include/linux/if_bridge.h file and why does it
> include
> linux/in6.h? That may be there in the kernel distribution, but at
> least
> /usr/include/linux/if_bridge.h from linux-libc-dev on Ubuntu is a
> cleaned up version that does not include linux/in6.h. Why would this
> be
> different for musl? Shouldn't this be fixed in the kernel headers
> instead?

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)

johannes



More information about the Hostap mailing list