diff options
author | Jose M. Guisado Gomez <guigom@riseup.net> | 2020-12-06 11:12:33 +0100 |
---|---|---|
committer | Pablo Neira Ayuso <pablo@netfilter.org> | 2020-12-08 12:47:04 +0100 |
commit | 12fdaf7e3efdab1f30f40154ee7db3f25cbb0add (patch) | |
tree | e9a9cd029cfb1fa94ebb75b00fd7ceb82cec3a55 /src/monitor.c | |
parent | 3cfb9e4b3e40e0fef18383dd865bb083f9168e95 (diff) |
monitor: add assignment check for json_echo
When --echo and --json is specified and native syntax is read, only the
last instruction is printed. This happens because the reference to the
json_echo is reassigned each time netlink_echo_callback is executed for
an instruction to be echoed.
Add an assignment check for json_echo to avoid reassigning it.
Fixes: cb7e02f44d6a (src: enable json echo output when reading native syntax)
Signed-off-by: Jose M. Guisado Gomez <guigom@riseup.net>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Diffstat (limited to 'src/monitor.c')
-rw-r--r-- | src/monitor.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/monitor.c b/src/monitor.c index a733a9f0..2b5325ea 100644 --- a/src/monitor.c +++ b/src/monitor.c @@ -939,8 +939,8 @@ int netlink_echo_callback(const struct nlmsghdr *nlh, void *data) if (nft_output_json(&nft->output)) { if (nft->json_root) return json_events_cb(nlh, &echo_monh); - - json_alloc_echo(nft); + if (!nft->json_echo) + json_alloc_echo(nft); echo_monh.format = NFTNL_OUTPUT_JSON; } |