Thread (5 messages) flat view 5 messages, 3 authors, 2016-02-26

Re: header conflict introduced by change to netfilter_ipv4/ip_tables.h

From: Mikko Rapeli <hidden>
Date: 2016-02-26 07:18:22
Also in: netfilter-devel

On Thu, Feb 25, 2016 at 10:08:56PM +0100, Thomas Graf wrote:
On 01/06/16 at 09:20am, Stephen Hemminger wrote:
quoted
This commit breaks compilation of iproute2 with net-next.

commit 1ffad83dffd675cd742286ae82dca7d746cb0da8
Author: Mikko Rapeli [off-list ref]
Date:   Thu Oct 15 07:56:30 2015 +0200

    netfilter: fix include files for compilation
    
    Add missing header dependencies and other small changes so that each file
    compiles alone in userspace.
    
    Signed-off-by: Mikko Rapeli [off-list ref]
    Signed-off-by: Pablo Neira Ayuso [off-list ref]

For iproute2, a copy of kernel headers (from make install_headers) is used.
After this change. the build of x_tables.c fails because IFNAMSIZ is already
defined in net/if.h
There is another issue with this commit. iptables.h included from m_ipt.c
includes  xtables.h which includes <xtables-version.h> which is not
available on a system without xtables.

gcc -Wall -Wstrict-prototypes  -Wmissing-prototypes -Wmissing-declarations -Wold-style-definition -Wformat=2 -O2 -I../include -DRESOLVE_HOSTNAMES -DLIBDIR=\"/usr/lib\" -DCONFDIR=\"/etc/iproute2\" -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE  -DHAVE_SETNS -DHAVE_ELF -DCONFIG_GACT -DCONFIG_GACT_PROB -DIPT_LIB_DIR=\"/lib/xtables\" -DYY_NO_INPUT   -c -o m_ipt.o m_ipt.c
In file included from ../include/iptables.h:5:0,
                 from m_ipt.c:17:
../include/xtables.h:34:29: fatal error: xtables-version.h: No such file or directory
 #include <xtables-version.h>
I don't see any dependencies from kernel side uapi headers to iptables or
xtables in my tree based on v4.5-rc2. Maybe this is a problem in
iproute2.

-Mikko
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help