]> git.ipfire.org Git - thirdparty/nftables.git/commit
json: Work around segfault when encountering xt stmt
authorPhil Sutter <phil@nwl.cc>
Wed, 24 Oct 2018 19:14:37 +0000 (21:14 +0200)
committerPablo Neira Ayuso <pablo@netfilter.org>
Wed, 24 Oct 2018 19:20:43 +0000 (21:20 +0200)
commitb849b0dfd9f3aecff5617bc60d5852ef36c3d494
tree609019a341ba89449115d86465577495d1bbba32
parent4e9c475680aff492c34845a958638c1a43906e07
json: Work around segfault when encountering xt stmt

When trying to convert an xt stmt into JSON, print() callback was
called. Though the code in src/xt.c does not respect output_fp,
therefore buffer wasn't filled as expected making libjansson to puke:

| # nft -j list ruleset
| warning: stmt ops xt have no json callback
| nft: json.c:169: stmt_print_json: Assertion `__out' failed.
| Aborted (core dumped)

Avoid this by detecting xt stmt ops and returning a stub.

Signed-off-by: Phil Sutter <phil@nwl.cc>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
doc/libnftables-json.adoc
src/json.c