diff options
Diffstat (limited to 'tests/py/ip')
-rw-r--r-- | tests/py/ip/meta.t | 9 | ||||
-rw-r--r-- | tests/py/ip/meta.t.payload | 28 |
2 files changed, 37 insertions, 0 deletions
diff --git a/tests/py/ip/meta.t b/tests/py/ip/meta.t new file mode 100644 index 00000000..31c99500 --- /dev/null +++ b/tests/py/ip/meta.t @@ -0,0 +1,9 @@ +:input;type filter hook input priority 0 + +*ip;test-ip4;input + +icmp type echo-request;ok +meta l4proto icmp icmp type echo-request;ok;icmp type echo-request +meta l4proto ipv6-icmp icmpv6 type nd-router-advert;ok;meta l4proto 58 icmpv6 type nd-router-advert +meta l4proto 58 icmpv6 type nd-router-advert;ok +icmpv6 type nd-router-advert;fail diff --git a/tests/py/ip/meta.t.payload b/tests/py/ip/meta.t.payload new file mode 100644 index 00000000..b186b4b5 --- /dev/null +++ b/tests/py/ip/meta.t.payload @@ -0,0 +1,28 @@ +# icmp type echo-request +ip test-ip4 input + [ meta load l4proto => reg 1 ] + [ cmp eq reg 1 0x00000001 ] + [ payload load 1b @ transport header + 0 => reg 1 ] + [ cmp eq reg 1 0x00000008 ] + +# meta l4proto icmp icmp type echo-request +ip test-ip4 input + [ meta load l4proto => reg 1 ] + [ cmp eq reg 1 0x00000001 ] + [ payload load 1b @ transport header + 0 => reg 1 ] + [ cmp eq reg 1 0x00000008 ] + +# meta l4proto ipv6-icmp icmpv6 type nd-router-advert +ip test-ip4 input + [ meta load l4proto => reg 1 ] + [ cmp eq reg 1 0x0000003a ] + [ payload load 1b @ transport header + 0 => reg 1 ] + [ cmp eq reg 1 0x00000086 ] + +# meta l4proto 58 icmpv6 type nd-router-advert +ip test-ip4 input + [ meta load l4proto => reg 1 ] + [ cmp eq reg 1 0x0000003a ] + [ payload load 1b @ transport header + 0 => reg 1 ] + [ cmp eq reg 1 0x00000086 ] + |