20 lines
757 B
Diff
20 lines
757 B
Diff
|
--- iptables-1.4.5/xtables.c.org 2009-09-14 18:36:55.000000000 +0200
|
||
|
+++ iptables-1.4.5/xtables.c 2009-09-20 13:24:11.000000000 +0200
|
||
|
@@ -1484,6 +1484,7 @@
|
||
|
xtables_ip6parse_multiple(const char *name, struct in6_addr **addrpp,
|
||
|
struct in6_addr **maskpp, unsigned int *naddrs)
|
||
|
{
|
||
|
+ static const struct in6_addr zero_addr;
|
||
|
struct in6_addr *addrp;
|
||
|
char buf[256], *p;
|
||
|
unsigned int len, i, j, n, count = 1;
|
||
|
@@ -1526,7 +1527,7 @@
|
||
|
memcpy(*maskpp + i, addrp, sizeof(*addrp));
|
||
|
|
||
|
/* if a null mask is given, the name is ignored, like in "any/0" */
|
||
|
- if (memcmp(*maskpp + i, &in6addr_any, sizeof(in6addr_any)) == 0)
|
||
|
+ if (memcmp(*maskpp + i, &zero_addr, sizeof(zero_addr)) == 0)
|
||
|
strcpy(buf, "::");
|
||
|
|
||
|
addrp = ip6parse_hostnetwork(buf, &n);
|