summaryrefslogtreecommitdiffstats
path: root/tests/py/inet/vmap.t.payload.netdev
blob: 3f51bb33054a2d8d589edf1a493746a652fd60bd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# iifname . ip protocol . th dport vmap { "eth0" . tcp . 22 : accept, "eth1" . udp . 67 : drop }
__map%d test-netdev b size 2
__map%d test-netdev 0
	element 30687465 00000000 00000000 00000000 00000006 00001600  : accept 0 [end]	element 31687465 00000000 00000000 00000000 00000011 00004300  : drop 0 [end]
netdev test-netdev ingress
  [ meta load protocol => reg 1 ]
  [ cmp eq reg 1 0x00000008 ]
  [ meta load iifname => reg 1 ]
  [ payload load 1b @ network header + 9 => reg 2 ]
  [ payload load 2b @ transport header + 2 => reg 13 ]
  [ lookup reg 1 set __map%d dreg 0 ]

# ip saddr . @ih,32,32 { 1.1.1.1 . 0x14, 2.2.2.2 . 0x1e }
__set%d test-netdev 3 size 2
__set%d test-netdev 0
	element 01010101 14000000  : 0 [end]	element 02020202 1e000000  : 0 [end]
netdev test-netdev ingress
  [ meta load protocol => reg 1 ]
  [ cmp eq reg 1 0x00000008 ]
  [ payload load 4b @ network header + 12 => reg 1 ]
  [ payload load 4b @ inner header + 4 => reg 9 ]
  [ lookup reg 1 set __set%d ]

# udp length . @th,160,128 vmap { 47-63 . 0xe373135363130333131303735353203 : accept }
__map%d test-netdev 8f size 1
__map%d test-netdev 0
	element 00002f00 3531370e 33303136 37303131 03323535  - 00003f00 3531370e 33303136 37303131 03323535  : accept 0 [end]
netdev test-netdev ingress
  [ meta load l4proto => reg 1 ]
  [ cmp eq reg 1 0x00000011 ]
  [ payload load 2b @ transport header + 4 => reg 1 ]
  [ payload load 16b @ transport header + 20 => reg 9 ]
  [ lookup reg 1 set __map%d dreg 0 ]