fix a compilation issue on f9/gcc-4.3
authorThierry Parmentelat <thierry.parmentelat@sophia.inria.fr>
Tue, 9 Sep 2008 13:32:40 +0000 (13:32 +0000)
committerThierry Parmentelat <thierry.parmentelat@sophia.inria.fr>
Tue, 9 Sep 2008 13:32:40 +0000 (13:32 +0000)
see
http://sources.gentoo.org/viewcvs.py/gentoo-x86/net-firewall/iptables/files/iptables-1.4.0-in6-glibc-2.8.patch?rev=1.1
http://bugs.gentoo.org/225505

ip6tables.c
libiptc/libip6tc.c

index f316c7a..09fb07c 100644 (file)
@@ -730,7 +730,7 @@ parse_hostnetworkmask(const char *name, struct in6_addr **addrpp,
        for (i = 0, j = 0; i < n; i++) {
                int k;
                for (k = 0; k < 4; k++)
-                       addrp[j].in6_u.u6_addr32[k] &= maskp->in6_u.u6_addr32[k];
+                       addrp[j].s6_addr32[k] &= maskp->s6_addr32[k];
                j++;
                for (k = 0; k < j - 1; k++) {
                        if (IN6_ARE_ADDR_EQUAL(&addrp[k], &addrp[j - 1])) {
index 5b3ae0b..5768aeb 100644 (file)
@@ -113,7 +113,7 @@ typedef unsigned int socklen_t;
 #include "libiptc.c"
 
 #define BIT6(a, l) \
- ((ntohl(a->in6_u.u6_addr32[(l) / 32]) >> (31 - ((l) & 31))) & 1)
+ ((ntohl(a->s6_addr32[(l) / 32]) >> (31 - ((l) & 31))) & 1)
 
 int
 ipv6_prefix_length(const struct in6_addr *a)