# arp htype 1 netdev test-netdev ingress [ meta load protocol => reg 1 ] [ cmp eq reg 1 0x00000608 ] [ payload load 2b @ network header + 0 => reg 1 ] [ cmp eq reg 1 0x00000100 ] # arp htype != 1 netdev test-netdev ingress [ meta load protocol => reg 1 ] [ cmp eq reg 1 0x00000608 ] [ payload load 2b @ network header + 0 => reg 1 ] [ cmp neq reg 1 0x00000100 ] # arp htype 22 netdev test-netdev ingress [ meta load protocol => reg 1 ] [ cmp eq reg 1 0x00000608 ] [ payload load 2b @ network header + 0 => reg 1 ] [ cmp eq reg 1 0x00001600 ] # arp htype != 233 netdev test-netdev ingress [ meta load protocol => reg 1 ] [ cmp eq reg 1 0x00000608 ] [ payload load 2b @ network header + 0 => reg 1 ] [ cmp neq reg 1 0x0000e900 ] # arp htype 33-45 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 ] # arp htype != 33-45 netdev test-netdev ingress [ meta load protocol => reg 1 ] [ cmp eq reg 1 0x00000608 ] [ payload load 2b @ network header + 0 => reg 1 ] [ range neq reg 1 0x00002100 0x00002d00 ] # arp htype { 33, 55, 67, 88} __set%d test-netdev 3 __set%d test-netdev 0 element 00002100 : 0 [end] element 00003700 : 0 [end] element 00004300 : 0 [end] element 00005800 : 0 [end] netdev test-netdev ingress [ meta load protocol => reg 1 ] [ cmp eq reg 1 0x00000608 ] [ payload load 2b @ network header + 0 => reg 1 ] [ lookup reg 1 set __set%d ] # arp htype != { 33, 55, 67, 88} __set%d test-netdev 3 __set%d test-netdev 0 element 00002100 : 0 [end] element 00003700 : 0 [end] element 00004300 : 0 [end] element 00005800 : 0 [end] netdev test-netdev ingress [ meta load protocol => reg 1 ] [ cmp eq reg 1 0x00000608 ] [ payload load 2b @ network header + 0 => reg 1 ] [ lookup reg 1 set __set%d 0x1 ] # arp htype { 33-55} __set%d test-netdev 7 __set%d test-netdev 0 element 00000000 : 1 [end] element 00002100 : 0 [end] element 00003800 : 1 [end] netdev test-netdev ingress [ meta load protocol => reg 1 ] [ cmp eq reg 1 0x00000608 ] [ payload load 2b @ network header + 0 => reg 1 ] [ lookup reg 1 set __set%d ] # arp htype != { 33-55} __set%d test-netdev 7 __set%d test-netdev 0 element 00000000 : 1 [end] element 00002100 : 0 [end] element 00003800 : 1 [end] netdev test-netdev ingress [ meta load protocol => reg 1 ] [ cmp eq reg 1 0x00000608 ] [ payload load 2b @ network header + 0 => reg 1 ] [ lookup reg 1 set __set%d 0x1 ] # arp ptype 0x0800 netdev test-netdev ingress [ meta load protocol => reg 1 ] [ cmp eq reg 1 0x00000608 ] [ payload load 2b @ network header + 2 => reg 1 ] [ cmp eq reg 1 0x00000008 ] # arp hlen 22 netdev test-netdev ingress [ meta load protocol => reg 1 ] [ cmp eq reg 1 0x00000608 ] [ payload load 1b @ network header + 4 => reg 1 ] [ cmp eq reg 1 0x00000016 ] # arp hlen != 233 netdev test-netdev ingress [ meta load protocol => reg 1 ] [ cmp eq reg 1 0x00000608 ] [ payload load 1b @ network header + 4 => reg 1 ] [ cmp neq reg 1 0x000000e9 ] # arp hlen 33-45 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 ] # arp hlen != 33-45 netdev test-netdev ingress [ meta load protocol => reg 1 ] [ cmp eq reg 1 0x00000608 ] [ payload load 1b @ network header + 4 => reg 1 ] [ range neq reg 1 0x00000021 0x0000002d ] # arp hlen { 33, 55, 67, 88} __set%d test-netdev 3 __set%d test-netdev 0 element 00000021 : 0 [end] element 00000037 : 0 [end] element 00000043 : 0 [end] element 00000058 : 0 [end] netdev test-netdev ingress [ meta load protocol => reg 1 ] [ cmp eq reg 1 0x00000608 ] [ payload load 1b @ network header + 4 => reg 1 ] [ lookup reg 1 set __set%d ] # arp hlen != { 33, 55, 67, 88} __set%d test-netdev 3 __set%d test-netdev 0 element 00000021 : 0 [end] element 00000037 : 0 [end] element 00000043 : 0 [end] element 00000058 : 0 [end] netdev test-netdev ingress [ meta load protocol => reg 1 ] [ cmp eq reg 1 0x00000608 ] [ payload load 1b @ network header + 4 => reg 1 ] [ lookup reg 1 set __set%d 0x1 ] # arp hlen { 33-55} __set%d test-netdev 7 __set%d test-netdev 0 element 00000000 : 1 [end] element 00000021 : 0 [end] element 00000038 : 1 [end] netdev test-netdev ingress [ meta load protocol => reg 1 ] [ cmp eq reg 1 0x00000608 ] [ payload load 1b @ network header + 4 => reg 1 ] [ lookup reg 1 set __set%d ] # arp hlen != { 33-55} __set%d test-netdev 7 __set%d test-netdev 0 element 00000000 : 1 [end] element 00000021 : 0 [end] element 00000038 : 1 [end] netdev test-netdev ingress [ meta load protocol => reg 1 ] [ cmp eq reg 1 0x00000608 ] [ payload load 1b @ network header + 4 => reg 1 ] [ lookup reg 1 set __set%d 0x1 ] # arp plen 22 netdev test-netdev ingress [ meta load protocol => reg 1 ] [ cmp eq reg 1 0x00000608 ] [ payload load 1b @ network header + 5 => reg 1 ] [ cmp eq reg 1 0x00000016 ] # arp plen != 233 netdev test-netdev ingress [ meta load protocol => reg 1 ] [ cmp eq reg 1 0x00000608 ] [ payload load 1b @ network header + 5 => reg 1 ] [ cmp neq reg 1 0x000000e9 ] # arp plen 33-45 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 ] # arp plen != 33-45 netdev test-netdev ingress [ meta load protocol => reg 1 ] [ cmp eq reg 1 0x00000608 ] [ payload load 1b @ network header + 5 => reg 1 ] [ range neq reg 1 0x00000021 0x0000002d ] # arp plen { 33, 55, 67, 88} __set%d test-netdev 3 __set%d test-netdev 0 element 00000021 : 0 [end] element 00000037 : 0 [end] element 00000043 : 0 [end] element 00000058 : 0 [end] netdev test-netdev ingress [ meta load protocol => reg 1 ] [ cmp eq reg 1 0x00000608 ] [ payload load 1b @ network header + 5 => reg 1 ] [ lookup reg 1 set __set%d ] # arp plen != { 33, 55, 67, 88} __set%d test-netdev 3 __set%d test-netdev 0 element 00000021 : 0 [end] element 00000037 : 0 [end] element 00000043 : 0 [end] element 00000058 : 0 [end] netdev test-netdev ingress [ meta load protocol => reg 1 ] [ cmp eq reg 1 0x00000608 ] [ payload load 1b @ network header + 5 => reg 1 ] [ lookup reg 1 set __set%d 0x1 ] # arp plen { 33-55} __set%d test-netdev 7 __set%d test-netdev 0 element 00000000 : 1 [end] element 00000021 : 0 [end] element 00000038 : 1 [end] netdev test-netdev ingress [ meta load protocol => reg 1 ] [ cmp eq reg 1 0x00000608 ] [ payload load 1b @ network header + 5 => reg 1 ] [ lookup reg 1 set __set%d ] # arp plen != {33-55} __set%d test-netdev 7 __set%d test-netdev 0 element 00000000 : 1 [end] element 00000021 : 0 [end] element 00000038 : 1 [end] netdev test-netdev ingress [ meta load protocol => reg 1 ] [ cmp eq reg 1 0x00000608 ] [ payload load 1b @ network header + 5 => reg 1 ] [ lookup reg 1 set __set%d 0x1 ] # arp operation {nak, inreply, inrequest, rreply, rrequest, reply, request} __set%d test-netdev 3 __set%d test-netdev 0 element 00000a00 : 0 [end] element 00000900 : 0 [end] element 00000800 : 0 [end] element 00000400 : 0 [end] element 00000300 : 0 [end] element 00000200 : 0 [end] element 00000100 : 0 [end] netdev test-netdev ingress [ meta load protocol => reg 1 ] [ cmp eq reg 1 0x00000608 ] [ payload load 2b @ network header + 6 => reg 1 ] [ lookup reg 1 set __set%d ] # arp operation != {nak, inreply, inrequest, rreply, rrequest, reply, request} __set%d test-netdev 3 __set%d test-netdev 0 element 00000a00 : 0 [end] element 00000900 : 0 [end] element 00000800 : 0 [end] element 00000400 : 0 [end] element 00000300 : 0 [end] element 00000200 : 0 [end] element 00000100 : 0 [end] netdev test-netdev ingress [ meta load protocol => reg 1 ] [ cmp eq reg 1 0x00000608 ] [ payload load 2b @ network header + 6 => reg 1 ] [ lookup reg 1 set __set%d 0x1 ] # arp operation request netdev test-netdev ingress [ meta load protocol => reg 1 ] [ cmp eq reg 1 0x00000608 ] [ payload load 2b @ network header + 6 => reg 1 ] [ cmp eq reg 1 0x00000100 ] # arp operation reply netdev test-netdev ingress [ meta load protocol => reg 1 ] [ cmp eq reg 1 0x00000608 ] [ payload load 2b @ network header + 6 => reg 1 ] [ cmp eq reg 1 0x00000200 ] # arp operation rrequest netdev test-netdev ingress [ meta load protocol => reg 1 ] [ cmp eq reg 1 0x00000608 ] [ payload load 2b @ network header + 6 => reg 1 ] [ cmp eq reg 1 0x00000300 ] # arp operation rreply netdev test-netdev ingress [ meta load protocol => reg 1 ] [ cmp eq reg 1 0x00000608 ] [ payload load 2b @ network header + 6 => reg 1 ] [ cmp eq reg 1 0x00000400 ] # arp operation inrequest netdev test-netdev ingress [ meta load protocol => reg 1 ] [ cmp eq reg 1 0x00000608 ] [ payload load 2b @ network header + 6 => reg 1 ] [ cmp eq reg 1 0x00000800 ] # arp operation inreply netdev test-netdev ingress [ meta load protocol => reg 1 ] [ cmp eq reg 1 0x00000608 ] [ payload load 2b @ network header + 6 => reg 1 ] [ cmp eq reg 1 0x00000900 ] # arp operation nak netdev test-netdev ingress [ meta load protocol => reg 1 ] [ cmp eq reg 1 0x00000608 ] [ payload load 2b @ network header + 6 => reg 1 ] [ cmp eq reg 1 0x00000a00 ] # arp operation reply netdev test-netdev ingress [ meta load protocol => reg 1 ] [ cmp eq reg 1 0x00000608 ] [ payload load 2b @ network header + 6 => reg 1 ] [ cmp eq reg 1 0x00000200 ] # arp operation != request netdev test-netdev ingress [ meta load protocol => reg 1 ] [ cmp eq reg 1 0x00000608 ] [ payload load 2b @ network header + 6 => reg 1 ] [ cmp neq reg 1 0x00000100 ] # arp operation != reply netdev test-netdev ingress [ meta load protocol => reg 1 ] [ cmp eq reg 1 0x00000608 ] [ payload load 2b @ network header + 6 => reg 1 ] [ cmp neq reg 1 0x00000200 ] # arp operation != rrequest netdev test-netdev ingress [ meta load protocol => reg 1 ] [ cmp eq reg 1 0x00000608 ] [ payload load 2b @ network header + 6 => reg 1 ] [ cmp neq reg 1 0x00000300 ] # arp operation != rreply netdev test-netdev ingress [ meta load protocol => reg 1 ] [ cmp eq reg 1 0x00000608 ] [ payload load 2b @ network header + 6 => reg 1 ] [ cmp neq reg 1 0x00000400 ] # arp operation != inrequest netdev test-netdev ingress [ meta load protocol => reg 1 ] [ cmp eq reg 1 0x00000608 ] [ payload load 2b @ network header + 6 => reg 1 ] [ cmp neq reg 1 0x00000800 ] # arp operation != inreply netdev test-netdev ingress [ meta load protocol => reg 1 ] [ cmp eq reg 1 0x00000608 ] [ payload load 2b @ network header + 6 => reg 1 ] [ cmp neq reg 1 0x00000900 ] # arp operation != nak netdev test-netdev ingress [ meta load protocol => reg 1 ] [ cmp eq reg 1 0x00000608 ] [ payload load 2b @ network header + 6 => reg 1 ] [ cmp neq reg 1 0x00000a00 ] # arp operation != reply netdev test-netdev ingress [ meta load protocol => reg 1 ] [ cmp eq reg 1 0x00000608 ] [ payload load 2b @ network header + 6 => reg 1 ] [ cmp neq reg 1 0x00000200 ]