[package] iptables: add some musl portability fixes

Signed-off-by: Florian Fainelli <florian@openwrt.org>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34313 3c298f89-4303-0410-b956-a3cf2f4a3e73
master
Florian Fainelli 2012-11-23 20:02:23 +00:00
parent be55423704
commit ee048e8c32
5 changed files with 148 additions and 9 deletions

View File

@ -1,6 +1,6 @@
--- iptables-1.4.10/include/linux/types.h.orig 2011-11-07 00:08:33.000000000 +0100 --- a/include/linux/types.h
+++ iptables-1.4.10/include/linux/types.h 2011-11-07 00:09:25.000000000 +0100 +++ b/include/linux/types.h
@@ -34,5 +34,9 @@ @@ -34,5 +34,9 @@ typedef __u64 __bitwise __be64;
typedef __u16 __bitwise __sum16; typedef __u16 __bitwise __sum16;
typedef __u32 __bitwise __wsum; typedef __u32 __bitwise __wsum;

View File

@ -1,6 +1,6 @@
--- a/extensions/GNUmakefile.in --- a/extensions/GNUmakefile.in
+++ b/extensions/GNUmakefile.in +++ b/extensions/GNUmakefile.in
@@ -40,9 +40,24 @@ @@ -40,9 +40,24 @@ pfx_build_mod := $(patsubst ${srcdir}/li
pfx_build_mod := $(filter-out @blacklist_modules@,${pfx_build_mod}) pfx_build_mod := $(filter-out @blacklist_modules@,${pfx_build_mod})
pf4_build_mod := $(filter-out @blacklist_modules@,${pf4_build_mod}) pf4_build_mod := $(filter-out @blacklist_modules@,${pf4_build_mod})
pf6_build_mod := $(filter-out @blacklist_modules@,${pf6_build_mod}) pf6_build_mod := $(filter-out @blacklist_modules@,${pf6_build_mod})
@ -28,7 +28,7 @@
pfx_solibs := $(patsubst %,libxt_%.so,${pfx_build_mod}) pfx_solibs := $(patsubst %,libxt_%.so,${pfx_build_mod})
pf4_solibs := $(patsubst %,libipt_%.so,${pf4_build_mod}) pf4_solibs := $(patsubst %,libipt_%.so,${pf4_build_mod})
pf6_solibs := $(patsubst %,libip6t_%.so,${pf6_build_mod}) pf6_solibs := $(patsubst %,libip6t_%.so,${pf6_build_mod})
@@ -54,10 +69,10 @@ @@ -54,10 +69,10 @@ pf6_solibs := $(patsubst %,libip6t_%.
targets := libext4.a libext6.a matches4.man matches6.man \ targets := libext4.a libext6.a matches4.man matches6.man \
targets4.man targets6.man targets4.man targets6.man
targets_install := targets_install :=
@ -43,7 +43,7 @@
.SECONDARY: .SECONDARY:
@@ -107,8 +122,8 @@ @@ -107,8 +122,8 @@ libext4.a: initext4.o ${libext4_objs}
libext6.a: initext6.o ${libext6_objs} libext6.a: initext6.o ${libext6_objs}
${AM_VERBOSE_AR} ${AR} crs $@ $^; ${AM_VERBOSE_AR} ${AR} crs $@ $^;

View File

@ -0,0 +1,139 @@
--- a/extensions/libip6t_ipv6header.c
+++ b/extensions/libip6t_ipv6header.c
@@ -15,6 +15,9 @@ on whether they contain certain headers
#include <sys/types.h>
#include <linux/netfilter_ipv6/ip6t_ipv6header.h>
+#ifndef IPPROTO_HOPOPTS
+# define IPPROTO_HOPOPTS 0
+#endif
/* This maybe required
#include <linux/in.h>
--- a/extensions/libxt_TCPOPTSTRIP.c
+++ b/extensions/libxt_TCPOPTSTRIP.c
@@ -16,6 +16,21 @@
#ifndef TCPOPT_MD5SIG
# define TCPOPT_MD5SIG 19
#endif
+#ifndef TCPOPT_MAXSEG
+# define TCPOPT_MAXSEG 2
+#endif
+#ifndef TCPOPT_WINDOW
+# define TCPOPT_WINDOW 3
+#endif
+#ifndef TCPOPT_SACK_PERMITTED
+# define TCPOPT_SACK_PERMITTED 4
+#endif
+#ifndef TCPOPT_SACK
+# define TCPOPT_SACK 5
+#endif
+#ifndef TCPOPT_TIMESTAMP
+# define TCPOPT_TIMESTAMP 8
+#endif
enum {
FLAG_STRIP = 1 << 0,
--- a/include/libiptc/ipt_kernel_headers.h
+++ b/include/libiptc/ipt_kernel_headers.h
@@ -5,7 +5,6 @@
#include <limits.h>
-#if defined(__GLIBC__) && __GLIBC__ == 2
#include <netinet/ip.h>
#include <netinet/in.h>
#include <netinet/ip_icmp.h>
@@ -13,15 +12,4 @@
#include <netinet/udp.h>
#include <net/if.h>
#include <sys/types.h>
-#else /* libc5 */
-#include <sys/socket.h>
-#include <linux/ip.h>
-#include <linux/in.h>
-#include <linux/if.h>
-#include <linux/icmp.h>
-#include <linux/tcp.h>
-#include <linux/udp.h>
-#include <linux/types.h>
-#include <linux/in6.h>
-#endif
#endif
--- a/include/linux/netfilter/xt_osf.h
+++ b/include/linux/netfilter/xt_osf.h
@@ -21,6 +21,9 @@
#define _XT_OSF_H
#include <linux/types.h>
+#if !defined(__UCLIBC__) && !defined(__GLIBC_)
+#include <linux/tcp.h>
+#endif
#define MAXGENRELEN 32
--- a/include/linux/netfilter_ipv4/ip_tables.h
+++ b/include/linux/netfilter_ipv4/ip_tables.h
@@ -16,6 +16,7 @@
#define _IPTABLES_H
#include <linux/types.h>
+#include <sys/types.h>
#include <linux/netfilter_ipv4.h>
--- a/ip6tables-restore.c
+++ b/ip6tables-restore.c
@@ -11,7 +11,7 @@
*/
#include <getopt.h>
-#include <sys/errno.h>
+#include <errno.h>
#include <stdbool.h>
#include <string.h>
#include <stdio.h>
--- a/ip6tables-save.c
+++ b/ip6tables-save.c
@@ -6,7 +6,7 @@
* This code is distributed under the terms of GNU GPL v2
*/
#include <getopt.h>
-#include <sys/errno.h>
+#include <errno.h>
#include <stdio.h>
#include <fcntl.h>
#include <stdlib.h>
--- a/iptables-restore.c
+++ b/iptables-restore.c
@@ -8,7 +8,7 @@
*/
#include <getopt.h>
-#include <sys/errno.h>
+#include <errno.h>
#include <stdbool.h>
#include <string.h>
#include <stdio.h>
--- a/iptables-save.c
+++ b/iptables-save.c
@@ -6,7 +6,7 @@
*
*/
#include <getopt.h>
-#include <sys/errno.h>
+#include <errno.h>
#include <stdio.h>
#include <fcntl.h>
#include <stdlib.h>
--- a/iptables-xml.c
+++ b/iptables-xml.c
@@ -9,7 +9,7 @@
*/
#include <getopt.h>
-#include <sys/errno.h>
+#include <errno.h>
#include <string.h>
#include <stdio.h>
#include <stdlib.h>