summaryrefslogtreecommitdiffstats
path: root/tests/shell/testcases/maps/dumps/typeof_integer_0.nft
diff options
context:
space:
mode:
authorPablo Neira Ayuso <pablo@netfilter.org>2022-03-28 17:36:40 +0200
committerPablo Neira Ayuso <pablo@netfilter.org>2022-03-29 11:01:45 +0200
commit82762ab6f261226030debd5ffe4e22d987ebdb7b (patch)
treeed0d594178a3ceb2fd83ba0dabd364e9e7c1eefe /tests/shell/testcases/maps/dumps/typeof_integer_0.nft
parent64bb3f43bb96bb43a478f695f5aea5f4ab50fd4b (diff)
src: allow to use integer type header fields via typeof set declaration
Header fields such as udp length cannot be used in concatenations because it is using the generic integer_type: test.nft:3:10-19: Error: can not use variable sized data types (integer) in concat expressions typeof udp length . @th,32,32 ^^^^^^^^^^~~~~~~~~~~~~ This patch slightly extends ("src: allow to use typeof of raw expressions in set declaration") to set on NFTNL_UDATA_SET_KEY_PAYLOAD_LEN in userdata if TYPE_INTEGER is used. Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Diffstat (limited to 'tests/shell/testcases/maps/dumps/typeof_integer_0.nft')
-rw-r--r--tests/shell/testcases/maps/dumps/typeof_integer_0.nft20
1 files changed, 20 insertions, 0 deletions
diff --git a/tests/shell/testcases/maps/dumps/typeof_integer_0.nft b/tests/shell/testcases/maps/dumps/typeof_integer_0.nft
new file mode 100644
index 00000000..33041557
--- /dev/null
+++ b/tests/shell/testcases/maps/dumps/typeof_integer_0.nft
@@ -0,0 +1,20 @@
+table inet t {
+ map m1 {
+ typeof udp length . @ih,32,32 : verdict
+ flags interval
+ elements = { 20-80 . 0x14 : accept,
+ 1-10 . 0xa : drop }
+ }
+
+ map m2 {
+ typeof udp length . @ih,32,32 : verdict
+ elements = { 30 . 0x1e : drop,
+ 20 . 0x24 : accept }
+ }
+
+ chain c {
+ udp length . @ih,32,32 vmap @m1
+ udp length . @ih,32,32 vmap @m2
+ udp length . @th,160,128 vmap { 47-63 . 0xe373135363130333131303735353203 : accept }
+ }
+}