summaryrefslogtreecommitdiffstats
path: root/tests/py/ip6/sets.t.payload.inet
blob: 2bbd5573ff0a7d50337238899a74a689f49e9e1e (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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
# ip6 saddr @set2 drop
inet test-inet input 
  [ meta load nfproto => reg 1 ]
  [ cmp eq reg 1 0x0000000a ]
  [ payload load 16b @ network header + 8 => reg 1 ]
  [ lookup reg 1 set set2 ]
  [ immediate reg 0 drop ]

# ip6 saddr != @set2 drop
inet test-inet input 
  [ meta load nfproto => reg 1 ]
  [ cmp eq reg 1 0x0000000a ]
  [ payload load 16b @ network header + 8 => reg 1 ]
  [ lookup reg 1 set set2 0x1 ]
  [ immediate reg 0 drop ]

# ip6 saddr . ip6 daddr @set5 drop
inet test-inet input
  [ meta load nfproto => reg 1 ]
  [ cmp eq reg 1 0x0000000a ]
  [ payload load 16b @ network header + 8 => reg 1 ]
  [ payload load 16b @ network header + 24 => reg 2 ]
  [ lookup reg 1 set set5 ]
  [ immediate reg 0 drop ]

# add @set5 { ip6 saddr . ip6 daddr }
inet test-inet input
  [ meta load nfproto => reg 1 ]
  [ cmp eq reg 1 0x0000000a ]
  [ payload load 16b @ network header + 8 => reg 1 ]
  [ payload load 16b @ network header + 24 => reg 2 ]
  [ dynset add reg_key 1 set set5 ]

# add @map1 { ip6 saddr . ip6 daddr : meta mark }
inet test-inet input
  [ meta load nfproto => reg 1 ]
  [ cmp eq reg 1 0x0000000a ]
  [ payload load 16b @ network header + 8 => reg 1 ]
  [ payload load 16b @ network header + 24 => reg 2 ]
  [ meta load mark => reg 3 ]
  [ dynset add reg_key 1 set map1 sreg_data 3 ]

# delete @set5 { ip6 saddr . ip6 daddr }
inet test-inet input
  [ meta load nfproto => reg 1 ]
  [ cmp eq reg 1 0x0000000a ]
  [ payload load 16b @ network header + 8 => reg 1 ]
  [ payload load 16b @ network header + 24 => reg 2 ]
  [ dynset delete reg_key 1 set set5 ]