From 8ac986f862040a331e57984ad705a54e9c09417b Mon Sep 17 00:00:00 2001 From: Florian Westphal Date: Tue, 10 Nov 2015 11:55:20 +0100 Subject: tests: add inet test for ip/ether concatenation Test rule from Pablo, it caused assertion failure with earlier versions of nft (caused by 7ead4932f9ab, later fixed via 775e7ff1f5ddaa32). Signed-off-by: Florian Westphal --- tests/regression/inet/ip.t | 7 +++++++ tests/regression/inet/ip.t.payload.bridge | 11 +++++++++++ tests/regression/inet/ip.t.payload.inet | 13 +++++++++++++ tests/regression/inet/ip.t.payload.ip | 11 +++++++++++ 4 files changed, 42 insertions(+) create mode 100644 tests/regression/inet/ip.t create mode 100644 tests/regression/inet/ip.t.payload.bridge create mode 100644 tests/regression/inet/ip.t.payload.inet create mode 100644 tests/regression/inet/ip.t.payload.ip (limited to 'tests') diff --git a/tests/regression/inet/ip.t b/tests/regression/inet/ip.t new file mode 100644 index 00000000..a56c5c97 --- /dev/null +++ b/tests/regression/inet/ip.t @@ -0,0 +1,7 @@ +*ip;test-ip4 +*inet;test-inet +*bridge;test-bridge + +:input;type filter hook input priority 0 + +ip saddr . ip daddr . ether saddr { 1.1.1.1 . 2.2.2.2 . ca:fe:ca:fe:ca:fe };ok diff --git a/tests/regression/inet/ip.t.payload.bridge b/tests/regression/inet/ip.t.payload.bridge new file mode 100644 index 00000000..606e3b34 --- /dev/null +++ b/tests/regression/inet/ip.t.payload.bridge @@ -0,0 +1,11 @@ +# ip saddr . ip daddr . ether saddr { 1.1.1.1 . 2.2.2.2 . ca:fe:ca:fe:ca:fe } +set%d test-bridge 3 +set%d test-bridge 0 + element 01010101 02020202 fecafeca 0000feca : 0 [end] +bridge test-bridge input + [ payload load 2b @ link header + 12 => reg 1 ] + [ cmp eq reg 1 0x00000008 ] + [ payload load 4b @ network header + 12 => reg 1 ] + [ payload load 4b @ network header + 16 => reg 9 ] + [ payload load 6b @ link header + 6 => reg 10 ] + [ lookup reg 1 set set%d ] diff --git a/tests/regression/inet/ip.t.payload.inet b/tests/regression/inet/ip.t.payload.inet new file mode 100644 index 00000000..c8e9b054 --- /dev/null +++ b/tests/regression/inet/ip.t.payload.inet @@ -0,0 +1,13 @@ +# ip saddr . ip daddr . ether saddr { 1.1.1.1 . 2.2.2.2 . ca:fe:ca:fe:ca:fe } +set%d test-inet 3 +set%d test-inet 0 + element 01010101 02020202 fecafeca 0000feca : 0 [end] +inet test-inet input + [ meta load nfproto => reg 1 ] + [ cmp eq reg 1 0x00000002 ] + [ meta load iiftype => reg 1 ] + [ cmp eq reg 1 0x00000001 ] + [ payload load 4b @ network header + 12 => reg 1 ] + [ payload load 4b @ network header + 16 => reg 9 ] + [ payload load 6b @ link header + 6 => reg 10 ] + [ lookup reg 1 set set%d ] diff --git a/tests/regression/inet/ip.t.payload.ip b/tests/regression/inet/ip.t.payload.ip new file mode 100644 index 00000000..66f14681 --- /dev/null +++ b/tests/regression/inet/ip.t.payload.ip @@ -0,0 +1,11 @@ +# ip saddr . ip daddr . ether saddr { 1.1.1.1 . 2.2.2.2 . ca:fe:ca:fe:ca:fe } +set%d test-ip4 3 +set%d test-ip4 0 + element 01010101 02020202 fecafeca 0000feca : 0 [end] +ip test-ip4 input + [ meta load iiftype => reg 1 ] + [ cmp eq reg 1 0x00000001 ] + [ payload load 4b @ network header + 12 => reg 1 ] + [ payload load 4b @ network header + 16 => reg 9 ] + [ payload load 6b @ link header + 6 => reg 10 ] + [ lookup reg 1 set set%d ] -- cgit v1.2.3