]> git.ipfire.org Git - thirdparty/iptables.git/commitdiff
xtables-compat: output -s,d first during save, just like iptables
authorFlorian Westphal <fw@strlen.de>
Sat, 5 May 2018 07:59:43 +0000 (09:59 +0200)
committerFlorian Westphal <fw@strlen.de>
Sat, 5 May 2018 08:55:55 +0000 (10:55 +0200)
Signed-off-by: Florian Westphal <fw@strlen.de>
iptables/nft-ipv4.c
iptables/nft-ipv6.c

index e383cc9f5aa04e5e9e77af83d88015eabd1a293e..8193ac3c997fa70b33ef073d7ca041a5b8ada7e8 100644 (file)
@@ -339,6 +339,11 @@ static void nft_ipv4_save_firewall(const void *data, unsigned int format)
 {
        const struct iptables_command_state *cs = data;
 
+       save_ipv4_addr('s', &cs->fw.ip.src, cs->fw.ip.smsk.s_addr,
+                      cs->fw.ip.invflags & IPT_INV_SRCIP);
+       save_ipv4_addr('d', &cs->fw.ip.dst, cs->fw.ip.dmsk.s_addr,
+                      cs->fw.ip.invflags & IPT_INV_DSTIP);
+
        save_firewall_details(cs, cs->fw.ip.invflags, cs->fw.ip.proto,
                              cs->fw.ip.iniface, cs->fw.ip.iniface_mask,
                              cs->fw.ip.outiface, cs->fw.ip.outiface_mask);
@@ -349,11 +354,6 @@ static void nft_ipv4_save_firewall(const void *data, unsigned int format)
                printf("-f ");
        }
 
-       save_ipv4_addr('s', &cs->fw.ip.src, cs->fw.ip.smsk.s_addr,
-                      cs->fw.ip.invflags & IPT_INV_SRCIP);
-       save_ipv4_addr('d', &cs->fw.ip.dst, cs->fw.ip.dmsk.s_addr,
-                      cs->fw.ip.invflags & IPT_INV_DSTIP);
-
        save_matches_and_target(cs->matches, cs->target,
                                cs->jumpto, cs->fw.ip.flags, &cs->fw);
 
index 33f77ebf563728b56965071b0acb33b92dedb235..10c81d9549a2f50a6012991bcce6de25c7be222e 100644 (file)
@@ -272,16 +272,16 @@ static void nft_ipv6_save_firewall(const void *data, unsigned int format)
 {
        const struct iptables_command_state *cs = data;
 
-       save_firewall_details(cs, cs->fw6.ipv6.invflags, cs->fw6.ipv6.proto,
-                             cs->fw6.ipv6.iniface, cs->fw6.ipv6.iniface_mask,
-                             cs->fw6.ipv6.outiface,
-                             cs->fw6.ipv6.outiface_mask);
-
        save_ipv6_addr('s', &cs->fw6.ipv6.src,
                       cs->fw6.ipv6.invflags & IP6T_INV_SRCIP);
        save_ipv6_addr('d', &cs->fw6.ipv6.dst,
                       cs->fw6.ipv6.invflags & IP6T_INV_DSTIP);
 
+       save_firewall_details(cs, cs->fw6.ipv6.invflags, cs->fw6.ipv6.proto,
+                             cs->fw6.ipv6.iniface, cs->fw6.ipv6.iniface_mask,
+                             cs->fw6.ipv6.outiface,
+                             cs->fw6.ipv6.outiface_mask);
+
        save_matches_and_target(cs->matches, cs->target,
                                cs->jumpto, cs->fw6.ipv6.flags, &cs->fw6);