From ed30b9311d2bf3758463a353bf8a9dbb42a4e1cb Mon Sep 17 00:00:00 2001 From: Eric Garver Date: Wed, 1 Aug 2018 15:36:26 -0400 Subject: [PATCH] nft: don't print rule counters unless verbose Currently rule counters are always printed, but that's not the desired behavior. We should only print them with the verbose flag. This broke when the arguments of nft_rule_print_save() were changed to accept the format instead of a counters flag. Fixes: cdc78b1d6bd7 ("nft: convert rule into a command state structure") Signed-off-by: Eric Garver Signed-off-by: Florian Westphal --- iptables/nft.c | 2 +- .../shell/testcases/ipt-save/0005iptables_0 | 30 +++++++++++++++++++ 2 files changed, 31 insertions(+), 1 deletion(-) create mode 100755 iptables/tests/shell/testcases/ipt-save/0005iptables_0 diff --git a/iptables/nft.c b/iptables/nft.c index 347a4438..a9cb92ed 100644 --- a/iptables/nft.c +++ b/iptables/nft.c @@ -2270,7 +2270,7 @@ err: static void list_save(struct nftnl_rule *r, unsigned int num, unsigned int format) { - nft_rule_print_save(r, NFT_RULE_APPEND, !(format & FMT_NOCOUNTS)); + nft_rule_print_save(r, NFT_RULE_APPEND, format); } static int diff --git a/iptables/tests/shell/testcases/ipt-save/0005iptables_0 b/iptables/tests/shell/testcases/ipt-save/0005iptables_0 new file mode 100755 index 00000000..d5eb76a7 --- /dev/null +++ b/iptables/tests/shell/testcases/ipt-save/0005iptables_0 @@ -0,0 +1,30 @@ +#!/bin/bash + +set -e + +tmpfile1=$(mktemp) +tmpfile2=$(mktemp) + +clean_tmpfile() +{ + rm -f "$tmpfile1" "$tmpfile2" +} + +trap clean_tmpfile EXIT + + +cat > $tmpfile1< $tmpfile2 + +diff -u $tmpfile1 $tmpfile2 + +rm -f $tmpfile1 $tmpfile2 -- 2.47.2