From: Pablo Neira Ayuso Date: Wed, 20 Aug 2025 11:06:30 +0000 (+0200) Subject: tests: shell: cover sets as set elems evaluation X-Git-Tag: v1.1.5~9 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=7e6aabf09410d1e947eb609d1c83d5d656e86894;p=thirdparty%2Fnftables.git tests: shell: cover sets as set elems evaluation Extend tests/shell coverage to exercise merging nested sets, provided by fixes such as: a6b75b837f5e ("evaluate: set: Allow for set elems to be sets") Signed-off-by: Pablo Neira Ayuso --- diff --git a/tests/shell/testcases/sets/dumps/recursive_merge.nft b/tests/shell/testcases/sets/dumps/recursive_merge.nft new file mode 100644 index 00000000..9206f9f9 --- /dev/null +++ b/tests/shell/testcases/sets/dumps/recursive_merge.nft @@ -0,0 +1,8 @@ +table ip x { + chain y { + ip saddr { 1.1.1.0, 2.2.2.0, 3.3.3.0 } + ip saddr { 4.4.4.0, 5.5.5.0, 6.6.6.0 } + ip saddr { 4.4.4.0, 5.5.5.0, 6.6.6.0, 8.8.8.0 } + ip saddr { 1.1.1.0, 2.2.2.0, 7.7.7.0, 9.9.9.0 } + } +} diff --git a/tests/shell/testcases/sets/recursive_merge b/tests/shell/testcases/sets/recursive_merge new file mode 100755 index 00000000..f12f63ba --- /dev/null +++ b/tests/shell/testcases/sets/recursive_merge @@ -0,0 +1,22 @@ +#!/bin/bash +set -e + +RULESET="define myset2 = { + 2.2.3.0, +} +define myset = { + 1.1.1.0, + 2.2.2.0, + $myset2, +} +define myset3 = { + { 1.1.1.0, 2.2.2.0 } +} +add table ip x +add chain ip x y +add rule ip x y ip saddr { \$myset, 3.3.3.0 } +add rule ip x y ip saddr { { 4.4.4.0, 5.5.5.0 }, 6.6.6.0 } +add rule ip x y ip saddr { { 8.8.8.0, { 4.4.4.0, 5.5.5.0 } }, 6.6.6.0 } +add rule ip x y ip saddr { 9.9.9.0, \$myset3, 7.7.7.0 }" + +$NFT -f - <<< "$RULESET"