diff options
author | Florian Westphal <fw@strlen.de> | 2019-08-29 11:36:20 +0200 |
---|---|---|
committer | Florian Westphal <fw@strlen.de> | 2019-08-29 15:41:18 +0200 |
commit | cda5c8c26f329bbd3655fd7d1af4e1eec55ec397 (patch) | |
tree | 505c3ae5a2dfca79050a7f8c947911c7f6445817 /tests | |
parent | a87f2a2227be29cc1e91f3301cec963f02aa5178 (diff) |
src: json: add support for element deletion
also add a test case.
Fixes: a87f2a2227be2 ("netfilter: support for element deletion")
Signed-off-by: Florian Westphal <fw@strlen.de>
Acked-by: Phil Sutter <phil@nwl.cc>
Diffstat (limited to 'tests')
-rw-r--r-- | tests/py/ip6/sets.t | 1 | ||||
-rw-r--r-- | tests/py/ip6/sets.t.json | 25 | ||||
-rw-r--r-- | tests/py/ip6/sets.t.payload.inet | 7 | ||||
-rw-r--r-- | tests/py/ip6/sets.t.payload.ip6 | 6 | ||||
-rw-r--r-- | tests/py/ip6/sets.t.payload.netdev | 8 |
5 files changed, 47 insertions, 0 deletions
diff --git a/tests/py/ip6/sets.t b/tests/py/ip6/sets.t index 5adec53f..add82eb8 100644 --- a/tests/py/ip6/sets.t +++ b/tests/py/ip6/sets.t @@ -40,3 +40,4 @@ ip6 saddr != @set33 drop;fail !set5 type ipv6_addr . ipv6_addr;ok ip6 saddr . ip6 daddr @set5 drop;ok add @set5 { ip6 saddr . ip6 daddr };ok +delete @set5 { ip6 saddr . ip6 daddr };ok diff --git a/tests/py/ip6/sets.t.json b/tests/py/ip6/sets.t.json index 9a75dd6f..948c1f16 100644 --- a/tests/py/ip6/sets.t.json +++ b/tests/py/ip6/sets.t.json @@ -91,3 +91,28 @@ } ] +# delete @set5 { ip6 saddr . ip6 daddr } +[ + { + "set": { + "elem": { + "concat": [ + { + "payload": { + "field": "saddr", + "protocol": "ip6" + } + }, + { + "payload": { + "field": "daddr", + "protocol": "ip6" + } + } + ] + }, + "op": "delete", + "set": "@set5" + } + } +] diff --git a/tests/py/ip6/sets.t.payload.inet b/tests/py/ip6/sets.t.payload.inet index 3886db67..47ad86a2 100644 --- a/tests/py/ip6/sets.t.payload.inet +++ b/tests/py/ip6/sets.t.payload.inet @@ -31,3 +31,10 @@ inet test-inet input [ payload load 16b @ network header + 24 => reg 2 ] [ dynset add reg_key 1 set set5 ] +# delete @set5 { ip6 saddr . ip6 daddr } +inet test-inet input + [ meta load nfproto => reg 1 ] + [ cmp eq reg 1 0x0000000a ] + [ payload load 16b @ network header + 8 => reg 1 ] + [ payload load 16b @ network header + 24 => reg 2 ] + [ dynset delete reg_key 1 set set5 ] diff --git a/tests/py/ip6/sets.t.payload.ip6 b/tests/py/ip6/sets.t.payload.ip6 index 0b318f8d..a5febb9f 100644 --- a/tests/py/ip6/sets.t.payload.ip6 +++ b/tests/py/ip6/sets.t.payload.ip6 @@ -23,3 +23,9 @@ ip6 test-ip6 input [ payload load 16b @ network header + 24 => reg 2 ] [ dynset add reg_key 1 set set5 ] +# delete @set5 { ip6 saddr . ip6 daddr } +ip6 test-ip6 input + [ payload load 16b @ network header + 8 => reg 1 ] + [ payload load 16b @ network header + 24 => reg 2 ] + [ dynset delete reg_key 1 set set5 ] + diff --git a/tests/py/ip6/sets.t.payload.netdev b/tests/py/ip6/sets.t.payload.netdev index 0dfabb77..dab74159 100644 --- a/tests/py/ip6/sets.t.payload.netdev +++ b/tests/py/ip6/sets.t.payload.netdev @@ -31,3 +31,11 @@ netdev test-netdev ingress [ payload load 16b @ network header + 24 => reg 2 ] [ dynset add reg_key 1 set set5 ] +# delete @set5 { ip6 saddr . ip6 daddr } +netdev test-netdev ingress + [ meta load protocol => reg 1 ] + [ cmp eq reg 1 0x0000dd86 ] + [ payload load 16b @ network header + 8 => reg 1 ] + [ payload load 16b @ network header + 24 => reg 2 ] + [ dynset delete reg_key 1 set set5 ] + |