From 2aa0f63aacd31b1a997921e68e87db92ada53fdb Mon Sep 17 00:00:00 2001 From: Florian Westphal Date: Wed, 9 Dec 2020 18:31:41 +0100 Subject: tests: ip: add one test case to cover both id and sequence These are two 2-byte matches, so nft will merge the accesses to a single 4-byte load+compare. Check this is properly demangled. Signed-off-by: Florian Westphal --- tests/py/ip/icmp.t | 2 ++ tests/py/ip/icmp.t.payload.ip | 12 ++++++++++++ 2 files changed, 14 insertions(+) (limited to 'tests/py/ip') diff --git a/tests/py/ip/icmp.t b/tests/py/ip/icmp.t index e81aeca7..996e1fc3 100644 --- a/tests/py/ip/icmp.t +++ b/tests/py/ip/icmp.t @@ -59,6 +59,7 @@ icmp sequence { 33, 55, 67, 88};ok;icmp type { echo-request, echo-reply} icmp se icmp sequence != { 33, 55, 67, 88};ok;icmp type { echo-request, echo-reply} icmp sequence != { 33, 55, 67, 88} icmp sequence { 33-55};ok;icmp type { echo-request, echo-reply} icmp sequence { 33-55} icmp sequence != { 33-55};ok;icmp type { echo-request, echo-reply} icmp sequence != { 33-55} +icmp id 1 icmp sequence 2;ok;icmp type { echo-reply, echo-request} icmp id 1 icmp sequence 2 icmp mtu 33;ok icmp mtu 22-33;ok @@ -83,3 +84,4 @@ icmp gateway { 33-55};ok icmp gateway != { 33-55};ok icmp gateway != 34;ok icmp gateway != { 333, 334};ok + diff --git a/tests/py/ip/icmp.t.payload.ip b/tests/py/ip/icmp.t.payload.ip index 6ed4dff8..e238c4bb 100644 --- a/tests/py/ip/icmp.t.payload.ip +++ b/tests/py/ip/icmp.t.payload.ip @@ -502,6 +502,18 @@ ip test-ip4 input [ payload load 2b @ transport header + 6 => reg 1 ] [ lookup reg 1 set __set%d 0x1 ] +# icmp id 1 icmp sequence 2 +__set%d test-ip4 3 +__set%d test-ip4 0 + element 00000008 : 0 [end] element 00000000 : 0 [end] +ip + [ meta load l4proto => reg 1 ] + [ cmp eq reg 1 0x00000001 ] + [ payload load 1b @ transport header + 0 => reg 1 ] + [ lookup reg 1 set __set%d ] + [ payload load 4b @ transport header + 4 => reg 1 ] + [ cmp eq reg 1 0x02000100 ] + # icmp mtu 33 ip test-ip4 input [ meta load l4proto => reg 1 ] -- cgit v1.2.3