diff options
author | Pablo Neira Ayuso <pablo@netfilter.org> | 2025-06-24 18:11:10 +0200 |
---|---|---|
committer | Pablo Neira Ayuso <pablo@netfilter.org> | 2025-06-27 00:39:05 +0200 |
commit | 525b58568dca5ab9998595fc45313eac2764b6b1 (patch) | |
tree | 8fa2696440190dc20f9c6593788116b26b1d9749 /tests/py | |
parent | f4b646032acff4d743ad4f734aaca68e9264bdbb (diff) |
fib: allow to use it in set statements
Allow to use fib expression in set statements, eg.
meta mark set ip saddr . fib daddr check map { 1.2.3.4 . exists : 0x00000001 }
Fixes: 4a75ed32132d ("src: add fib expression")
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Diffstat (limited to 'tests/py')
-rw-r--r-- | tests/py/inet/fib.t | 2 | ||||
-rw-r--r-- | tests/py/inet/fib.t.json | 45 | ||||
-rw-r--r-- | tests/py/inet/fib.t.payload | 8 |
3 files changed, 55 insertions, 0 deletions
diff --git a/tests/py/inet/fib.t b/tests/py/inet/fib.t index f9c03b3a..60b77a4a 100644 --- a/tests/py/inet/fib.t +++ b/tests/py/inet/fib.t @@ -17,3 +17,5 @@ fib daddr check missing;ok fib daddr oif exists;ok;fib daddr check exists fib daddr check vmap { missing : drop, exists : accept };ok + +meta mark set fib daddr check . ct mark map { exists . 0x00000000 : 0x00000001 };ok diff --git a/tests/py/inet/fib.t.json b/tests/py/inet/fib.t.json index c2e9d454..14a6249a 100644 --- a/tests/py/inet/fib.t.json +++ b/tests/py/inet/fib.t.json @@ -159,3 +159,48 @@ } } ] + +# meta mark set fib daddr check . ct mark map { exists . 0x00000000 : 0x00000001 } +[ + { + "mangle": { + "key": { + "meta": { + "key": "mark" + } + }, + "value": { + "map": { + "data": { + "set": [ + [ + { + "concat": [ + true, + 0 + ] + }, + 1 + ] + ] + }, + "key": { + "concat": [ + { + "fib": { + "flags": "daddr", + "result": "check" + } + }, + { + "ct": { + "key": "mark" + } + } + ] + } + } + } + } + } +] diff --git a/tests/py/inet/fib.t.payload b/tests/py/inet/fib.t.payload index e09a260c..02d92b57 100644 --- a/tests/py/inet/fib.t.payload +++ b/tests/py/inet/fib.t.payload @@ -36,3 +36,11 @@ ip test-ip prerouting ip test-ip prerouting [ fib daddr oif present => reg 1 ] [ lookup reg 1 set __map%d dreg 0 ] + +# meta mark set fib daddr check . ct mark map { exists . 0x00000000 : 0x00000001 } + element 00000001 00000000 : 00000001 0 [end] +ip test-ip prerouting + [ fib daddr oif present => reg 1 ] + [ ct load mark => reg 9 ] + [ lookup reg 1 set __map%d dreg 1 ] + [ meta set mark with reg 1 ] |