--- iptables-1.4.12.1.o/extensions/libip6t_ipv6header.c +++ iptables-1.4.12.1/extensions/libip6t_ipv6header.c @@ -10,6 +10,9 @@ #include #include #include +#ifndef IPPROTO_HOPOPTS +# define IPPROTO_HOPOPTS 0 +#endif enum { O_HEADER = 0, --- iptables-1.4.12.1.o/extensions/libxt_TCPOPTSTRIP.c +++ iptables-1.4.12.1/extensions/libxt_TCPOPTSTRIP.c @@ -12,6 +12,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 { O_STRIP_OPTION = 0, --- iptables-1.4.12.1.o/include/libiptc/ipt_kernel_headers.h +++ iptables-1.4.12.1/include/libiptc/ipt_kernel_headers.h @@ -5,7 +5,6 @@ #include -#if defined(__GLIBC__) && __GLIBC__ == 2 #include #include #include @@ -13,15 +12,4 @@ #include #include #include -#else /* libc5 */ -#include -#include -#include -#include -#include -#include -#include -#include -#include -#endif #endif --- iptables-1.4.12.1.o/include/linux/netfilter/xt_osf.h +++ iptables-1.4.12.1/include/linux/netfilter/xt_osf.h @@ -21,6 +21,7 @@ #define _XT_OSF_H #include +#include #define MAXGENRELEN 32 --- iptables-1.4.12.1.o/include/linux/netfilter_ipv4/ip_tables.h +++ iptables-1.4.12.1/include/linux/netfilter_ipv4/ip_tables.h @@ -16,6 +16,7 @@ #define _IPTABLES_H #include +#include #include --- iptables-1.4.12.1.o/include/linux/types.h +++ iptables-1.4.12.1/include/linux/types.h @@ -34,5 +34,18 @@ typedef __u16 __bitwise __sum16; typedef __u32 __bitwise __wsum; +/* + * aligned_u64 should be used in defining kernel<->userspace ABIs to avoid + * common 32/64-bit compat problems. + * 64-bit values align to 4-byte boundaries on x86_32 (and possibly other + * architectures) and to 8-byte boundaries on 64-bit architetures. The new + * aligned_64 type enforces 8-byte alignment so that structs containing + * aligned_64 values have the same alignment on 32-bit and 64-bit architectures. + * No conversions are necessary between 32-bit user-space and a 64-bit kernel. + */ +#define __aligned_u64 __u64 __attribute__((aligned(8))) +#define __aligned_be64 __be64 __attribute__((aligned(8))) +#define __aligned_le64 __le64 __attribute__((aligned(8))) + #endif /* __ASSEMBLY__ */ #endif /* _LINUX_TYPES_H */ --- iptables-1.4.12.1.o/iptables/ip6tables-restore.c +++ iptables-1.4.12.1/iptables/ip6tables-restore.c @@ -9,7 +9,7 @@ */ #include -#include +#include #include #include #include --- iptables-1.4.12.1.o/iptables/ip6tables-save.c +++ iptables-1.4.12.1/iptables/ip6tables-save.c @@ -6,7 +6,7 @@ * This code is distributed under the terms of GNU GPL v2 */ #include -#include +#include #include #include #include --- iptables-1.4.12.1.o/iptables/iptables-restore.c +++ iptables-1.4.12.1/iptables/iptables-restore.c @@ -6,7 +6,7 @@ */ #include -#include +#include #include #include #include --- iptables-1.4.12.1.o/iptables/iptables-save.c +++ iptables-1.4.12.1/iptables/iptables-save.c @@ -6,7 +6,7 @@ * */ #include -#include +#include #include #include #include --- iptables-1.4.12.1.o/iptables/iptables-xml.c +++ iptables-1.4.12.1/iptables/iptables-xml.c @@ -7,7 +7,7 @@ */ #include -#include +#include #include #include #include