From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.org/gmane.linux.lib.musl.general/2070 Path: news.gmane.org!not-for-mail From: Abdoulaye Walsimou GAYE Newsgroups: gmane.linux.lib.musl.general Subject: Re: Clash between 'netinet/if_ether.h' and 'linux/if_ether.h' Date: Wed, 10 Oct 2012 22:06:35 +0200 Message-ID: <5075D54B.60005@embtoolkit.org> References: <5073577D.5010000@embtoolkit.org> <20121008233307.GP254@brightrain.aerifal.cx> Reply-To: musl@lists.openwall.com NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Trace: ger.gmane.org 1349899617 10410 80.91.229.3 (10 Oct 2012 20:06:57 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Wed, 10 Oct 2012 20:06:57 +0000 (UTC) Cc: Rich Felker To: musl@lists.openwall.com Original-X-From: musl-return-2071-gllmg-musl=m.gmane.org@lists.openwall.com Wed Oct 10 22:07:03 2012 Return-path: Envelope-to: gllmg-musl@plane.gmane.org Original-Received: from mother.openwall.net ([195.42.179.200]) by plane.gmane.org with smtp (Exim 4.69) (envelope-from ) id 1TM2YS-0004kY-DE for gllmg-musl@plane.gmane.org; Wed, 10 Oct 2012 22:06:56 +0200 Original-Received: (qmail 5756 invoked by uid 550); 10 Oct 2012 20:06:49 -0000 Mailing-List: contact musl-help@lists.openwall.com; run by ezmlm Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: Original-Received: (qmail 5748 invoked from network); 10 Oct 2012 20:06:49 -0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:15.0) Gecko/20120912 Thunderbird/15.0.1 In-Reply-To: <20121008233307.GP254@brightrain.aerifal.cx> Xref: news.gmane.org gmane.linux.lib.musl.general:2070 Archived-At: On 10/09/2012 01:33 AM, Rich Felker wrote: > On Tue, Oct 09, 2012 at 12:45:17AM +0200, Abdoulaye Walsimou GAYE wrote: >> Hello, >> While trying to compile busybox-1.20.2, the following issue raised: >> >> CC networking/ifplugd.o >> In file included from /home/walsimou/embtoolkit.git/sysroot-armel-linux-arm920t/usr/include/net/ethernet.h:10:0, >> from networking/ifplugd.c:41: >> /home/walsimou/embtoolkit.git/sysroot-armel-linux-arm920t/usr/include/netinet/if_ether.h:75:8: error: redefinition of 'struct ethhdr' >> /home/walsimou/embtoolkit.git/sysroot-armel-linux-arm920t/usr/include/linux/if_ether.h:127:8: note: originally defined here >> >> Note that uClibc strategy here is to include linux/if_ether.h > It's a bug to be including linux/if_ether.h, and there's no way to > work around this without depending on kernel headers, which musl will > not do for two reasons: > > 1. We can't control conformance issues and/or breakage if they expose > crap into the namespace that they shouldn't be exposing, and this > tends to vary by version. > > 2. It makes it so you can't build or use musl without kernel headers. > > It should be a one-line patch to fix ifplugd. > > Rich Hi Rich, I understand your point to not pollute the namespace, but there is others files under linux/ doing #include . linux/ethtool.h:17:#include linux/if_tun.h:20:#include linux/if_bonding.h:48:#include linux/virtio_net.h:31:#include linux/netfilter_bridge.h:8:#include linux/bpqether.h:9:#include linux/netdevice.h:29:#include linux/if_fddi.h:12: * if_fddi.h is based on previous if_ether.h and if_tr.h work by linux/if_arcnet.h:20:#include linux/atmlec.h:13:#include linux/if_pppox.h:24:#include linux/if_ether.h:8: * Version: @(#)if_ether.h 1.0.1a 02/08/94 linux/netfilter_bridge/ebtables.h:17:#include Does it means all these files should not be used in userspace application beside netinet/if_ether.h? Or does it means that these files should not be exported to userspace headers or should include instead? If yes, then It's a bug and should be reported to upstream kernel network maintainers. AWG,