summaryrefslogtreecommitdiffstats
path: root/tests/py/arp
diff options
context:
space:
mode:
authorPablo Neira Ayuso <pablo@netfilter.org>2025-02-17 10:23:24 +0100
committerPablo Neira Ayuso <pablo@netfilter.org>2025-02-21 23:23:16 +0100
commit50741c52fe57fd09fa9cbd1a1626bfdd2f4115d8 (patch)
treea646a07e43d8f6de2ccec8b4d5ed4c5954618fdc /tests/py/arp
parent347039f64509e77ad5f6ef52ae70950c91886f8e (diff)
netlink_linearize: use range expression for OP_EQ and OP_IMPLICIT
range expression is available since v4.9-rc1~127^2~67^2~3, replace the two cmp expression when generating netlink bytecode. Code to delinearize the two cmp expressions to represent the range remains in place for backwards compatibility. The delinearize path to parse range expressions with NFT_OP_EQ is already present since: 3ed932917cc7 ("src: use new range expression for != [a,b] intervals") Update tests/py payload accordingly, json tests need no update since they already use the range to represent them. Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Diffstat (limited to 'tests/py/arp')
-rw-r--r--tests/py/arp/arp.t.payload12
-rw-r--r--tests/py/arp/arp.t.payload.netdev12
2 files changed, 8 insertions, 16 deletions
diff --git a/tests/py/arp/arp.t.payload b/tests/py/arp/arp.t.payload
index d56927b5..0182bb1b 100644
--- a/tests/py/arp/arp.t.payload
+++ b/tests/py/arp/arp.t.payload
@@ -21,8 +21,7 @@ arp test-arp input
# arp htype 33-45
arp test-arp input
[ payload load 2b @ network header + 0 => reg 1 ]
- [ cmp gte reg 1 0x00002100 ]
- [ cmp lte reg 1 0x00002d00 ]
+ [ range eq reg 1 0x00002100 0x00002d00 ]
# arp htype != 33-45
arp test-arp input
@@ -63,8 +62,7 @@ arp test-arp input
# arp hlen 33-45
arp test-arp input
[ payload load 1b @ network header + 4 => reg 1 ]
- [ cmp gte reg 1 0x00000021 ]
- [ cmp lte reg 1 0x0000002d ]
+ [ range eq reg 1 0x00000021 0x0000002d ]
# arp hlen != 33-45
arp test-arp input
@@ -100,8 +98,7 @@ arp test-arp input
# arp plen 33-45
arp test-arp input
[ payload load 1b @ network header + 5 => reg 1 ]
- [ cmp gte reg 1 0x00000021 ]
- [ cmp lte reg 1 0x0000002d ]
+ [ range eq reg 1 0x00000021 0x0000002d ]
# arp plen != 33-45
arp test-arp input
@@ -143,8 +140,7 @@ arp test-arp input
# arp operation 1-2
arp test-arp input
[ payload load 2b @ network header + 6 => reg 1 ]
- [ cmp gte reg 1 0x00000100 ]
- [ cmp lte reg 1 0x00000200 ]
+ [ range eq reg 1 0x00000100 0x00000200 ]
# arp operation request
arp test-arp input
diff --git a/tests/py/arp/arp.t.payload.netdev b/tests/py/arp/arp.t.payload.netdev
index 92df2400..d1188112 100644
--- a/tests/py/arp/arp.t.payload.netdev
+++ b/tests/py/arp/arp.t.payload.netdev
@@ -31,8 +31,7 @@ netdev test-netdev ingress
[ meta load protocol => reg 1 ]
[ cmp eq reg 1 0x00000608 ]
[ payload load 2b @ network header + 0 => reg 1 ]
- [ cmp gte reg 1 0x00002100 ]
- [ cmp lte reg 1 0x00002d00 ]
+ [ range eq reg 1 0x00002100 0x00002d00 ]
# arp htype != 33-45
netdev test-netdev ingress
@@ -87,8 +86,7 @@ netdev test-netdev ingress
[ meta load protocol => reg 1 ]
[ cmp eq reg 1 0x00000608 ]
[ payload load 1b @ network header + 4 => reg 1 ]
- [ cmp gte reg 1 0x00000021 ]
- [ cmp lte reg 1 0x0000002d ]
+ [ range eq reg 1 0x00000021 0x0000002d ]
# arp hlen != 33-45
netdev test-netdev ingress
@@ -136,8 +134,7 @@ netdev test-netdev ingress
[ meta load protocol => reg 1 ]
[ cmp eq reg 1 0x00000608 ]
[ payload load 1b @ network header + 5 => reg 1 ]
- [ cmp gte reg 1 0x00000021 ]
- [ cmp lte reg 1 0x0000002d ]
+ [ range eq reg 1 0x00000021 0x0000002d ]
# arp plen != 33-45
netdev test-netdev ingress
@@ -191,8 +188,7 @@ netdev test-netdev ingress
[ meta load protocol => reg 1 ]
[ cmp eq reg 1 0x00000608 ]
[ payload load 2b @ network header + 6 => reg 1 ]
- [ cmp gte reg 1 0x00000100 ]
- [ cmp lte reg 1 0x00000200 ]
+ [ range eq reg 1 0x00000100 0x00000200 ]
# arp operation request
netdev test-netdev ingress