On xtables-save.c, -d will not output right away but after the full command line hase been parsed. Signed-off-by: Tomasz Bursztyka <tomasz.bursztyka@xxxxxxxxxxxxxxx> --- I ensure the same behavior as usual, so -d outputs and exit succesfully as usual. iptables/xtables-save.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/iptables/xtables-save.c b/iptables/xtables-save.c index db03090..990c0fe 100644 --- a/iptables/xtables-save.c +++ b/iptables/xtables-save.c @@ -78,6 +78,7 @@ int xtables_save_main(int argc, char *argv[]) { const char *tablename = NULL; + bool dump = false; struct nft_handle h = { .family = AF_INET, /* default to AF_INET */ }; @@ -118,8 +119,8 @@ xtables_save_main(int argc, char *argv[]) xtables_modprobe_program = optarg; break; case 'd': - do_output(&h, tablename, show_counters); - exit(0); + dump = true; + break; case '4': h.family = AF_INET; break; @@ -135,5 +136,10 @@ xtables_save_main(int argc, char *argv[]) exit(1); } + if (dump) { + do_output(&h, tablename, show_counters); + exit(0); + } + return !do_output(&h, tablename, show_counters); } -- 1.8.3.2 -- To unsubscribe from this list: send the line "unsubscribe netfilter-devel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html