]> git.ipfire.org Git - thirdparty/iptables.git/commitdiff
iptables-translate: print nft command for each expand rules via dns names
authorPablo Neira Ayuso <pablo@netfilter.org>
Wed, 8 Mar 2017 13:16:09 +0000 (14:16 +0100)
committerPablo Neira Ayuso <pablo@netfilter.org>
Wed, 8 Mar 2017 16:47:40 +0000 (17:47 +0100)
We have to print nft at the very beginning for each rule that rules from
the expansion, otherwise the output is not correct:

 # iptables-translate -I INPUT -s yahoo.com
 nft insert rule ip filter INPUT ip saddr 206.190.36.45 counter
 insert rule ip filter INPUT ip saddr 98.138.253.109 counter
 insert rule ip filter INPUT ip saddr 98.139.183.24 counter

After this patch:

 # iptables-translate -I INPUT -s yahoo.com
 nft insert rule ip filter INPUT ip saddr 206.190.36.45 counter
 nft insert rule ip filter INPUT ip saddr 98.138.253.109 counter
 nft insert rule ip filter INPUT ip saddr 98.139.183.24 counter

Reported-by: Alexander Alemayhu <alexander@alemayhu.com>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
iptables/xtables-translate.c

index 76ca666b79f9622666d0a5c77cf60c83389eff8a..d9885f20dce6a2f12eefdc781d3df44ba30b7367 100644 (file)
@@ -195,6 +195,8 @@ static int xlate(struct nft_handle *h, struct nft_xt_cmd_parse *p,
                        }
                        break;
                }
+               if (!cs->restore)
+                       printf("nft ");
        }
 
        return ret;