summaryrefslogtreecommitdiffstats
path: root/tests/py/inet/esp.t.payload.ip6
blob: 47584921af09627b33ffc4f1147b5ca2dc89c22d (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
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
# esp spi 100
ip6 test-ip6 input
  [ payload load 1b @ network header + 6 => reg 1 ]
  [ cmp eq reg 1 0x00000032 ]
  [ payload load 4b @ transport header + 0 => reg 1 ]
  [ cmp eq reg 1 0x64000000 ]

# esp spi != 100
ip6 test-ip6 input
  [ payload load 1b @ network header + 6 => reg 1 ]
  [ cmp eq reg 1 0x00000032 ]
  [ payload load 4b @ transport header + 0 => reg 1 ]
  [ cmp neq reg 1 0x64000000 ]

# esp spi 111-222
ip6 test-ip6 input
  [ payload load 1b @ network header + 6 => reg 1 ]
  [ cmp eq reg 1 0x00000032 ]
  [ payload load 4b @ transport header + 0 => reg 1 ]
  [ cmp gte reg 1 0x6f000000 ]
  [ cmp lte reg 1 0xde000000 ]

# esp spi != 111-222
ip6 test-ip6 input
  [ payload load 1b @ network header + 6 => reg 1 ]
  [ cmp eq reg 1 0x00000032 ]
  [ payload load 4b @ transport header + 0 => reg 1 ]
  [ range neq reg 1 0x6f000000 0xde000000 ]

# esp spi { 100, 102}
__set%d test-ip6 3
__set%d test-ip6 0
	element 64000000  : 0 [end]	element 66000000  : 0 [end]
ip6 test-ip6 input
  [ payload load 1b @ network header + 6 => reg 1 ]
  [ cmp eq reg 1 0x00000032 ]
  [ payload load 4b @ transport header + 0 => reg 1 ]
  [ lookup reg 1 set __set%d ]

# esp spi != { 100, 102}
__set%d test-ip6 3
__set%d test-ip6 0
	element 64000000  : 0 [end]	element 66000000  : 0 [end]
ip6 test-ip6 input
  [ payload load 1b @ network header + 6 => reg 1 ]
  [ cmp eq reg 1 0x00000032 ]
  [ payload load 4b @ transport header + 0 => reg 1 ]
  [ lookup reg 1 set __set%d 0x1 ]

# esp spi { 100-102}
__set%d test-ip6 7
__set%d test-ip6 0
	element 00000000  : 1 [end]	element 64000000  : 0 [end]	element 67000000  : 1 [end]
ip6 test-ip6 input
  [ payload load 1b @ network header + 6 => reg 1 ]
  [ cmp eq reg 1 0x00000032 ]
  [ payload load 4b @ transport header + 0 => reg 1 ]
  [ lookup reg 1 set __set%d ]

# esp spi != { 100-102}
__set%d test-ip6 7
__set%d test-ip6 0
	element 00000000  : 1 [end]	element 64000000  : 0 [end]	element 67000000  : 1 [end]
ip6 test-ip6 input
  [ payload load 1b @ network header + 6 => reg 1 ]
  [ cmp eq reg 1 0x00000032 ]
  [ payload load 4b @ transport header + 0 => reg 1 ]
  [ lookup reg 1 set __set%d 0x1 ]

# esp sequence 22
ip6 test-ip6 input
  [ payload load 1b @ network header + 6 => reg 1 ]
  [ cmp eq reg 1 0x00000032 ]
  [ payload load 4b @ transport header + 4 => reg 1 ]
  [ cmp eq reg 1 0x16000000 ]

# esp sequence 22-24
ip6 test-ip6 input
  [ payload load 1b @ network header + 6 => reg 1 ]
  [ cmp eq reg 1 0x00000032 ]
  [ payload load 4b @ transport header + 4 => reg 1 ]
  [ cmp gte reg 1 0x16000000 ]
  [ cmp lte reg 1 0x18000000 ]

# esp sequence != 22-24
ip6 test-ip6 input
  [ payload load 1b @ network header + 6 => reg 1 ]
  [ cmp eq reg 1 0x00000032 ]
  [ payload load 4b @ transport header + 4 => reg 1 ]
  [ range neq reg 1 0x16000000 0x18000000 ]

# esp sequence { 22, 24}
__set%d test-ip6 3
__set%d test-ip6 0
	element 16000000  : 0 [end]	element 18000000  : 0 [end]
ip6 test-ip6 input
  [ payload load 1b @ network header + 6 => reg 1 ]
  [ cmp eq reg 1 0x00000032 ]
  [ payload load 4b @ transport header + 4 => reg 1 ]
  [ lookup reg 1 set __set%d ]

# esp sequence != { 22, 24}
__set%d test-ip6 3
__set%d test-ip6 0
	element 16000000  : 0 [end]	element 18000000  : 0 [end]
ip6 test-ip6 input
  [ payload load 1b @ network header + 6 => reg 1 ]
  [ cmp eq reg 1 0x00000032 ]
  [ payload load 4b @ transport header + 4 => reg 1 ]
  [ lookup reg 1 set __set%d 0x1 ]

# esp sequence { 22-25}
__set%d test-ip6 7
__set%d test-ip6 0
	element 00000000  : 1 [end]	element 16000000  : 0 [end]	element 1a000000  : 1 [end]
ip6 test-ip6 input
  [ payload load 1b @ network header + 6 => reg 1 ]
  [ cmp eq reg 1 0x00000032 ]
  [ payload load 4b @ transport header + 4 => reg 1 ]
  [ lookup reg 1 set __set%d ]

# esp sequence != { 22-25}
__set%d test-ip6 7
__set%d test-ip6 0
	element 00000000  : 1 [end]	element 16000000  : 0 [end]	element 1a000000  : 1 [end]
ip6 test-ip6 input
  [ payload load 1b @ network header + 6 => reg 1 ]
  [ cmp eq reg 1 0x00000032 ]
  [ payload load 4b @ transport header + 4 => reg 1 ]
  [ lookup reg 1 set __set%d 0x1 ]