path: root/iptables/nft-ipv6.c
diff options
authorPablo Neira Ayuso <>2013-08-20 20:24:26 +0200
committerPablo Neira Ayuso <>2013-12-30 23:50:44 +0100
commiteb4b65c49994e44e6ad617fe3f60c063d0c331c4 (patch)
tree178a99c4a55c746d4badbaf93df35a43f500dd52 /iptables/nft-ipv6.c
parentcdc78b1d6bd7b48ec05d78fc6e6cd98473f40357 (diff)
nft: fix wrong flags handling in print_firewall_details
Unfortunately, IPT_F_* and IP6T_F_* don't overlap, therefore, we have to add an specific function to print the fragment flag, otherwise xtables -6 misinterprets the protocol flag, ie. Chain INPUT (policy ACCEPT) tcp -f ::/0 ::/0 Note that -f should not show up. This problem was likely added with the IPv6 support for the compatibility layer. Signed-off-by: Pablo Neira Ayuso <>
Diffstat (limited to 'iptables/nft-ipv6.c')
1 files changed, 2 insertions, 2 deletions
diff --git a/iptables/nft-ipv6.c b/iptables/nft-ipv6.c
index 91ef255c..9bb57981 100644
--- a/iptables/nft-ipv6.c
+++ b/iptables/nft-ipv6.c
@@ -161,9 +161,9 @@ static void nft_ipv6_print_firewall(struct nft_rule *r, unsigned int num,
print_firewall_details(&cs, cs.jumpto, cs.fw6.ipv6.flags,
cs.fw6.ipv6.invflags, cs.fw6.ipv6.proto,
- cs.fw6.ipv6.iniface, cs.fw6.ipv6.outiface,
num, format);
+ print_ifaces(cs.fw6.ipv6.iniface, cs.fw6.ipv6.outiface,
+ cs.fw6.ipv6.invflags, format);
print_ipv6_addr(&cs, format);
if (format & FMT_NOTABLE)