From b5dfbb3ca2a4acf5238bb3e0b2cc20b2a213041e Mon Sep 17 00:00:00 2001 From: Phil Sutter Date: Mon, 22 Jul 2019 12:16:25 +0200 Subject: xtables-save: Make COMMIT line optional Explicit commits are not used by either arp- nor ebtables-save. In order to share code between all the different *-save tools without inducing changes to ruleset dump contents, allow for callers of do_output() to turn COMMIT lines on or off. Signed-off-by: Phil Sutter Signed-off-by: Pablo Neira Ayuso --- iptables/xtables-save.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/iptables/xtables-save.c b/iptables/xtables-save.c index b4d14b5b..249b3960 100644 --- a/iptables/xtables-save.c +++ b/iptables/xtables-save.c @@ -67,6 +67,7 @@ static bool ebt_legacy_counter_format; struct do_output_data { bool counters; + bool commit; }; static int @@ -98,7 +99,8 @@ __do_output(struct nft_handle *h, const char *tablename, void *data) * thereby preventing dependency conflicts */ nft_chain_save(h, chain_list); nft_rule_save(h, tablename, d->counters ? 0 : FMT_NOCOUNTS); - printf("COMMIT\n"); + if (d->commit) + printf("COMMIT\n"); now = time(NULL); printf("# Completed on %s", ctime(&now)); @@ -219,6 +221,7 @@ xtables_save_main(int family, int argc, char *argv[], init_extensions4(); #endif tables = xtables_ipv4; + d.commit = true; break; case NFPROTO_ARP: tables = xtables_arp; -- cgit v1.2.3