From 06f56c824b07049b7ecbe4d896ea4ff43f0a6f79 Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Tue, 5 Aug 2008 16:08:07 +0000 Subject: [PATCH] include sys/types.h in netfilter headers exported to userspace. When using 2.6.25 kernel headers iptables fails to compile like below /scratch/oe/build/eglibc/tmp-omap5912osk/staging/arm-angstrom-linux-gnueabi/usr/include/linux/netfilter.h:40: error: expected specifier-qualifier-list before '__u32' This patch includes sys/types.h in userspace netfilter headers so __u32 definition is resolved. --- .../netfilter-include-types_h-in-userspace.patch | 88 ++++++++++++++++++++++ .../linux-libc-headers_2.6.25.bb | 3 +- 2 files changed, 90 insertions(+), 1 deletion(-) create mode 100644 packages/linux-libc-headers/linux-libc-headers-2.6.25/netfilter-include-types_h-in-userspace.patch diff --git a/packages/linux-libc-headers/linux-libc-headers-2.6.25/netfilter-include-types_h-in-userspace.patch b/packages/linux-libc-headers/linux-libc-headers-2.6.25/netfilter-include-types_h-in-userspace.patch new file mode 100644 index 0000000..79eb170 --- /dev/null +++ b/packages/linux-libc-headers/linux-libc-headers-2.6.25/netfilter-include-types_h-in-userspace.patch @@ -0,0 +1,88 @@ +commit c8942f1f0a7e2160ebf2e51ba89e50ee5895a1e7 +Author: Patrick McHardy +Date: Wed May 21 14:08:38 2008 -0700 + + netfilter: Move linux/types.h inclusions outside of #ifdef __KERNEL__ + + Greg Steuck points out that some of the netfilter + headers can't be used in userspace without including linux/types.h + first. The headers include their own linux/types.h include statements, + these are stripped by make headers-install because they are inside + #ifdef __KERNEL__ however. Move them out to fix this. + + Reported and Tested by Greg Steuck. + + Signed-off-by: Patrick McHardy + Signed-off-by: David S. Miller + +diff --git a/include/linux/netfilter.h b/include/linux/netfilter.h +index e4c6659..0c5eb7e 100644 +--- a/include/linux/netfilter.h ++++ b/include/linux/netfilter.h +@@ -3,7 +3,6 @@ + + #ifdef __KERNEL__ + #include +-#include + #include + #include + #include +@@ -14,6 +13,7 @@ + #include + #include + #endif ++#include + #include + + /* Responses from hook functions. */ +diff --git a/include/linux/netfilter_arp/arp_tables.h b/include/linux/netfilter_arp/arp_tables.h +index dd9c97f..590ac3d 100644 +--- a/include/linux/netfilter_arp/arp_tables.h ++++ b/include/linux/netfilter_arp/arp_tables.h +@@ -11,11 +11,11 @@ + + #ifdef __KERNEL__ + #include +-#include + #include + #include + #include + #endif ++#include + #include + #include + +diff --git a/include/linux/netfilter_ipv4/ip_tables.h b/include/linux/netfilter_ipv4/ip_tables.h +index bfc889f..092bd50 100644 +--- a/include/linux/netfilter_ipv4/ip_tables.h ++++ b/include/linux/netfilter_ipv4/ip_tables.h +@@ -17,11 +17,11 @@ + + #ifdef __KERNEL__ + #include +-#include + #include + #include + #include + #endif ++#include + #include + #include + +diff --git a/include/linux/netfilter_ipv6/ip6_tables.h b/include/linux/netfilter_ipv6/ip6_tables.h +index f2507dc..1089e33 100644 +--- a/include/linux/netfilter_ipv6/ip6_tables.h ++++ b/include/linux/netfilter_ipv6/ip6_tables.h +@@ -17,11 +17,11 @@ + + #ifdef __KERNEL__ + #include +-#include + #include + #include + #include + #endif ++#include + #include + #include + diff --git a/packages/linux-libc-headers/linux-libc-headers_2.6.25.bb b/packages/linux-libc-headers/linux-libc-headers_2.6.25.bb index f47fd08..0d41636 100644 --- a/packages/linux-libc-headers/linux-libc-headers_2.6.25.bb +++ b/packages/linux-libc-headers/linux-libc-headers_2.6.25.bb @@ -2,11 +2,12 @@ require linux-libc-headers.inc INHIBIT_DEFAULT_DEPS = "1" DEPENDS += "unifdef-native" -PR = "r1" +PR = "r2" SRC_URI = "${KERNELORG_MIRROR}/pub/linux/kernel/v2.6/linux-${PV}.tar.bz2 \ file://reinstate-a.out.h.patch;patch=1 \ file://fix-kernel-conditionalize-a.out.h.patch;patch=1 \ + file://netfilter-include-types_h-in-userspace.patch;patch=1 \ file://procinfo.h" S = "${WORKDIR}/linux-${PV}" -- 2.7.4