From d67d85d75e99f1c5e424d63d7ae5aab3a70c9473 Mon Sep 17 00:00:00 2001 From: Phil Sutter Date: Thu, 2 Aug 2018 17:05:21 +0200 Subject: ebtables: Print non-standard target parameters If a rule has a non-standard target (i.e., cs->target != NULL), it may contain parameters. This patch enables printing them. The code assumed that a non-standard target is only present if cs->jumpto is not set, but that is wrong: If nft_rule_to_iptables_command_state() encounters a target expression, it calls nft_parse_target() which in turn calls the family-specific parse_target callback. All of them assign cs->target, whose name is later assigned to cs->jumpto by the first function. Signed-off-by: Phil Sutter Signed-off-by: Florian Westphal --- iptables/nft-bridge.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'iptables/nft-bridge.c') diff --git a/iptables/nft-bridge.c b/iptables/nft-bridge.c index bbcecd82..c8605dc9 100644 --- a/iptables/nft-bridge.c +++ b/iptables/nft-bridge.c @@ -466,8 +466,10 @@ static void nft_bridge_save_rule(const void *data, unsigned int format) else printf("CONTINUE"); } - else if (cs->target != NULL && cs->target->print != NULL) + if (cs->target != NULL && cs->target->print != NULL) { + printf(" "); cs->target->print(&cs->fw, cs->target->t, format & FMT_NUMERIC); + } if (!(format & FMT_NOCOUNTS)) { const char *counter_fmt; -- cgit v1.2.3