diff options
Diffstat (limited to 'tests/regression/any/meta.t.payload')
-rw-r--r-- | tests/regression/any/meta.t.payload | 756 |
1 files changed, 0 insertions, 756 deletions
diff --git a/tests/regression/any/meta.t.payload b/tests/regression/any/meta.t.payload deleted file mode 100644 index 9f7a6d99..00000000 --- a/tests/regression/any/meta.t.payload +++ /dev/null @@ -1,756 +0,0 @@ -# meta length 1000 -ip test-ip4 input - [ meta load len => reg 1 ] - [ cmp eq reg 1 0x000003e8 ] - -# meta length 22 -ip test-ip4 input - [ meta load len => reg 1 ] - [ cmp eq reg 1 0x00000016 ] - -# meta length != 233 -ip test-ip4 input - [ meta load len => reg 1 ] - [ cmp neq reg 1 0x000000e9 ] - -# meta length 33-45 -ip test-ip4 input - [ meta load len => reg 1 ] - [ byteorder reg 1 = hton(reg 1, 4, 4) ] - [ cmp gte reg 1 0x21000000 ] - [ cmp lte reg 1 0x2d000000 ] - -# meta length != 33-45 -ip test-ip4 input - [ meta load len => reg 1 ] - [ byteorder reg 1 = hton(reg 1, 4, 4) ] - [ cmp lt reg 1 0x21000000 ] - [ cmp gt reg 1 0x2d000000 ] - -# meta length { 33, 55, 67, 88} -set%d test-ip4 3 -set%d test-ip4 0 - element 00000021 : 0 [end] element 00000037 : 0 [end] element 00000043 : 0 [end] element 00000058 : 0 [end] -ip test-ip4 input - [ meta load len => reg 1 ] - [ lookup reg 1 set set%d ] - -# meta length { 33-55} -set%d test-ip4 7 -set%d test-ip4 0 - element 00000000 : 1 [end] element 21000000 : 0 [end] element 38000000 : 1 [end] -ip test-ip4 input - [ meta load len => reg 1 ] - [ byteorder reg 1 = hton(reg 1, 4, 4) ] - [ lookup reg 1 set set%d ] - -# meta protocol { ip, arp, ip6, vlan } -set%d test-ip4 3 -set%d test-ip4 0 - element 00000008 : 0 [end] element 00000608 : 0 [end] element 0000dd86 : 0 [end] element 00000081 : 0 [end] -ip test-ip4 input - [ meta load protocol => reg 1 ] - [ lookup reg 1 set set%d ] - -# meta protocol ip -ip test-ip4 input - [ meta load protocol => reg 1 ] - [ cmp eq reg 1 0x00000008 ] - -# meta protocol != ip -ip test-ip4 input - [ meta load protocol => reg 1 ] - [ cmp neq reg 1 0x00000008 ] - -# meta nfproto ipv4 -ip test-ip4 input - [ meta load nfproto => reg 1 ] - [ cmp eq reg 1 0x00000002 ] - -# meta nfproto ipv6 -ip test-ip4 input - [ meta load nfproto => reg 1 ] - [ cmp eq reg 1 0x0000000a ] - -# meta nfproto {ipv4, ipv6} -set%d test-ip4 3 -set%d test-ip4 0 - element 00000002 : 0 [end] element 0000000a : 0 [end] -ip test-ip4 input - [ meta load nfproto => reg 1 ] - [ lookup reg 1 set set%d ] - -# meta l4proto 22 -ip test-ip4 input - [ meta load l4proto => reg 1 ] - [ cmp eq reg 1 0x00000016 ] - -# meta l4proto != 233 -ip test-ip4 input - [ meta load l4proto => reg 1 ] - [ cmp neq reg 1 0x000000e9 ] - -# meta l4proto 33-45 -ip test-ip4 input - [ meta load l4proto => reg 1 ] - [ byteorder reg 1 = hton(reg 1, 2, 1) ] - [ cmp gte reg 1 0x00000021 ] - [ cmp lte reg 1 0x0000002d ] - -# meta l4proto != 33-45 -ip test-ip4 input - [ meta load l4proto => reg 1 ] - [ byteorder reg 1 = hton(reg 1, 2, 1) ] - [ cmp lt reg 1 0x00000021 ] - [ cmp gt reg 1 0x0000002d ] - -# meta l4proto { 33, 55, 67, 88} -set%d test-ip4 3 -set%d test-ip4 0 - element 00000021 : 0 [end] element 00000037 : 0 [end] element 00000043 : 0 [end] element 00000058 : 0 [end] -ip test-ip4 input - [ meta load l4proto => reg 1 ] - [ lookup reg 1 set set%d ] - -# meta l4proto { 33-55} -set%d test-ip4 7 -set%d test-ip4 0 - element 00000000 : 1 [end] element 00000021 : 0 [end] element 00000038 : 1 [end] -ip test-ip4 input - [ meta load l4proto => reg 1 ] - [ byteorder reg 1 = hton(reg 1, 2, 1) ] - [ lookup reg 1 set set%d ] - -# meta mark 0x4 -ip test-ip4 input - [ meta load mark => reg 1 ] - [ cmp eq reg 1 0x00000004 ] - -# meta mark 0x32 -ip test-ip4 input - [ meta load mark => reg 1 ] - [ cmp eq reg 1 0x00000032 ] - -# meta mark and 0x03 == 0x01 -ip test-ip4 input - [ meta load mark => reg 1 ] - [ bitwise reg 1 = (reg=1 & 0x00000003 ) ^ 0x00000000 ] - [ cmp eq reg 1 0x00000001 ] - -# meta mark and 0x03 != 0x01 -ip test-ip4 input - [ meta load mark => reg 1 ] - [ bitwise reg 1 = (reg=1 & 0x00000003 ) ^ 0x00000000 ] - [ cmp neq reg 1 0x00000001 ] - -# meta mark 0x10 -ip test-ip4 input - [ meta load mark => reg 1 ] - [ cmp eq reg 1 0x00000010 ] - -# meta mark != 0x10 -ip test-ip4 input - [ meta load mark => reg 1 ] - [ cmp neq reg 1 0x00000010 ] - -# meta mark or 0x03 == 0x01 -ip test-ip4 input - [ meta load mark => reg 1 ] - [ bitwise reg 1 = (reg=1 & 0xfffffffc ) ^ 0x00000003 ] - [ cmp eq reg 1 0x00000001 ] - -# meta mark or 0x03 != 0x01 -ip test-ip4 input - [ meta load mark => reg 1 ] - [ bitwise reg 1 = (reg=1 & 0xfffffffc ) ^ 0x00000003 ] - [ cmp neq reg 1 0x00000001 ] - -# meta mark xor 0x03 == 0x01 -ip test-ip4 input - [ meta load mark => reg 1 ] - [ cmp eq reg 1 0x00000002 ] - -# meta mark xor 0x03 != 0x01 -ip test-ip4 input - [ meta load mark => reg 1 ] - [ cmp neq reg 1 0x00000002 ] - -# meta iif eth0 accept -ip test-ip4 input - [ meta load iif => reg 1 ] - [ cmp eq reg 1 0x00000002 ] - [ immediate reg 0 accept ] - -# meta iif eth0 accept -ip test-ip4 input - [ meta load iif => reg 1 ] - [ cmp eq reg 1 0x00000002 ] - [ immediate reg 0 accept ] - -# meta iif != eth0 accept -ip test-ip4 input - [ meta load iif => reg 1 ] - [ cmp neq reg 1 0x00000002 ] - [ immediate reg 0 accept ] - -# meta iif != eth0 accept -ip test-ip4 input - [ meta load iif => reg 1 ] - [ cmp neq reg 1 0x00000002 ] - [ immediate reg 0 accept ] - -# meta iifname "eth0" -ip test-ip4 input - [ meta load iifname => reg 1 ] - [ cmp eq reg 1 0x30687465 0x00000000 0x00000000 0x00000000 ] - -# meta iifname != "eth0" -ip test-ip4 input - [ meta load iifname => reg 1 ] - [ cmp neq reg 1 0x30687465 0x00000000 0x00000000 0x00000000 ] - -# meta iifname {"eth0", "lo"} -set%d test-ip4 3 -set%d test-ip4 0 - element 30687465 00000000 00000000 00000000 : 0 [end] element 00006f6c 00000000 00000000 00000000 : 0 [end] -ip test-ip4 input - [ meta load iifname => reg 1 ] - [ lookup reg 1 set set%d ] - -# meta iifname "eth*" -ip test-ip4 input - [ meta load iifname => reg 1 ] - [ cmp eq reg 1 0x00687465 ] - -# meta iifname "eth\*" -ip test-ip4 input - [ meta load iifname => reg 1 ] - [ cmp eq reg 1 0x2a687465 0x00000000 0x00000000 0x00000000 ] - -# meta iiftype {ether, ppp, ipip, ipip6, loopback, sit, ipgre} -set%d test-ip4 3 -set%d test-ip4 0 - element 00000001 : 0 [end] element 00000200 : 0 [end] element 00000300 : 0 [end] element 00000301 : 0 [end] element 00000304 : 0 [end] element 00000308 : 0 [end] element 0000030a : 0 [end] -ip test-ip4 input - [ meta load iiftype => reg 1 ] - [ lookup reg 1 set set%d ] - -# meta iiftype != ether -ip test-ip4 input - [ meta load iiftype => reg 1 ] - [ cmp neq reg 1 0x00000001 ] - -# meta iiftype ether -ip test-ip4 input - [ meta load iiftype => reg 1 ] - [ cmp eq reg 1 0x00000001 ] - -# meta iiftype != ppp -ip test-ip4 input - [ meta load iiftype => reg 1 ] - [ cmp neq reg 1 0x00000200 ] - -# meta iiftype ppp -ip test-ip4 input - [ meta load iiftype => reg 1 ] - [ cmp eq reg 1 0x00000200 ] - -# meta oif lo accept -ip test-ip4 input - [ meta load oif => reg 1 ] - [ cmp eq reg 1 0x00000001 ] - [ immediate reg 0 accept ] - -# meta oif != lo accept -ip test-ip4 input - [ meta load oif => reg 1 ] - [ cmp neq reg 1 0x00000001 ] - [ immediate reg 0 accept ] - -# meta oif {eth0, lo} accept -set%d test-ip4 3 -set%d test-ip4 0 - element 00000002 : 0 [end] element 00000001 : 0 [end] -ip test-ip4 input - [ meta load oif => reg 1 ] - [ lookup reg 1 set set%d ] - [ immediate reg 0 accept ] - -# meta oifname "eth0" -ip test-ip4 input - [ meta load oifname => reg 1 ] - [ cmp eq reg 1 0x30687465 0x00000000 0x00000000 0x00000000 ] - -# meta oifname != "eth0" -ip test-ip4 input - [ meta load oifname => reg 1 ] - [ cmp neq reg 1 0x30687465 0x00000000 0x00000000 0x00000000 ] - -# meta oifname { "eth0", "lo"} -set%d test-ip4 3 -set%d test-ip4 0 - element 30687465 00000000 00000000 00000000 : 0 [end] element 00006f6c 00000000 00000000 00000000 : 0 [end] -ip test-ip4 input - [ meta load oifname => reg 1 ] - [ lookup reg 1 set set%d ] - -# meta oifname "eth*" -ip test-ip4 input - [ meta load oifname => reg 1 ] - [ cmp eq reg 1 0x00687465 ] - -# meta oifname "eth\*" -ip test-ip4 input - [ meta load oifname => reg 1 ] - [ cmp eq reg 1 0x2a687465 0x00000000 0x00000000 0x00000000 ] - -# meta oiftype {ether, ppp, ipip, ipip6, loopback, sit, ipgre} -set%d test-ip4 3 -set%d test-ip4 0 - element 00000001 : 0 [end] element 00000200 : 0 [end] element 00000300 : 0 [end] element 00000301 : 0 [end] element 00000304 : 0 [end] element 00000308 : 0 [end] element 0000030a : 0 [end] -ip test-ip4 input - [ meta load oiftype => reg 1 ] - [ lookup reg 1 set set%d ] - -# meta oiftype != ether -ip test-ip4 input - [ meta load oiftype => reg 1 ] - [ cmp neq reg 1 0x00000001 ] - -# meta oiftype ether -ip test-ip4 input - [ meta load oiftype => reg 1 ] - [ cmp eq reg 1 0x00000001 ] - -# meta skuid {bin, root, daemon} accept -set%d test-ip4 3 -set%d test-ip4 0 - element 00000001 : 0 [end] element 00000000 : 0 [end] element 00000002 : 0 [end] -ip test-ip4 input - [ meta load skuid => reg 1 ] - [ lookup reg 1 set set%d ] - [ immediate reg 0 accept ] - -# meta skuid root -ip test-ip4 input - [ meta load skuid => reg 1 ] - [ cmp eq reg 1 0x00000000 ] - -# meta skuid != root -ip test-ip4 input - [ meta load skuid => reg 1 ] - [ cmp neq reg 1 0x00000000 ] - -# meta skuid lt 3000 accept -ip test-ip4 input - [ meta load skuid => reg 1 ] - [ byteorder reg 1 = hton(reg 1, 4, 4) ] - [ cmp lt reg 1 0xb80b0000 ] - [ immediate reg 0 accept ] - -# meta skuid gt 3000 accept -ip test-ip4 input - [ meta load skuid => reg 1 ] - [ byteorder reg 1 = hton(reg 1, 4, 4) ] - [ cmp gt reg 1 0xb80b0000 ] - [ immediate reg 0 accept ] - -# meta skuid eq 3000 accept -ip test-ip4 input - [ meta load skuid => reg 1 ] - [ cmp eq reg 1 0x00000bb8 ] - [ immediate reg 0 accept ] - -# meta skuid 3001-3005 accept -ip test-ip4 input - [ meta load skuid => reg 1 ] - [ byteorder reg 1 = hton(reg 1, 4, 4) ] - [ cmp gte reg 1 0xb90b0000 ] - [ cmp lte reg 1 0xbd0b0000 ] - [ immediate reg 0 accept ] - -# meta skuid != 2001-2005 accept -ip test-ip4 input - [ meta load skuid => reg 1 ] - [ byteorder reg 1 = hton(reg 1, 4, 4) ] - [ cmp lt reg 1 0xd1070000 ] - [ cmp gt reg 1 0xd5070000 ] - [ immediate reg 0 accept ] - -# meta skuid { 2001-2005} accept -set%d test-ip4 7 -set%d test-ip4 0 - element 00000000 : 1 [end] element d1070000 : 0 [end] element d6070000 : 1 [end] -ip test-ip4 input - [ meta load skuid => reg 1 ] - [ byteorder reg 1 = hton(reg 1, 4, 4) ] - [ lookup reg 1 set set%d ] - [ immediate reg 0 accept ] - -# meta skgid {bin, root, daemon} accept -set%d test-ip4 3 -set%d test-ip4 0 - element 00000001 : 0 [end] element 00000000 : 0 [end] element 00000002 : 0 [end] -ip test-ip4 input - [ meta load skgid => reg 1 ] - [ lookup reg 1 set set%d ] - [ immediate reg 0 accept ] - -# meta skgid root -ip test-ip4 input - [ meta load skgid => reg 1 ] - [ cmp eq reg 1 0x00000000 ] - -# meta skgid != root -ip test-ip4 input - [ meta load skgid => reg 1 ] - [ cmp neq reg 1 0x00000000 ] - -# meta skgid lt 3000 accept -ip test-ip4 input - [ meta load skgid => reg 1 ] - [ byteorder reg 1 = hton(reg 1, 4, 4) ] - [ cmp lt reg 1 0xb80b0000 ] - [ immediate reg 0 accept ] - -# meta skgid gt 3000 accept -ip test-ip4 input - [ meta load skgid => reg 1 ] - [ byteorder reg 1 = hton(reg 1, 4, 4) ] - [ cmp gt reg 1 0xb80b0000 ] - [ immediate reg 0 accept ] - -# meta skgid eq 3000 accept -ip test-ip4 input - [ meta load skgid => reg 1 ] - [ cmp eq reg 1 0x00000bb8 ] - [ immediate reg 0 accept ] - -# meta skgid 2001-2005 accept -ip test-ip4 input - [ meta load skgid => reg 1 ] - [ byteorder reg 1 = hton(reg 1, 4, 4) ] - [ cmp gte reg 1 0xd1070000 ] - [ cmp lte reg 1 0xd5070000 ] - [ immediate reg 0 accept ] - -# meta skgid != 2001-2005 accept -ip test-ip4 input - [ meta load skgid => reg 1 ] - [ byteorder reg 1 = hton(reg 1, 4, 4) ] - [ cmp lt reg 1 0xd1070000 ] - [ cmp gt reg 1 0xd5070000 ] - [ immediate reg 0 accept ] - -# meta skgid { 2001-2005} accept -set%d test-ip4 7 -set%d test-ip4 0 - element 00000000 : 1 [end] element d1070000 : 0 [end] element d6070000 : 1 [end] -ip test-ip4 input - [ meta load skgid => reg 1 ] - [ byteorder reg 1 = hton(reg 1, 4, 4) ] - [ lookup reg 1 set set%d ] - [ immediate reg 0 accept ] - -# meta mark set 0xffffffc8 xor 0x16 -ip test-ip4 input - [ immediate reg 1 0xffffffde ] - [ meta set mark with reg 1 ] - -# meta mark set 0x16 and 0x16 -ip test-ip4 input - [ immediate reg 1 0x00000016 ] - [ meta set mark with reg 1 ] - -# meta mark set 0xffffffe9 or 0x16 -ip test-ip4 input - [ immediate reg 1 0xffffffff ] - [ meta set mark with reg 1 ] - -# meta mark set 0xffffffde and 0x16 -ip test-ip4 input - [ immediate reg 1 0x00000016 ] - [ meta set mark with reg 1 ] - -# meta mark set 0xf045ffde or 0x10 -ip test-ip4 input - [ immediate reg 1 0xf045ffde ] - [ meta set mark with reg 1 ] - -# meta mark set 0xffffffde or 0x16 -ip test-ip4 input - [ immediate reg 1 0xffffffde ] - [ meta set mark with reg 1 ] - -# meta mark set 0x32 or 0xfffff -ip test-ip4 input - [ immediate reg 1 0x000fffff ] - [ meta set mark with reg 1 ] - -# meta mark set 0xfffe xor 0x16 -ip test-ip4 input - [ immediate reg 1 0x0000ffe8 ] - [ meta set mark with reg 1 ] - -# meta iif lo -ip test-ip4 input - [ meta load iif => reg 1 ] - [ cmp eq reg 1 0x00000001 ] - -# meta oif lo -ip test-ip4 input - [ meta load oif => reg 1 ] - [ cmp eq reg 1 0x00000001 ] - -# meta oifname "eth2" accept -ip test-ip4 input - [ meta load oifname => reg 1 ] - [ cmp eq reg 1 0x32687465 0x00000000 0x00000000 0x00000000 ] - [ immediate reg 0 accept ] - -# meta skuid 3000 -ip test-ip4 input - [ meta load skuid => reg 1 ] - [ cmp eq reg 1 0x00000bb8 ] - -# meta skgid 3000 -ip test-ip4 input - [ meta load skgid => reg 1 ] - [ cmp eq reg 1 0x00000bb8 ] - -# meta rtclassid cosmos -ip test-ip4 input - [ meta load rtclassid => reg 1 ] - [ cmp eq reg 1 0x00000000 ] - -# meta pkttype broadcast -ip test-ip4 input - [ meta load pkttype => reg 1 ] - [ cmp eq reg 1 0x00000001 ] - -# meta pkttype unicast -ip test-ip4 input - [ meta load pkttype => reg 1 ] - [ cmp eq reg 1 0x00000000 ] - -# meta pkttype multicast -ip test-ip4 input - [ meta load pkttype => reg 1 ] - [ cmp eq reg 1 0x00000002 ] - -# meta pkttype != broadcast -ip test-ip4 input - [ meta load pkttype => reg 1 ] - [ cmp neq reg 1 0x00000001 ] - -# meta pkttype != unicast -ip test-ip4 input - [ meta load pkttype => reg 1 ] - [ cmp neq reg 1 0x00000000 ] - -# meta pkttype != multicast -ip test-ip4 input - [ meta load pkttype => reg 1 ] - [ cmp neq reg 1 0x00000002 ] - -# meta pkttype { broadcast, multicast} accept -set%d test-ip4 3 -set%d test-ip4 0 - element 00000001 : 0 [end] element 00000002 : 0 [end] -ip test-ip4 input - [ meta load pkttype => reg 1 ] - [ lookup reg 1 set set%d ] - [ immediate reg 0 accept ] - -# meta cpu 1 -ip test-ip4 input - [ meta load cpu => reg 1 ] - [ cmp eq reg 1 0x00000001 ] - -# meta cpu != 1 -ip test-ip4 input - [ meta load cpu => reg 1 ] - [ cmp neq reg 1 0x00000001 ] - -# meta cpu 1-3 -ip test-ip4 input - [ meta load cpu => reg 1 ] - [ byteorder reg 1 = hton(reg 1, 4, 4) ] - [ cmp gte reg 1 0x01000000 ] - [ cmp lte reg 1 0x03000000 ] - -# meta cpu != 1-2 -ip test-ip4 input - [ meta load cpu => reg 1 ] - [ byteorder reg 1 = hton(reg 1, 4, 4) ] - [ cmp lt reg 1 0x01000000 ] - [ cmp gt reg 1 0x02000000 ] - -# meta cpu { 2,3} -set%d test-ip4 3 -set%d test-ip4 0 - element 00000002 : 0 [end] element 00000003 : 0 [end] -ip test-ip4 input - [ meta load cpu => reg 1 ] - [ lookup reg 1 set set%d ] - -# meta iifgroup 0 -ip test-ip4 input - [ meta load iifgroup => reg 1 ] - [ cmp eq reg 1 0x00000000 ] - -# meta iifgroup != 0 -ip test-ip4 input - [ meta load iifgroup => reg 1 ] - [ cmp neq reg 1 0x00000000 ] - -# meta iifgroup default -ip test-ip4 input - [ meta load iifgroup => reg 1 ] - [ cmp eq reg 1 0x00000000 ] - -# meta iifgroup != default -ip test-ip4 input - [ meta load iifgroup => reg 1 ] - [ cmp neq reg 1 0x00000000 ] - -# meta iifgroup {default} -set%d test-ip4 3 -set%d test-ip4 0 - element 00000000 : 0 [end] -ip test-ip4 input - [ meta load iifgroup => reg 1 ] - [ lookup reg 1 set set%d ] - -# meta iifgroup { 11,33} -set%d test-ip4 3 -set%d test-ip4 0 - element 0000000b : 0 [end] element 00000021 : 0 [end] -ip test-ip4 input - [ meta load iifgroup => reg 1 ] - [ lookup reg 1 set set%d ] - -# meta iifgroup {11-33} -set%d test-ip4 7 -set%d test-ip4 0 - element 00000000 : 1 [end] element 0b000000 : 0 [end] element 22000000 : 1 [end] -ip test-ip4 input - [ meta load iifgroup => reg 1 ] - [ byteorder reg 1 = hton(reg 1, 4, 4) ] - [ lookup reg 1 set set%d ] - -# meta oifgroup 0 -ip test-ip4 input - [ meta load oifgroup => reg 1 ] - [ cmp eq reg 1 0x00000000 ] - -# meta oifgroup != 0 -ip test-ip4 input - [ meta load oifgroup => reg 1 ] - [ cmp neq reg 1 0x00000000 ] - -# meta oifgroup default -ip test-ip4 input - [ meta load oifgroup => reg 1 ] - [ cmp eq reg 1 0x00000000 ] - -# meta oifgroup != default -ip test-ip4 input - [ meta load oifgroup => reg 1 ] - [ cmp neq reg 1 0x00000000 ] - -# meta oifgroup {default} -set%d test-ip4 3 -set%d test-ip4 0 - element 00000000 : 0 [end] -ip test-ip4 input - [ meta load oifgroup => reg 1 ] - [ lookup reg 1 set set%d ] - -# meta oifgroup { 11,33} -set%d test-ip4 3 -set%d test-ip4 0 - element 0000000b : 0 [end] element 00000021 : 0 [end] -ip test-ip4 input - [ meta load oifgroup => reg 1 ] - [ lookup reg 1 set set%d ] - -# meta oifgroup {11-33} -set%d test-ip4 7 -set%d test-ip4 0 - element 00000000 : 1 [end] element 0b000000 : 0 [end] element 22000000 : 1 [end] -ip test-ip4 input - [ meta load oifgroup => reg 1 ] - [ byteorder reg 1 = hton(reg 1, 4, 4) ] - [ lookup reg 1 set set%d ] - -# meta cgroup 1048577 -ip test-ip4 input - [ meta load cgroup => reg 1 ] - [ cmp eq reg 1 0x00100001 ] - -# meta cgroup != 1048577 -ip test-ip4 input - [ meta load cgroup => reg 1 ] - [ cmp neq reg 1 0x00100001 ] - -# meta cgroup { 1048577, 1048578 } -set%d test-ip4 3 -set%d test-ip4 0 - element 00100001 : 0 [end] element 00100002 : 0 [end] -ip test-ip4 input - [ meta load cgroup => reg 1 ] - [ lookup reg 1 set set%d ] - -# meta cgroup 1048577-1048578 -ip test-ip4 input - [ meta load cgroup => reg 1 ] - [ byteorder reg 1 = hton(reg 1, 4, 4) ] - [ cmp gte reg 1 0x01001000 ] - [ cmp lte reg 1 0x02001000 ] - -# meta cgroup != 1048577-1048578 -ip test-ip4 input - [ meta load cgroup => reg 1 ] - [ byteorder reg 1 = hton(reg 1, 4, 4) ] - [ cmp lt reg 1 0x01001000 ] - [ cmp gt reg 1 0x02001000 ] - -# meta cgroup {1048577-1048578} -set%d test-ip4 7 -set%d test-ip4 0 - element 00000000 : 1 [end] element 01001000 : 0 [end] element 03001000 : 1 [end] -ip test-ip4 input - [ meta load cgroup => reg 1 ] - [ byteorder reg 1 = hton(reg 1, 4, 4) ] - [ lookup reg 1 set set%d ] - - -# meta iif . meta oif { lo . eth0 } -set%d test-ip4 3 -set%d test-ip4 0 - element 00000001 00000002 : 0 [end] -ip test-ip4 output - [ meta load iif => reg 1 ] - [ meta load oif => reg 9 ] - [ lookup reg 1 set set%d ] - -# meta iif . meta oif . meta mark { lo . eth0 . 0x0000000a } -set%d test-ip4 3 -set%d test-ip4 0 - element 00000001 00000002 0000000a : 0 [end] -ip test-ip4 output - [ meta load iif => reg 1 ] - [ meta load oif => reg 9 ] - [ meta load mark => reg 10 ] - [ lookup reg 1 set set%d ] - -# meta iif . meta oif vmap { lo . eth0 : drop } -map%d test-ip4 b -map%d test-ip4 0 - element 00000001 00000002 : 0 [end] -ip test-ip4 output - [ meta load iif => reg 1 ] - [ meta load oif => reg 9 ] - [ lookup reg 1 set map%d dreg 0 ] - |