diff options
author | Phil Sutter <phil@nwl.cc> | 2018-08-02 17:05:21 +0200 |
---|---|---|
committer | Florian Westphal <fw@strlen.de> | 2018-08-04 14:53:51 +0200 |
commit | d67d85d75e99f1c5e424d63d7ae5aab3a70c9473 (patch) | |
tree | 29a3ccfd96285f7f9c18edc9cc4083938c7095b3 | |
parent | 2e478e90d3a0ec00b6702732f3a80328c6a4012d (diff) |
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 <phil@nwl.cc>
Signed-off-by: Florian Westphal <fw@strlen.de>
-rw-r--r-- | iptables/nft-bridge.c | 4 |
1 files changed, 3 insertions, 1 deletions
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; |