From e66f3187d891a7b2f7212f33ab7501d5ee6c3b2f Mon Sep 17 00:00:00 2001 From: Fernando Fernandez Mancera Date: Fri, 2 Sep 2022 12:52:04 +0200 Subject: json: add table map statement support When listing a map with statements with JSON support, the statement list were ignored. Output example: { "map": { "family": "ip", "name": "m", "table": "t", "type": "ipv4_addr", "handle": 1, "map": "mark", "stmt": [ { "counter": { "packets": 0, "bytes": 0 } } ] } } Link: https://bugzilla.netfilter.org/show_bug.cgi?id=1588 Signed-off-by: Fernando Fernandez Mancera Signed-off-by: Pablo Neira Ayuso --- tests/shell/testcases/json/0002table_map_0 | 9 +++++++++ tests/shell/testcases/json/dumps/0002table_map_0.nft | 6 ++++++ 2 files changed, 15 insertions(+) create mode 100755 tests/shell/testcases/json/0002table_map_0 create mode 100644 tests/shell/testcases/json/dumps/0002table_map_0.nft (limited to 'tests/shell/testcases') diff --git a/tests/shell/testcases/json/0002table_map_0 b/tests/shell/testcases/json/0002table_map_0 new file mode 100755 index 00000000..4b54527b --- /dev/null +++ b/tests/shell/testcases/json/0002table_map_0 @@ -0,0 +1,9 @@ +#!/bin/bash + +set -e + +$NFT flush ruleset + +RULESET='{"nftables": [{"metainfo": {"version": "1.0.5", "release_name": "Lester Gooch #4", "json_schema_version": 1}}, {"table": {"family": "ip", "name": "t", "handle": 4}}, {"map": {"family": "ip", "name": "m", "table": "t", "type": "ipv4_addr", "handle": 1, "map": "mark", "stmt": [{"counter": {"packets": 0, "bytes": 0}}]}}]}' + +$NFT -j -f - <<< $RULESET diff --git a/tests/shell/testcases/json/dumps/0002table_map_0.nft b/tests/shell/testcases/json/dumps/0002table_map_0.nft new file mode 100644 index 00000000..357e92cc --- /dev/null +++ b/tests/shell/testcases/json/dumps/0002table_map_0.nft @@ -0,0 +1,6 @@ +table ip t { + map m { + type ipv4_addr : mark + counter + } +} -- cgit v1.2.3