This series essentially moves nft monitor JSON output to libnftables (in patch 7). Patch 8 enhances tests/monitor to get that tested as well (via passing '-j' parameter to run-tests.sh). The leading six patches are more or less prerequisites for the later ones. Phil Sutter (8): tests/py: Add missing JSON bits for inet/meta.t json: Drop unused symbolic_constant_json() stub json: Add ct timeout support monitor: Drop fake XML support monitor: Drop 'update table' and 'update chain' cases monitor: Fix printing of ct objects monitor: Use libnftables JSON output tests: monitor: Test JSON output as well include/json.h | 57 +++- src/json.c | 86 ++++- src/monitor.c | 293 +++++++++--------- src/parser_json.c | 82 ++++- src/rule.c | 49 +-- tests/monitor/README | 27 +- tests/monitor/run-tests.sh | 45 ++- tests/monitor/testcases/object.t | 46 +++ tests/monitor/testcases/set-maps.t | 4 + tests/monitor/testcases/set-mixed.t | 7 + tests/monitor/testcases/set-multiple.t | 5 + tests/monitor/testcases/set-simple.t | 19 ++ tests/monitor/testcases/simple.t | 8 + tests/py/inet/meta.t.json | 8 +- tests/py/inet/meta.t.json.output | 15 + tests/py/ip/objects.t.json | 7 + tests/shell/testcases/listing/0013objects_0 | 2 +- .../testcases/nft-f/0017ct_timeout_obj_0 | 2 +- .../nft-f/dumps/0017ct_timeout_obj_0.nft | 2 +- 19 files changed, 567 insertions(+), 197 deletions(-) create mode 100644 tests/monitor/testcases/object.t -- 2.19.0