summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
author/C=DE/ST=Berlin/L=Berlin/O=Netfilter Project/OU=Development/CN=kaber/emailAddress=kaber@netfilter.org </C=DE/ST=Berlin/L=Berlin/O=Netfilter Project/OU=Development/CN=kaber/emailAddress=kaber@netfilter.org>2006-12-02 17:17:33 +0000
committer/C=DE/ST=Berlin/L=Berlin/O=Netfilter Project/OU=Development/CN=kaber/emailAddress=kaber@netfilter.org </C=DE/ST=Berlin/L=Berlin/O=Netfilter Project/OU=Development/CN=kaber/emailAddress=kaber@netfilter.org>2006-12-02 17:17:33 +0000
commita5d127b53534e3246b76d5cbb23d1d3e55be759c (patch)
tree9c42a3790d8607fbbff8a3cf81fb936001e6c0db
parent183d9da74b9786e8e8e6d8755c5dad0e6a4ebcb5 (diff)
Fix iptables-save not printing -s !0/0 and -d !0/0 as well as ip6tables
unnecessarily printing the address. Base on patch by Daniel De Graaf.
-rw-r--r--ip6tables-save.c2
-rw-r--r--iptables-save.c2
2 files changed, 2 insertions, 2 deletions
diff --git a/ip6tables-save.c b/ip6tables-save.c
index 37b1f19..486c522 100644
--- a/ip6tables-save.c
+++ b/ip6tables-save.c
@@ -125,7 +125,7 @@ static void print_ip(char *prefix, const struct in6_addr *ip, const struct in6_a
char buf[51];
int l = ipv6_prefix_length(mask);
- if (!mask && !ip)
+ if (l == 0 && !invert)
return;
printf("%s %s%s",
diff --git a/iptables-save.c b/iptables-save.c
index 79b5dc7..ee18918 100644
--- a/iptables-save.c
+++ b/iptables-save.c
@@ -141,7 +141,7 @@ static int print_match(const struct ipt_entry_match *e,
/* print a given ip including mask if neccessary */
static void print_ip(char *prefix, u_int32_t ip, u_int32_t mask, int invert)
{
- if (!mask && !ip)
+ if (!mask && !ip && !invert)
return;
printf("%s %s%u.%u.%u.%u",