blob: 4dc74bcb21932f47dd779ea3d59a56db44d6baf4 [file] [log] [blame]
“mystarrocks”23f0c452017-12-11 07:11:51 -08001import socket
Klement Sekera28fb03f2018-04-17 11:36:55 +02002import unittest
Klement Sekera31da2e32018-06-24 22:49:55 +02003from scapy.layers.ipsec import ESP
Christian Hoppsfb7e7ed2019-11-03 07:02:15 -05004from scapy.layers.inet import IP, ICMP, UDP
Neale Ranns041add72020-01-02 04:06:10 +00005from scapy.layers.inet6 import IPv6
6from scapy.layers.l2 import Ether
7from scapy.packet import Raw
“mystarrocks”23f0c452017-12-11 07:11:51 -08008
Neale Ranns00625a62019-07-31 00:13:18 -07009from parameterized import parameterized
juraj.linkes11057662019-07-08 10:22:55 +020010from framework import VppTestRunner
Klement Sekerad9b0c6f2022-04-26 19:02:15 +020011from template_ipsec import (
12 IpsecTra46Tests,
13 IpsecTun46Tests,
14 TemplateIpsec,
15 IpsecTcpTests,
16 IpsecTun4Tests,
17 IpsecTra4Tests,
18 config_tra_params,
19 config_tun_params,
20 IPsecIPv4Params,
21 IPsecIPv6Params,
22 IpsecTra4,
23 IpsecTun4,
24 IpsecTra6,
25 IpsecTun6,
26 IpsecTun6HandoffTests,
27 IpsecTun4HandoffTests,
28 IpsecTra6ExtTests,
29)
30from vpp_ipsec import VppIpsecSpd, VppIpsecSpdEntry, VppIpsecSA, VppIpsecSpdItfBinding
Neale Ranns311124e2019-01-24 04:52:25 -080031from vpp_ip_route import VppIpRoute, VppRoutePath
32from vpp_ip import DpoProto
Neale Ranns17dcec02019-01-09 21:22:20 -080033from vpp_papi import VppEnum
“mystarrocks”23f0c452017-12-11 07:11:51 -080034
Neale Rannsc87b66c2019-02-07 07:26:12 -080035NUM_PKTS = 67
Benoît Ganne5c481ff2021-03-08 10:22:51 +010036engines_supporting_chain_bufs = ["openssl", "async"]
Neale Rannsf16e9a52021-02-25 19:09:24 +000037engines = ["ia32", "ipsecmb", "openssl"]
Neale Rannsc87b66c2019-02-07 07:26:12 -080038
“mystarrocks”23f0c452017-12-11 07:11:51 -080039
Neale Ranns4f33c802019-04-10 12:39:10 +000040class ConfigIpsecESP(TemplateIpsec):
41 encryption_type = ESP
42 tra4_encrypt_node_name = "esp4-encrypt"
Neale Ranns8c609af2021-02-25 10:05:32 +000043 tra4_decrypt_node_name = ["esp4-decrypt", "esp4-decrypt-post"]
Neale Ranns4f33c802019-04-10 12:39:10 +000044 tra6_encrypt_node_name = "esp6-encrypt"
Neale Ranns8c609af2021-02-25 10:05:32 +000045 tra6_decrypt_node_name = ["esp6-decrypt", "esp6-decrypt-post"]
Neale Ranns4f33c802019-04-10 12:39:10 +000046 tun4_encrypt_node_name = "esp4-encrypt"
Neale Ranns8c609af2021-02-25 10:05:32 +000047 tun4_decrypt_node_name = ["esp4-decrypt", "esp4-decrypt-post"]
Neale Ranns4f33c802019-04-10 12:39:10 +000048 tun6_encrypt_node_name = "esp6-encrypt"
Neale Ranns8c609af2021-02-25 10:05:32 +000049 tun6_decrypt_node_name = ["esp6-decrypt", "esp6-decrypt-post"]
Neale Ranns53f526b2019-02-25 14:32:02 +000050
Neale Ranns4f33c802019-04-10 12:39:10 +000051 @classmethod
52 def setUpClass(cls):
53 super(ConfigIpsecESP, cls).setUpClass()
Neale Ranns53f526b2019-02-25 14:32:02 +000054
Neale Ranns4f33c802019-04-10 12:39:10 +000055 @classmethod
56 def tearDownClass(cls):
57 super(ConfigIpsecESP, cls).tearDownClass()
Neale Ranns53f526b2019-02-25 14:32:02 +000058
Neale Ranns4f33c802019-04-10 12:39:10 +000059 def setUp(self):
60 super(ConfigIpsecESP, self).setUp()
Neale Ranns53f526b2019-02-25 14:32:02 +000061
Neale Ranns4f33c802019-04-10 12:39:10 +000062 def tearDown(self):
63 super(ConfigIpsecESP, self).tearDown()
64
Neale Ranns5b891102021-06-28 13:31:28 +000065 def config_anti_replay(self, params):
66 saf = VppEnum.vl_api_ipsec_sad_flags_t
67 for p in params:
68 p.flags |= saf.IPSEC_API_SAD_FLAG_USE_ANTI_REPLAY
69
Neale Ranns4f33c802019-04-10 12:39:10 +000070 def config_network(self, params):
71 self.net_objs = []
72 self.tun_if = self.pg0
73 self.tra_if = self.pg2
74 self.logger.info(self.vapi.ppcli("show int addr"))
75
76 self.tra_spd = VppIpsecSpd(self, self.tra_spd_id)
77 self.tra_spd.add_vpp_config()
78 self.net_objs.append(self.tra_spd)
79 self.tun_spd = VppIpsecSpd(self, self.tun_spd_id)
80 self.tun_spd.add_vpp_config()
81 self.net_objs.append(self.tun_spd)
82
Klement Sekerad9b0c6f2022-04-26 19:02:15 +020083 b = VppIpsecSpdItfBinding(self, self.tun_spd, self.tun_if)
Neale Ranns4f33c802019-04-10 12:39:10 +000084 b.add_vpp_config()
85 self.net_objs.append(b)
86
Klement Sekerad9b0c6f2022-04-26 19:02:15 +020087 b = VppIpsecSpdItfBinding(self, self.tra_spd, self.tra_if)
Neale Ranns4f33c802019-04-10 12:39:10 +000088 b.add_vpp_config()
89 self.net_objs.append(b)
90
91 for p in params:
92 self.config_esp_tra(p)
93 config_tra_params(p, self.encryption_type)
94 for p in params:
95 self.config_esp_tun(p)
Neale Ranns12989b52019-09-26 16:20:19 +000096 config_tun_params(p, self.encryption_type, self.tun_if)
Neale Ranns4f33c802019-04-10 12:39:10 +000097
98 for p in params:
99 d = DpoProto.DPO_PROTO_IP6 if p.is_ipv6 else DpoProto.DPO_PROTO_IP4
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200100 r = VppIpRoute(
101 self,
102 p.remote_tun_if_host,
103 p.addr_len,
104 [
105 VppRoutePath(
106 self.tun_if.remote_addr[p.addr_type], 0xFFFFFFFF, proto=d
107 )
108 ],
109 )
Neale Ranns4f33c802019-04-10 12:39:10 +0000110 r.add_vpp_config()
111 self.net_objs.append(r)
112
113 self.logger.info(self.vapi.ppcli("show ipsec all"))
114
115 def unconfig_network(self):
116 for o in reversed(self.net_objs):
117 o.remove_vpp_config()
118 self.net_objs = []
119
120 def config_esp_tun(self, params):
121 addr_type = params.addr_type
122 scapy_tun_sa_id = params.scapy_tun_sa_id
123 scapy_tun_spi = params.scapy_tun_spi
124 vpp_tun_sa_id = params.vpp_tun_sa_id
125 vpp_tun_spi = params.vpp_tun_spi
126 auth_algo_vpp_id = params.auth_algo_vpp_id
127 auth_key = params.auth_key
128 crypt_algo_vpp_id = params.crypt_algo_vpp_id
129 crypt_key = params.crypt_key
130 remote_tun_if_host = params.remote_tun_if_host
131 addr_any = params.addr_any
132 addr_bcast = params.addr_bcast
133 e = VppEnum.vl_api_ipsec_spd_action_t
Neale Ranns49e7ef62019-04-10 17:24:29 +0000134 flags = params.flags
Neale Ranns041add72020-01-02 04:06:10 +0000135 tun_flags = params.tun_flags
Neale Ranns80f6fd52019-04-16 02:41:34 +0000136 salt = params.salt
Neale Ranns4f33c802019-04-10 12:39:10 +0000137 objs = []
138
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200139 params.tun_sa_in = VppIpsecSA(
140 self,
141 scapy_tun_sa_id,
142 scapy_tun_spi,
143 auth_algo_vpp_id,
144 auth_key,
145 crypt_algo_vpp_id,
146 crypt_key,
147 self.vpp_esp_protocol,
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200148 self.tun_if.remote_addr[addr_type],
Arthur de Kerhor0df06b62022-11-16 18:45:24 +0100149 self.tun_if.local_addr[addr_type],
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200150 tun_flags=tun_flags,
151 dscp=params.dscp,
152 flags=flags,
153 salt=salt,
154 hop_limit=params.outer_hop_limit,
155 )
156 params.tun_sa_out = VppIpsecSA(
157 self,
158 vpp_tun_sa_id,
159 vpp_tun_spi,
160 auth_algo_vpp_id,
161 auth_key,
162 crypt_algo_vpp_id,
163 crypt_key,
164 self.vpp_esp_protocol,
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200165 self.tun_if.local_addr[addr_type],
Arthur de Kerhor0df06b62022-11-16 18:45:24 +0100166 self.tun_if.remote_addr[addr_type],
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200167 tun_flags=tun_flags,
168 dscp=params.dscp,
169 flags=flags,
170 salt=salt,
171 hop_limit=params.outer_hop_limit,
172 )
Neale Ranns4f33c802019-04-10 12:39:10 +0000173 objs.append(params.tun_sa_in)
174 objs.append(params.tun_sa_out)
175
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200176 params.spd_policy_in_any = VppIpsecSpdEntry(
177 self,
178 self.tun_spd,
179 scapy_tun_sa_id,
180 addr_any,
181 addr_bcast,
182 addr_any,
183 addr_bcast,
184 socket.IPPROTO_ESP,
185 )
186 params.spd_policy_out_any = VppIpsecSpdEntry(
187 self,
188 self.tun_spd,
189 scapy_tun_sa_id,
190 addr_any,
191 addr_bcast,
192 addr_any,
193 addr_bcast,
194 socket.IPPROTO_ESP,
195 is_outbound=0,
196 )
Neale Ranns4f33c802019-04-10 12:39:10 +0000197 objs.append(params.spd_policy_out_any)
198 objs.append(params.spd_policy_in_any)
199
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200200 objs.append(
201 VppIpsecSpdEntry(
202 self,
203 self.tun_spd,
Arthur de Kerhor0df06b62022-11-16 18:45:24 +0100204 scapy_tun_sa_id,
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200205 remote_tun_if_host,
206 remote_tun_if_host,
207 self.pg1.remote_addr[addr_type],
208 self.pg1.remote_addr[addr_type],
Piotr Bronowski815c6a42022-06-09 09:09:28 +0000209 socket.IPPROTO_RAW,
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200210 priority=10,
211 policy=e.IPSEC_API_SPD_ACTION_PROTECT,
212 is_outbound=0,
213 )
214 )
215 objs.append(
216 VppIpsecSpdEntry(
217 self,
218 self.tun_spd,
Arthur de Kerhor0df06b62022-11-16 18:45:24 +0100219 vpp_tun_sa_id,
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200220 self.pg1.remote_addr[addr_type],
221 self.pg1.remote_addr[addr_type],
222 remote_tun_if_host,
223 remote_tun_if_host,
Piotr Bronowski815c6a42022-06-09 09:09:28 +0000224 socket.IPPROTO_RAW,
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200225 policy=e.IPSEC_API_SPD_ACTION_PROTECT,
226 priority=10,
227 )
228 )
229 objs.append(
230 VppIpsecSpdEntry(
231 self,
232 self.tun_spd,
Arthur de Kerhor0df06b62022-11-16 18:45:24 +0100233 scapy_tun_sa_id,
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200234 remote_tun_if_host,
235 remote_tun_if_host,
236 self.pg0.local_addr[addr_type],
237 self.pg0.local_addr[addr_type],
Piotr Bronowski815c6a42022-06-09 09:09:28 +0000238 socket.IPPROTO_RAW,
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200239 priority=20,
240 policy=e.IPSEC_API_SPD_ACTION_PROTECT,
241 is_outbound=0,
242 )
243 )
244 objs.append(
245 VppIpsecSpdEntry(
246 self,
247 self.tun_spd,
Arthur de Kerhor0df06b62022-11-16 18:45:24 +0100248 vpp_tun_sa_id,
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200249 self.pg0.local_addr[addr_type],
250 self.pg0.local_addr[addr_type],
251 remote_tun_if_host,
252 remote_tun_if_host,
Piotr Bronowski815c6a42022-06-09 09:09:28 +0000253 socket.IPPROTO_RAW,
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200254 policy=e.IPSEC_API_SPD_ACTION_PROTECT,
255 priority=20,
256 )
257 )
Neale Ranns4f33c802019-04-10 12:39:10 +0000258 for o in objs:
259 o.add_vpp_config()
260 self.net_objs = self.net_objs + objs
261
262 def config_esp_tra(self, params):
263 addr_type = params.addr_type
264 scapy_tra_sa_id = params.scapy_tra_sa_id
265 scapy_tra_spi = params.scapy_tra_spi
266 vpp_tra_sa_id = params.vpp_tra_sa_id
267 vpp_tra_spi = params.vpp_tra_spi
268 auth_algo_vpp_id = params.auth_algo_vpp_id
269 auth_key = params.auth_key
270 crypt_algo_vpp_id = params.crypt_algo_vpp_id
271 crypt_key = params.crypt_key
272 addr_any = params.addr_any
273 addr_bcast = params.addr_bcast
Neale Ranns4f33c802019-04-10 12:39:10 +0000274 e = VppEnum.vl_api_ipsec_spd_action_t
Neale Ranns5b891102021-06-28 13:31:28 +0000275 flags = params.flags
Neale Ranns80f6fd52019-04-16 02:41:34 +0000276 salt = params.salt
Neale Ranns4f33c802019-04-10 12:39:10 +0000277 objs = []
278
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200279 params.tra_sa_in = VppIpsecSA(
280 self,
281 scapy_tra_sa_id,
282 scapy_tra_spi,
283 auth_algo_vpp_id,
284 auth_key,
285 crypt_algo_vpp_id,
286 crypt_key,
287 self.vpp_esp_protocol,
288 flags=flags,
289 salt=salt,
290 )
291 params.tra_sa_out = VppIpsecSA(
292 self,
293 vpp_tra_sa_id,
294 vpp_tra_spi,
295 auth_algo_vpp_id,
296 auth_key,
297 crypt_algo_vpp_id,
298 crypt_key,
299 self.vpp_esp_protocol,
300 flags=flags,
301 salt=salt,
302 )
Neale Ranns4f33c802019-04-10 12:39:10 +0000303 objs.append(params.tra_sa_in)
304 objs.append(params.tra_sa_out)
305
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200306 objs.append(
307 VppIpsecSpdEntry(
308 self,
309 self.tra_spd,
310 vpp_tra_sa_id,
311 addr_any,
312 addr_bcast,
313 addr_any,
314 addr_bcast,
315 socket.IPPROTO_ESP,
316 )
317 )
318 objs.append(
319 VppIpsecSpdEntry(
320 self,
321 self.tra_spd,
322 vpp_tra_sa_id,
323 addr_any,
324 addr_bcast,
325 addr_any,
326 addr_bcast,
327 socket.IPPROTO_ESP,
328 is_outbound=0,
329 )
330 )
331 objs.append(
332 VppIpsecSpdEntry(
333 self,
334 self.tra_spd,
Arthur de Kerhor0df06b62022-11-16 18:45:24 +0100335 scapy_tra_sa_id,
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200336 self.tra_if.local_addr[addr_type],
337 self.tra_if.local_addr[addr_type],
338 self.tra_if.remote_addr[addr_type],
339 self.tra_if.remote_addr[addr_type],
Piotr Bronowski815c6a42022-06-09 09:09:28 +0000340 socket.IPPROTO_RAW,
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200341 priority=10,
342 policy=e.IPSEC_API_SPD_ACTION_PROTECT,
343 is_outbound=0,
344 )
345 )
346 objs.append(
347 VppIpsecSpdEntry(
348 self,
349 self.tra_spd,
Arthur de Kerhor0df06b62022-11-16 18:45:24 +0100350 vpp_tra_sa_id,
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200351 self.tra_if.local_addr[addr_type],
352 self.tra_if.local_addr[addr_type],
353 self.tra_if.remote_addr[addr_type],
354 self.tra_if.remote_addr[addr_type],
Piotr Bronowski815c6a42022-06-09 09:09:28 +0000355 socket.IPPROTO_RAW,
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200356 policy=e.IPSEC_API_SPD_ACTION_PROTECT,
357 priority=10,
358 )
359 )
Neale Ranns4f33c802019-04-10 12:39:10 +0000360 for o in objs:
361 o.add_vpp_config()
362 self.net_objs = self.net_objs + objs
Neale Ranns53f526b2019-02-25 14:32:02 +0000363
364
Neale Ranns4f33c802019-04-10 12:39:10 +0000365class TemplateIpsecEsp(ConfigIpsecESP):
“mystarrocks”23f0c452017-12-11 07:11:51 -0800366 """
367 Basic test for ipsec esp sanity - tunnel and transport modes.
368
369 Below 4 cases are covered as part of this test
Dave Wallaced1706812021-08-12 18:36:02 -0400370
371 #. ipsec esp v4 transport basic test - IPv4 Transport mode
Paul Vinciguerra8feeaff2019-03-27 11:25:48 -0700372 scenario using HMAC-SHA1-96 integrity algo
Dave Wallaced1706812021-08-12 18:36:02 -0400373
374 #. ipsec esp v4 transport burst test
“mystarrocks”23f0c452017-12-11 07:11:51 -0800375 Above test for 257 pkts
376
Dave Wallaced1706812021-08-12 18:36:02 -0400377 #. ipsec esp 4o4 tunnel basic test - IPv4 Tunnel mode
378 scenario using HMAC-SHA1-96 integrity algo
“mystarrocks”23f0c452017-12-11 07:11:51 -0800379
Dave Wallaced1706812021-08-12 18:36:02 -0400380 #. ipsec esp 4o4 tunnel burst test
381 Above test for 257 pkts
“mystarrocks”23f0c452017-12-11 07:11:51 -0800382
Dave Wallaced1706812021-08-12 18:36:02 -0400383 TRANSPORT MODE::
“mystarrocks”23f0c452017-12-11 07:11:51 -0800384
Dave Wallaced1706812021-08-12 18:36:02 -0400385 --- encrypt ---
386 |pg2| <-------> |VPP|
387 --- decrypt ---
“mystarrocks”23f0c452017-12-11 07:11:51 -0800388
Dave Wallaced1706812021-08-12 18:36:02 -0400389 TUNNEL MODE::
390
391 --- encrypt --- plain ---
392 |pg0| <------- |VPP| <------ |pg1|
393 --- --- ---
394
395 --- decrypt --- plain ---
396 |pg0| -------> |VPP| ------> |pg1|
397 --- --- ---
398
“mystarrocks”23f0c452017-12-11 07:11:51 -0800399 """
400
Paul Vinciguerra7f9b7f92019-03-12 19:23:27 -0700401 @classmethod
402 def setUpClass(cls):
403 super(TemplateIpsecEsp, cls).setUpClass()
404
405 @classmethod
406 def tearDownClass(cls):
407 super(TemplateIpsecEsp, cls).tearDownClass()
408
Neale Ranns8e4a89b2019-01-23 08:16:17 -0800409 def setUp(self):
410 super(TemplateIpsecEsp, self).setUp()
Neale Ranns5b891102021-06-28 13:31:28 +0000411 self.config_anti_replay(self.params.values())
Neale Ranns4f33c802019-04-10 12:39:10 +0000412 self.config_network(self.params.values())
Klement Sekera611864f2018-09-26 11:19:00 +0200413
Neale Ranns8e4a89b2019-01-23 08:16:17 -0800414 def tearDown(self):
Neale Ranns4f33c802019-04-10 12:39:10 +0000415 self.unconfig_network()
Neale Ranns8e4a89b2019-01-23 08:16:17 -0800416 super(TemplateIpsecEsp, self).tearDown()
Neale Ranns8e4a89b2019-01-23 08:16:17 -0800417
Klement Sekera611864f2018-09-26 11:19:00 +0200418
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200419class TestIpsecEsp1(
420 TemplateIpsecEsp, IpsecTra46Tests, IpsecTun46Tests, IpsecTra6ExtTests
421):
422 """Ipsec ESP - TUN & TRA tests"""
Neale Rannsb1fd80f2020-05-12 13:33:56 +0000423
424 @classmethod
425 def setUpClass(cls):
426 super(TestIpsecEsp1, cls).setUpClass()
427
428 @classmethod
429 def tearDownClass(cls):
430 super(TestIpsecEsp1, cls).tearDownClass()
431
432 def setUp(self):
433 super(TestIpsecEsp1, self).setUp()
434
435 def tearDown(self):
436 super(TestIpsecEsp1, self).tearDown()
437
438 def test_tun_46(self):
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200439 """ipsec 4o6 tunnel"""
Neale Rannsb1fd80f2020-05-12 13:33:56 +0000440 # add an SPD entry to direct 2.2.2.2 to the v6 tunnel SA
441 p6 = self.ipv6_params
442 p4 = self.ipv4_params
443
444 p6.remote_tun_if_host4 = "2.2.2.2"
445 e = VppEnum.vl_api_ipsec_spd_action_t
446
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200447 VppIpsecSpdEntry(
448 self,
449 self.tun_spd,
Arthur de Kerhor0df06b62022-11-16 18:45:24 +0100450 p6.vpp_tun_sa_id,
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200451 self.pg1.remote_addr[p4.addr_type],
452 self.pg1.remote_addr[p4.addr_type],
453 p6.remote_tun_if_host4,
454 p6.remote_tun_if_host4,
Piotr Bronowski815c6a42022-06-09 09:09:28 +0000455 socket.IPPROTO_RAW,
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200456 priority=10,
457 policy=e.IPSEC_API_SPD_ACTION_PROTECT,
458 is_outbound=1,
459 ).add_vpp_config()
460 VppIpRoute(
461 self,
462 p6.remote_tun_if_host4,
463 p4.addr_len,
464 [VppRoutePath(self.tun_if.remote_addr[p4.addr_type], 0xFFFFFFFF)],
465 ).add_vpp_config()
Neale Rannsb1fd80f2020-05-12 13:33:56 +0000466
467 old_name = self.tun6_encrypt_node_name
468 self.tun6_encrypt_node_name = "esp4-encrypt"
469
470 self.verify_tun_46(p6, count=63)
471 self.tun6_encrypt_node_name = old_name
472
473 def test_tun_64(self):
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200474 """ipsec 6o4 tunnel"""
Neale Rannsb1fd80f2020-05-12 13:33:56 +0000475 # add an SPD entry to direct 4444::4 to the v4 tunnel SA
476 p6 = self.ipv6_params
477 p4 = self.ipv4_params
478
479 p4.remote_tun_if_host6 = "4444::4"
480 e = VppEnum.vl_api_ipsec_spd_action_t
481
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200482 VppIpsecSpdEntry(
483 self,
484 self.tun_spd,
Arthur de Kerhor0df06b62022-11-16 18:45:24 +0100485 p4.vpp_tun_sa_id,
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200486 self.pg1.remote_addr[p6.addr_type],
487 self.pg1.remote_addr[p6.addr_type],
488 p4.remote_tun_if_host6,
489 p4.remote_tun_if_host6,
Piotr Bronowski815c6a42022-06-09 09:09:28 +0000490 socket.IPPROTO_RAW,
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200491 priority=10,
492 policy=e.IPSEC_API_SPD_ACTION_PROTECT,
493 is_outbound=1,
494 ).add_vpp_config()
Neale Rannsb1fd80f2020-05-12 13:33:56 +0000495 d = DpoProto.DPO_PROTO_IP6
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200496 VppIpRoute(
497 self,
498 p4.remote_tun_if_host6,
499 p6.addr_len,
500 [VppRoutePath(self.tun_if.remote_addr[p6.addr_type], 0xFFFFFFFF, proto=d)],
501 ).add_vpp_config()
Neale Rannsb1fd80f2020-05-12 13:33:56 +0000502
503 old_name = self.tun4_encrypt_node_name
504 self.tun4_encrypt_node_name = "esp6-encrypt"
505 self.verify_tun_64(p4, count=63)
506 self.tun4_encrypt_node_name = old_name
“mystarrocks”23f0c452017-12-11 07:11:51 -0800507
“mystarrocks”23f0c452017-12-11 07:11:51 -0800508
Neale Ranns041add72020-01-02 04:06:10 +0000509class TestIpsecEspTun(TemplateIpsecEsp, IpsecTun46Tests):
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200510 """Ipsec ESP - TUN encap tests"""
Neale Ranns041add72020-01-02 04:06:10 +0000511
512 def setUp(self):
513 self.ipv4_params = IPsecIPv4Params()
514 self.ipv6_params = IPsecIPv6Params()
515
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200516 c = (
517 VppEnum.vl_api_tunnel_encap_decap_flags_t.TUNNEL_API_ENCAP_DECAP_FLAG_ENCAP_COPY_DSCP
518 )
519 c1 = c | (
520 VppEnum.vl_api_tunnel_encap_decap_flags_t.TUNNEL_API_ENCAP_DECAP_FLAG_ENCAP_COPY_ECN
521 )
Neale Ranns041add72020-01-02 04:06:10 +0000522
523 self.ipv4_params.tun_flags = c
524 self.ipv6_params.tun_flags = c1
525
526 super(TestIpsecEspTun, self).setUp()
527
528 def gen_pkts(self, sw_intf, src, dst, count=1, payload_size=54):
529 # set the DSCP + ECN - flags are set to copy only DSCP
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200530 return [
531 Ether(src=sw_intf.remote_mac, dst=sw_intf.local_mac)
532 / IP(src=src, dst=dst, tos=5)
533 / UDP(sport=4444, dport=4444)
534 / Raw(b"X" * payload_size)
535 for i in range(count)
536 ]
Neale Ranns041add72020-01-02 04:06:10 +0000537
Neale Ranns9ec846c2021-02-09 14:04:02 +0000538 def gen_pkts6(self, p, sw_intf, src, dst, count=1, payload_size=54):
Neale Ranns041add72020-01-02 04:06:10 +0000539 # set the DSCP + ECN - flags are set to copy both
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200540 return [
541 Ether(src=sw_intf.remote_mac, dst=sw_intf.local_mac)
542 / IPv6(src=src, dst=dst, tc=5)
543 / UDP(sport=4444, dport=4444)
544 / Raw(b"X" * payload_size)
545 for i in range(count)
546 ]
Neale Ranns041add72020-01-02 04:06:10 +0000547
548 def verify_encrypted(self, p, sa, rxs):
549 # just check that only the DSCP is copied
550 for rx in rxs:
551 self.assertEqual(rx[IP].tos, 4)
552
553 def verify_encrypted6(self, p, sa, rxs):
554 # just check that the DSCP & ECN are copied
555 for rx in rxs:
556 self.assertEqual(rx[IPv6].tc, 5)
557
558
559class TestIpsecEspTun2(TemplateIpsecEsp, IpsecTun46Tests):
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200560 """Ipsec ESP - TUN DSCP tests"""
Neale Ranns041add72020-01-02 04:06:10 +0000561
562 def setUp(self):
563 self.ipv4_params = IPsecIPv4Params()
564 self.ipv6_params = IPsecIPv6Params()
565
566 self.ipv4_params.dscp = VppEnum.vl_api_ip_dscp_t.IP_API_DSCP_EF
567 self.ipv6_params.dscp = VppEnum.vl_api_ip_dscp_t.IP_API_DSCP_AF11
568
569 super(TestIpsecEspTun2, self).setUp()
570
571 def gen_pkts(self, sw_intf, src, dst, count=1, payload_size=54):
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200572 return [
573 Ether(src=sw_intf.remote_mac, dst=sw_intf.local_mac)
574 / IP(src=src, dst=dst)
575 / UDP(sport=4444, dport=4444)
576 / Raw(b"X" * payload_size)
577 for i in range(count)
578 ]
Neale Ranns041add72020-01-02 04:06:10 +0000579
Neale Ranns9ec846c2021-02-09 14:04:02 +0000580 def gen_pkts6(self, p, sw_intf, src, dst, count=1, payload_size=54):
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200581 return [
582 Ether(src=sw_intf.remote_mac, dst=sw_intf.local_mac)
583 / IPv6(src=src, dst=dst)
584 / UDP(sport=4444, dport=4444)
585 / Raw(b"X" * payload_size)
586 for i in range(count)
587 ]
Neale Ranns041add72020-01-02 04:06:10 +0000588
589 def verify_encrypted(self, p, sa, rxs):
Neale Ranns9ec846c2021-02-09 14:04:02 +0000590 # just check that only the DSCP is set
Neale Ranns041add72020-01-02 04:06:10 +0000591 for rx in rxs:
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200592 self.assertEqual(rx[IP].tos, VppEnum.vl_api_ip_dscp_t.IP_API_DSCP_EF << 2)
Neale Ranns041add72020-01-02 04:06:10 +0000593
594 def verify_encrypted6(self, p, sa, rxs):
Neale Ranns9ec846c2021-02-09 14:04:02 +0000595 # just check that the DSCP is set
Neale Ranns041add72020-01-02 04:06:10 +0000596 for rx in rxs:
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200597 self.assertEqual(
598 rx[IPv6].tc, VppEnum.vl_api_ip_dscp_t.IP_API_DSCP_AF11 << 2
599 )
Neale Ranns041add72020-01-02 04:06:10 +0000600
601
Klement Sekera31da2e32018-06-24 22:49:55 +0200602class TestIpsecEsp2(TemplateIpsecEsp, IpsecTcpTests):
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200603 """Ipsec ESP - TCP tests"""
604
Klement Sekera31da2e32018-06-24 22:49:55 +0200605 pass
“mystarrocks”23f0c452017-12-11 07:11:51 -0800606
607
Neale Rannsfc811342021-02-26 10:35:33 +0000608class TestIpsecEspAsync(TemplateIpsecEsp):
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200609 """Ipsec ESP - Aysnc tests"""
Neale Rannsfc811342021-02-26 10:35:33 +0000610
Klement Sekera8d815022021-03-15 16:58:10 +0100611 vpp_worker_count = 2
Neale Rannsfc811342021-02-26 10:35:33 +0000612
613 def setUp(self):
614 super(TestIpsecEspAsync, self).setUp()
615
Neale Rannsf16e9a52021-02-25 19:09:24 +0000616 self.p_sync = IPsecIPv4Params()
Neale Rannsfc811342021-02-26 10:35:33 +0000617
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200618 self.p_sync.crypt_algo_vpp_id = (
619 VppEnum.vl_api_ipsec_crypto_alg_t.IPSEC_API_CRYPTO_ALG_AES_CBC_256
620 )
621 self.p_sync.crypt_algo = "AES-CBC" # scapy name
622 self.p_sync.crypt_key = b"JPjyOWBeVEQiMe7hJPjyOWBeVEQiMe7h"
Neale Rannsfc811342021-02-26 10:35:33 +0000623
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200624 self.p_sync.scapy_tun_sa_id += 0xF0000
625 self.p_sync.scapy_tun_spi += 0xF0000
626 self.p_sync.vpp_tun_sa_id += 0xF0000
627 self.p_sync.vpp_tun_spi += 0xF0000
Neale Rannsf16e9a52021-02-25 19:09:24 +0000628 self.p_sync.remote_tun_if_host = "2.2.2.2"
Neale Rannsfc811342021-02-26 10:35:33 +0000629 e = VppEnum.vl_api_ipsec_spd_action_t
630
Neale Rannsf16e9a52021-02-25 19:09:24 +0000631 self.p_sync.sa = VppIpsecSA(
Neale Rannsfc811342021-02-26 10:35:33 +0000632 self,
Neale Rannsf16e9a52021-02-25 19:09:24 +0000633 self.p_sync.vpp_tun_sa_id,
634 self.p_sync.vpp_tun_spi,
635 self.p_sync.auth_algo_vpp_id,
636 self.p_sync.auth_key,
637 self.p_sync.crypt_algo_vpp_id,
638 self.p_sync.crypt_key,
Neale Rannsfc811342021-02-26 10:35:33 +0000639 self.vpp_esp_protocol,
Neale Rannsf16e9a52021-02-25 19:09:24 +0000640 self.tun_if.local_addr[self.p_sync.addr_type],
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200641 self.tun_if.remote_addr[self.p_sync.addr_type],
642 ).add_vpp_config()
Neale Rannsf16e9a52021-02-25 19:09:24 +0000643 self.p_sync.spd = VppIpsecSpdEntry(
Neale Rannsfc811342021-02-26 10:35:33 +0000644 self,
645 self.tun_spd,
Neale Rannsf16e9a52021-02-25 19:09:24 +0000646 self.p_sync.vpp_tun_sa_id,
647 self.pg1.remote_addr[self.p_sync.addr_type],
648 self.pg1.remote_addr[self.p_sync.addr_type],
649 self.p_sync.remote_tun_if_host,
650 self.p_sync.remote_tun_if_host,
Piotr Bronowski815c6a42022-06-09 09:09:28 +0000651 socket.IPPROTO_RAW,
Neale Rannsfc811342021-02-26 10:35:33 +0000652 priority=1,
653 policy=e.IPSEC_API_SPD_ACTION_PROTECT,
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200654 is_outbound=1,
655 ).add_vpp_config()
656 VppIpRoute(
657 self,
658 self.p_sync.remote_tun_if_host,
659 self.p_sync.addr_len,
660 [VppRoutePath(self.tun_if.remote_addr[self.p_sync.addr_type], 0xFFFFFFFF)],
661 ).add_vpp_config()
Neale Rannsf16e9a52021-02-25 19:09:24 +0000662 config_tun_params(self.p_sync, self.encryption_type, self.tun_if)
663
664 self.p_async = IPsecIPv4Params()
665
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200666 self.p_async.crypt_algo_vpp_id = (
667 VppEnum.vl_api_ipsec_crypto_alg_t.IPSEC_API_CRYPTO_ALG_AES_GCM_256
668 )
669 self.p_async.auth_algo_vpp_id = (
670 VppEnum.vl_api_ipsec_integ_alg_t.IPSEC_API_INTEG_ALG_NONE
671 )
672 self.p_async.crypt_algo = "AES-GCM" # scapy name
673 self.p_async.crypt_key = b"JPjyOWBeVEQiMe7hJPjyOWBeVEQiMe7h"
674 self.p_async.auth_algo = "NULL"
Neale Rannsf16e9a52021-02-25 19:09:24 +0000675
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200676 self.p_async.scapy_tun_sa_id += 0xE0000
677 self.p_async.scapy_tun_spi += 0xE0000
678 self.p_async.vpp_tun_sa_id += 0xE0000
679 self.p_async.vpp_tun_spi += 0xE0000
Neale Rannsf16e9a52021-02-25 19:09:24 +0000680 self.p_async.remote_tun_if_host = "2.2.2.3"
681
682 iflags = VppEnum.vl_api_ipsec_sad_flags_t
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200683 self.p_async.flags = (
684 iflags.IPSEC_API_SAD_FLAG_USE_ESN
685 | iflags.IPSEC_API_SAD_FLAG_USE_ANTI_REPLAY
686 | iflags.IPSEC_API_SAD_FLAG_ASYNC
687 )
Neale Rannsf16e9a52021-02-25 19:09:24 +0000688
689 self.p_async.sa = VppIpsecSA(
690 self,
691 self.p_async.vpp_tun_sa_id,
692 self.p_async.vpp_tun_spi,
693 self.p_async.auth_algo_vpp_id,
694 self.p_async.auth_key,
695 self.p_async.crypt_algo_vpp_id,
696 self.p_async.crypt_key,
697 self.vpp_esp_protocol,
698 self.tun_if.local_addr[self.p_async.addr_type],
699 self.tun_if.remote_addr[self.p_async.addr_type],
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200700 flags=self.p_async.flags,
701 ).add_vpp_config()
Neale Rannsf16e9a52021-02-25 19:09:24 +0000702 self.p_async.spd = VppIpsecSpdEntry(
703 self,
704 self.tun_spd,
705 self.p_async.vpp_tun_sa_id,
706 self.pg1.remote_addr[self.p_async.addr_type],
707 self.pg1.remote_addr[self.p_async.addr_type],
708 self.p_async.remote_tun_if_host,
709 self.p_async.remote_tun_if_host,
Piotr Bronowski815c6a42022-06-09 09:09:28 +0000710 socket.IPPROTO_RAW,
Neale Rannsf16e9a52021-02-25 19:09:24 +0000711 priority=2,
712 policy=e.IPSEC_API_SPD_ACTION_PROTECT,
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200713 is_outbound=1,
714 ).add_vpp_config()
715 VppIpRoute(
716 self,
717 self.p_async.remote_tun_if_host,
718 self.p_async.addr_len,
719 [VppRoutePath(self.tun_if.remote_addr[self.p_async.addr_type], 0xFFFFFFFF)],
720 ).add_vpp_config()
Neale Rannsf16e9a52021-02-25 19:09:24 +0000721 config_tun_params(self.p_async, self.encryption_type, self.tun_if)
Neale Rannsfc811342021-02-26 10:35:33 +0000722
723 def test_dual_stream(self):
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200724 """Alternating SAs"""
Neale Rannsf16e9a52021-02-25 19:09:24 +0000725 p = self.params[self.p_sync.addr_type]
726 self.vapi.ipsec_set_async_mode(async_enable=True)
Neale Rannsfc811342021-02-26 10:35:33 +0000727
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200728 pkts = [
729 (
730 Ether(src=self.pg1.remote_mac, dst=self.pg1.local_mac)
731 / IP(src=self.pg1.remote_ip4, dst=self.p_sync.remote_tun_if_host)
732 / UDP(sport=4444, dport=4444)
733 / Raw(b"0x0" * 200)
734 ),
735 (
736 Ether(src=self.pg1.remote_mac, dst=self.pg1.local_mac)
737 / IP(src=self.pg1.remote_ip4, dst=p.remote_tun_if_host)
738 / UDP(sport=4444, dport=4444)
739 / Raw(b"0x0" * 200)
740 ),
741 ]
Neale Rannsfc811342021-02-26 10:35:33 +0000742 pkts *= 1023
743
744 rxs = self.send_and_expect(self.pg1, pkts, self.pg0)
745
746 self.assertEqual(len(rxs), len(pkts))
747
748 for rx in rxs:
Arthur de Kerhor0df06b62022-11-16 18:45:24 +0100749 if rx[ESP].spi == p.vpp_tun_spi:
Neale Rannsfc811342021-02-26 10:35:33 +0000750 decrypted = p.vpp_tun_sa.decrypt(rx[IP])
Neale Rannsf16e9a52021-02-25 19:09:24 +0000751 elif rx[ESP].spi == self.p_sync.vpp_tun_spi:
Arthur de Kerhor0df06b62022-11-16 18:45:24 +0100752 decrypted = self.p_sync.vpp_tun_sa.decrypt(rx[IP])
Neale Rannsfc811342021-02-26 10:35:33 +0000753 else:
754 rx.show()
755 self.assertTrue(False)
756
Neale Rannsf16e9a52021-02-25 19:09:24 +0000757 self.p_sync.spd.remove_vpp_config()
758 self.p_sync.sa.remove_vpp_config()
759 self.p_async.spd.remove_vpp_config()
760 self.p_async.sa.remove_vpp_config()
761 self.vapi.ipsec_set_async_mode(async_enable=False)
762
763 def test_sync_async_noop_stream(self):
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200764 """Alternating SAs sync/async/noop"""
Neale Rannsf16e9a52021-02-25 19:09:24 +0000765 p = self.params[self.p_sync.addr_type]
766
767 # first pin the default/noop SA to worker 0
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200768 pkts = [
769 (
770 Ether(src=self.pg1.remote_mac, dst=self.pg1.local_mac)
771 / IP(src=self.pg1.remote_ip4, dst=p.remote_tun_if_host)
772 / UDP(sport=4444, dport=4444)
773 / Raw(b"0x0" * 200)
774 )
775 ]
Neale Rannsf16e9a52021-02-25 19:09:24 +0000776 rxs = self.send_and_expect(self.pg1, pkts, self.pg0, worker=0)
777
778 self.logger.info(self.vapi.cli("sh ipsec sa"))
779 self.logger.info(self.vapi.cli("sh crypto async status"))
780
781 # then use all the other SAs on worker 1.
782 # some will handoff, other take the sync and async paths
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200783 pkts = [
784 (
785 Ether(src=self.pg1.remote_mac, dst=self.pg1.local_mac)
786 / IP(src=self.pg1.remote_ip4, dst=self.p_sync.remote_tun_if_host)
787 / UDP(sport=4444, dport=4444)
788 / Raw(b"0x0" * 200)
789 ),
790 (
791 Ether(src=self.pg1.remote_mac, dst=self.pg1.local_mac)
792 / IP(src=self.pg1.remote_ip4, dst=p.remote_tun_if_host)
793 / UDP(sport=4444, dport=4444)
794 / Raw(b"0x0" * 200)
795 ),
796 (
797 Ether(src=self.pg1.remote_mac, dst=self.pg1.local_mac)
798 / IP(src=self.pg1.remote_ip4, dst=self.p_async.remote_tun_if_host)
799 / UDP(sport=4444, dport=4444)
800 / Raw(b"0x0" * 200)
801 ),
802 ]
Neale Rannsf16e9a52021-02-25 19:09:24 +0000803 pkts *= 1023
804
805 rxs = self.send_and_expect(self.pg1, pkts, self.pg0, worker=1)
806
807 self.assertEqual(len(rxs), len(pkts))
808
809 for rx in rxs:
Arthur de Kerhor0df06b62022-11-16 18:45:24 +0100810 if rx[ESP].spi == p.vpp_tun_spi:
Neale Rannsf16e9a52021-02-25 19:09:24 +0000811 decrypted = p.vpp_tun_sa.decrypt(rx[IP])
812 elif rx[ESP].spi == self.p_sync.vpp_tun_spi:
Arthur de Kerhor0df06b62022-11-16 18:45:24 +0100813 decrypted = self.p_sync.vpp_tun_sa.decrypt(rx[IP])
Neale Rannsf16e9a52021-02-25 19:09:24 +0000814 elif rx[ESP].spi == self.p_async.vpp_tun_spi:
Arthur de Kerhor0df06b62022-11-16 18:45:24 +0100815 decrypted = self.p_async.vpp_tun_sa.decrypt(rx[IP])
Neale Rannsf16e9a52021-02-25 19:09:24 +0000816 else:
817 rx.show()
818 self.assertTrue(False)
819
820 self.p_sync.spd.remove_vpp_config()
821 self.p_sync.sa.remove_vpp_config()
822 self.p_async.spd.remove_vpp_config()
823 self.p_async.sa.remove_vpp_config()
824
Neale Rannsfc811342021-02-26 10:35:33 +0000825
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200826class TestIpsecEspHandoff(
827 TemplateIpsecEsp, IpsecTun6HandoffTests, IpsecTun4HandoffTests
828):
829 """Ipsec ESP - handoff tests"""
830
Neale Ranns4a56f4e2019-12-23 04:10:25 +0000831 pass
832
833
Neale Ranns4f33c802019-04-10 12:39:10 +0000834class TemplateIpsecEspUdp(ConfigIpsecESP):
Neale Ranns53f526b2019-02-25 14:32:02 +0000835 """
836 UDP encapped ESP
837 """
Paul Vinciguerra7f9b7f92019-03-12 19:23:27 -0700838
839 @classmethod
840 def setUpClass(cls):
841 super(TemplateIpsecEspUdp, cls).setUpClass()
842
843 @classmethod
844 def tearDownClass(cls):
845 super(TemplateIpsecEspUdp, cls).tearDownClass()
846
Neale Ranns53f526b2019-02-25 14:32:02 +0000847 def setUp(self):
848 super(TemplateIpsecEspUdp, self).setUp()
Neale Ranns4f33c802019-04-10 12:39:10 +0000849 self.net_objs = []
Neale Ranns53f526b2019-02-25 14:32:02 +0000850 self.tun_if = self.pg0
851 self.tra_if = self.pg2
852 self.logger.info(self.vapi.ppcli("show int addr"))
853
854 p = self.ipv4_params
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200855 p.flags = (
856 VppEnum.vl_api_ipsec_sad_flags_t.IPSEC_API_SAD_FLAG_UDP_ENCAP
857 | VppEnum.vl_api_ipsec_sad_flags_t.IPSEC_API_SAD_FLAG_USE_ANTI_REPLAY
858 )
Neale Ranns53f526b2019-02-25 14:32:02 +0000859 p.nat_header = UDP(sport=5454, dport=4500)
860
861 self.tra_spd = VppIpsecSpd(self, self.tra_spd_id)
862 self.tra_spd.add_vpp_config()
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200863 VppIpsecSpdItfBinding(self, self.tra_spd, self.tra_if).add_vpp_config()
Neale Ranns53f526b2019-02-25 14:32:02 +0000864
Neale Ranns4f33c802019-04-10 12:39:10 +0000865 self.config_esp_tra(p)
Neale Ranns2ac885c2019-03-20 18:24:43 +0000866 config_tra_params(p, self.encryption_type)
Neale Ranns53f526b2019-02-25 14:32:02 +0000867
868 self.tun_spd = VppIpsecSpd(self, self.tun_spd_id)
869 self.tun_spd.add_vpp_config()
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200870 VppIpsecSpdItfBinding(self, self.tun_spd, self.tun_if).add_vpp_config()
Neale Ranns53f526b2019-02-25 14:32:02 +0000871
Neale Ranns4f33c802019-04-10 12:39:10 +0000872 self.config_esp_tun(p)
Neale Ranns92e93842019-04-08 07:36:50 +0000873 self.logger.info(self.vapi.ppcli("show ipsec all"))
Neale Ranns53f526b2019-02-25 14:32:02 +0000874
875 d = DpoProto.DPO_PROTO_IP4
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200876 VppIpRoute(
877 self,
878 p.remote_tun_if_host,
879 p.addr_len,
880 [VppRoutePath(self.tun_if.remote_addr[p.addr_type], 0xFFFFFFFF, proto=d)],
881 ).add_vpp_config()
Neale Ranns53f526b2019-02-25 14:32:02 +0000882
883 def tearDown(self):
884 super(TemplateIpsecEspUdp, self).tearDown()
Paul Vinciguerra90cf21b2019-03-13 09:23:05 -0700885
886 def show_commands_at_teardown(self):
887 self.logger.info(self.vapi.cli("show hardware"))
Neale Ranns53f526b2019-02-25 14:32:02 +0000888
889
Neale Ranns49e7ef62019-04-10 17:24:29 +0000890class TestIpsecEspUdp(TemplateIpsecEspUdp, IpsecTra4Tests):
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200891 """Ipsec NAT-T ESP UDP tests"""
892
Neale Ranns53f526b2019-02-25 14:32:02 +0000893 pass
894
895
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200896class MyParameters:
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +0000897 def __init__(self):
Neale Ranns5b891102021-06-28 13:31:28 +0000898 saf = VppEnum.vl_api_ipsec_sad_flags_t
899 flag_esn = saf.IPSEC_API_SAD_FLAG_USE_ESN
900 flag_ar = saf.IPSEC_API_SAD_FLAG_USE_ANTI_REPLAY
901 self.flags = [0, flag_esn, flag_ar]
Neale Ranns4f33c802019-04-10 12:39:10 +0000902 # foreach crypto algorithm
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +0000903 self.algos = {
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200904 "AES-GCM-128/NONE": {
905 "vpp-crypto": (
906 VppEnum.vl_api_ipsec_crypto_alg_t.IPSEC_API_CRYPTO_ALG_AES_GCM_128
907 ),
908 "vpp-integ": (
909 VppEnum.vl_api_ipsec_integ_alg_t.IPSEC_API_INTEG_ALG_NONE
910 ),
911 "scapy-crypto": "AES-GCM",
912 "scapy-integ": "NULL",
913 "key": b"JPjyOWBeVEQiMe7h",
914 "salt": 0,
915 },
916 "AES-GCM-192/NONE": {
917 "vpp-crypto": (
918 VppEnum.vl_api_ipsec_crypto_alg_t.IPSEC_API_CRYPTO_ALG_AES_GCM_192
919 ),
920 "vpp-integ": (
921 VppEnum.vl_api_ipsec_integ_alg_t.IPSEC_API_INTEG_ALG_NONE
922 ),
923 "scapy-crypto": "AES-GCM",
924 "scapy-integ": "NULL",
925 "key": b"JPjyOWBeVEQiMe7h01234567",
926 "salt": 1010,
927 },
928 "AES-GCM-256/NONE": {
929 "vpp-crypto": (
930 VppEnum.vl_api_ipsec_crypto_alg_t.IPSEC_API_CRYPTO_ALG_AES_GCM_256
931 ),
932 "vpp-integ": (
933 VppEnum.vl_api_ipsec_integ_alg_t.IPSEC_API_INTEG_ALG_NONE
934 ),
935 "scapy-crypto": "AES-GCM",
936 "scapy-integ": "NULL",
937 "key": b"JPjyOWBeVEQiMe7h0123456787654321",
938 "salt": 2020,
939 },
940 "AES-CBC-128/MD5-96": {
941 "vpp-crypto": (
942 VppEnum.vl_api_ipsec_crypto_alg_t.IPSEC_API_CRYPTO_ALG_AES_CBC_128
943 ),
944 "vpp-integ": (
945 VppEnum.vl_api_ipsec_integ_alg_t.IPSEC_API_INTEG_ALG_MD5_96
946 ),
947 "scapy-crypto": "AES-CBC",
948 "scapy-integ": "HMAC-MD5-96",
949 "salt": 0,
950 "key": b"JPjyOWBeVEQiMe7h",
951 },
952 "AES-CBC-192/SHA1-96": {
953 "vpp-crypto": (
954 VppEnum.vl_api_ipsec_crypto_alg_t.IPSEC_API_CRYPTO_ALG_AES_CBC_192
955 ),
956 "vpp-integ": (
957 VppEnum.vl_api_ipsec_integ_alg_t.IPSEC_API_INTEG_ALG_SHA1_96
958 ),
959 "scapy-crypto": "AES-CBC",
960 "scapy-integ": "HMAC-SHA1-96",
961 "salt": 0,
962 "key": b"JPjyOWBeVEQiMe7hJPjyOWBe",
963 },
964 "AES-CBC-256/SHA1-96": {
965 "vpp-crypto": (
966 VppEnum.vl_api_ipsec_crypto_alg_t.IPSEC_API_CRYPTO_ALG_AES_CBC_256
967 ),
968 "vpp-integ": (
969 VppEnum.vl_api_ipsec_integ_alg_t.IPSEC_API_INTEG_ALG_SHA1_96
970 ),
971 "scapy-crypto": "AES-CBC",
972 "scapy-integ": "HMAC-SHA1-96",
973 "salt": 0,
974 "key": b"JPjyOWBeVEQiMe7hJPjyOWBeVEQiMe7h",
975 },
976 "3DES-CBC/SHA1-96": {
977 "vpp-crypto": (
978 VppEnum.vl_api_ipsec_crypto_alg_t.IPSEC_API_CRYPTO_ALG_3DES_CBC
979 ),
980 "vpp-integ": (
981 VppEnum.vl_api_ipsec_integ_alg_t.IPSEC_API_INTEG_ALG_SHA1_96
982 ),
983 "scapy-crypto": "3DES",
984 "scapy-integ": "HMAC-SHA1-96",
985 "salt": 0,
986 "key": b"JPjyOWBeVEQiMe7h00112233",
987 },
988 "NONE/SHA1-96": {
989 "vpp-crypto": (
990 VppEnum.vl_api_ipsec_crypto_alg_t.IPSEC_API_CRYPTO_ALG_NONE
991 ),
992 "vpp-integ": (
993 VppEnum.vl_api_ipsec_integ_alg_t.IPSEC_API_INTEG_ALG_SHA1_96
994 ),
995 "scapy-crypto": "NULL",
996 "scapy-integ": "HMAC-SHA1-96",
997 "salt": 0,
998 "key": b"JPjyOWBeVEQiMe7h00112233",
999 },
1000 "AES-CTR-128/SHA1-96": {
1001 "vpp-crypto": (
1002 VppEnum.vl_api_ipsec_crypto_alg_t.IPSEC_API_CRYPTO_ALG_AES_CTR_128
1003 ),
1004 "vpp-integ": (
1005 VppEnum.vl_api_ipsec_integ_alg_t.IPSEC_API_INTEG_ALG_SHA1_96
1006 ),
1007 "scapy-crypto": "AES-CTR",
1008 "scapy-integ": "HMAC-SHA1-96",
1009 "salt": 0,
1010 "key": b"JPjyOWBeVEQiMe7h",
1011 },
1012 "AES-CTR-192/SHA1-96": {
1013 "vpp-crypto": (
1014 VppEnum.vl_api_ipsec_crypto_alg_t.IPSEC_API_CRYPTO_ALG_AES_CTR_192
1015 ),
1016 "vpp-integ": (
1017 VppEnum.vl_api_ipsec_integ_alg_t.IPSEC_API_INTEG_ALG_SHA1_96
1018 ),
1019 "scapy-crypto": "AES-CTR",
1020 "scapy-integ": "HMAC-SHA1-96",
1021 "salt": 1010,
1022 "key": b"JPjyOWBeVEQiMe7hJPjyOWBe",
1023 },
1024 "AES-CTR-256/SHA1-96": {
1025 "vpp-crypto": (
1026 VppEnum.vl_api_ipsec_crypto_alg_t.IPSEC_API_CRYPTO_ALG_AES_CTR_256
1027 ),
1028 "vpp-integ": (
1029 VppEnum.vl_api_ipsec_integ_alg_t.IPSEC_API_INTEG_ALG_SHA1_96
1030 ),
1031 "scapy-crypto": "AES-CTR",
1032 "scapy-integ": "HMAC-SHA1-96",
1033 "salt": 2020,
1034 "key": b"JPjyOWBeVEQiMe7hJPjyOWBeVEQiMe7h",
1035 },
1036 }
Neale Ranns4f33c802019-04-10 12:39:10 +00001037
Neale Ranns4f33c802019-04-10 12:39:10 +00001038
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001039class RunTestIpsecEspAll(ConfigIpsecESP, IpsecTra4, IpsecTra6, IpsecTun4, IpsecTun6):
1040 """Ipsec ESP all Algos"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001041
Neale Ranns8c609af2021-02-25 10:05:32 +00001042 @classmethod
1043 def setUpConstants(cls):
1044 test_args = str.split(cls.__doc__, " ")
1045 engine = test_args[0]
1046 if engine == "async":
Klement Sekera8d815022021-03-15 16:58:10 +01001047 cls.vpp_worker_count = 2
Neale Ranns8c609af2021-02-25 10:05:32 +00001048 super(RunTestIpsecEspAll, cls).setUpConstants()
1049
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001050 def setUp(self):
1051 super(RunTestIpsecEspAll, self).setUp()
1052 test_args = str.split(self.__doc__, " ")
1053
1054 params = MyParameters()
1055 self.engine = test_args[0]
1056 self.flag = params.flags[0]
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001057 if test_args[1] == "ESNon":
Neale Ranns5b891102021-06-28 13:31:28 +00001058 self.flag |= params.flags[1]
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001059 if test_args[2] == "ARon":
Neale Ranns5b891102021-06-28 13:31:28 +00001060 self.flag |= params.flags[2]
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001061
Neale Ranns5b891102021-06-28 13:31:28 +00001062 self.algo = params.algos[test_args[3]]
Neale Ranns8c609af2021-02-25 10:05:32 +00001063 self.async_mode = False
1064 if self.engine == "async":
1065 self.async_mode = True
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001066
1067 def tearDown(self):
1068 super(RunTestIpsecEspAll, self).tearDown()
1069
1070 def run_test(self):
1071 self.run_a_test(self.engine, self.flag, self.algo)
1072
Filip Tehlarefcad1a2020-02-04 09:36:04 +00001073 def run_a_test(self, engine, flag, algo, payload_size=None):
Neale Ranns8c609af2021-02-25 10:05:32 +00001074 if self.async_mode:
1075 self.vapi.cli("set ipsec async mode on")
1076 else:
1077 self.vapi.cli("set crypto handler all %s" % engine)
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001078
Neale Ranns8c609af2021-02-25 10:05:32 +00001079 self.logger.info(self.vapi.cli("show crypto async status"))
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001080 self.ipv4_params = IPsecIPv4Params()
1081 self.ipv6_params = IPsecIPv6Params()
1082
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001083 self.params = {
1084 self.ipv4_params.addr_type: self.ipv4_params,
1085 self.ipv6_params.addr_type: self.ipv6_params,
1086 }
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001087
1088 for _, p in self.params.items():
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001089 p.auth_algo_vpp_id = algo["vpp-integ"]
1090 p.crypt_algo_vpp_id = algo["vpp-crypto"]
1091 p.crypt_algo = algo["scapy-crypto"]
1092 p.auth_algo = algo["scapy-integ"]
1093 p.crypt_key = algo["key"]
1094 p.salt = algo["salt"]
Neale Ranns5b891102021-06-28 13:31:28 +00001095 p.flags = flag
Neale Ranns9ec846c2021-02-09 14:04:02 +00001096 p.outer_flow_label = 243224
Neale Ranns8c609af2021-02-25 10:05:32 +00001097 p.async_mode = self.async_mode
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001098
1099 self.reporter.send_keep_alive(self)
1100
Neale Ranns4f33c802019-04-10 12:39:10 +00001101 #
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001102 # configure the SPDs. SAs, etc
Neale Ranns4f33c802019-04-10 12:39:10 +00001103 #
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001104 self.config_network(self.params.values())
Neale Ranns4f33c802019-04-10 12:39:10 +00001105
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001106 #
1107 # run some traffic.
1108 # An exhautsive 4o6, 6o4 is not necessary
1109 # for each algo
1110 #
1111 self.verify_tra_basic6(count=NUM_PKTS)
1112 self.verify_tra_basic4(count=NUM_PKTS)
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001113 self.verify_tun_66(self.params[socket.AF_INET6], count=NUM_PKTS)
Christian Hoppsfb7e7ed2019-11-03 07:02:15 -05001114 #
1115 # Use an odd-byte payload size to check for correct padding.
1116 #
1117 # 49 + 2 == 51 which should pad +1 to 52 for 4 byte alignment, +5
1118 # to 56 for 8 byte alignment, and +13 to 64 for 64 byte alignment.
1119 # This should catch bugs where the code is incorrectly over-padding
1120 # for algorithms that don't require it
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001121 psz = 49 - len(IP() / ICMP()) if payload_size is None else payload_size
1122 self.verify_tun_44(
1123 self.params[socket.AF_INET], count=NUM_PKTS, payload_size=psz
1124 )
Neale Ranns4f33c802019-04-10 12:39:10 +00001125
Filip Tehlarefcad1a2020-02-04 09:36:04 +00001126 LARGE_PKT_SZ = [
Filip Tehlare4e8c6b2020-02-13 07:49:30 +00001127 1970, # results in 2 chained buffers entering decrypt node
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001128 # but leaving as simple buffer due to ICV removal (tra4)
PiotrX Kleskifdca4dd2020-05-05 14:14:22 +02001129 2004, # footer+ICV will be added to 2nd buffer (tun4)
Nathan Skrzypczak2c77ae42021-09-29 15:36:51 +02001130 4010, # ICV ends up splitted across 2 buffers in esp_decrypt
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001131 # for transport4; transport6 takes normal path
Filip Tehlarefcad1a2020-02-04 09:36:04 +00001132 4020, # same as above but tra4 and tra6 are switched
1133 ]
1134 if self.engine in engines_supporting_chain_bufs:
1135 for sz in LARGE_PKT_SZ:
1136 self.verify_tra_basic4(count=NUM_PKTS, payload_size=sz)
1137 self.verify_tra_basic6(count=NUM_PKTS, payload_size=sz)
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001138 self.verify_tun_66(
1139 self.params[socket.AF_INET6], count=NUM_PKTS, payload_size=sz
1140 )
1141 self.verify_tun_44(
1142 self.params[socket.AF_INET], count=NUM_PKTS, payload_size=sz
1143 )
Filip Tehlarefcad1a2020-02-04 09:36:04 +00001144
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001145 #
Neale Ranns5b891102021-06-28 13:31:28 +00001146 # reconfigure the network and SA to run the
1147 # anti replay tests
1148 #
1149 saf = VppEnum.vl_api_ipsec_sad_flags_t
1150 if flag & saf.IPSEC_API_SAD_FLAG_USE_ANTI_REPLAY:
1151 self.unconfig_network()
1152 self.config_network(self.params.values())
1153 self.verify_tra_anti_replay()
1154
1155 self.unconfig_network()
1156 self.config_network(self.params.values())
1157 self.verify_hi_seq_num()
Neale Rannse11203e2021-09-21 12:34:19 +00001158 self.unconfig_network()
1159 self.config_network(self.params.values())
1160 self.verify_tra_lost()
Neale Ranns5b891102021-06-28 13:31:28 +00001161
1162 #
Neale Rannsf16e9a52021-02-25 19:09:24 +00001163 # swap the handlers while SAs are up
1164 #
Neale Ranns5b891102021-06-28 13:31:28 +00001165 self.unconfig_network()
1166 self.config_network(self.params.values())
Neale Rannsf16e9a52021-02-25 19:09:24 +00001167 for e in engines:
1168 if e != engine:
1169 self.vapi.cli("set crypto handler all %s" % e)
1170 self.verify_tra_basic4(count=NUM_PKTS)
1171
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001172 self.unconfig_network()
juraj.linkes11057662019-07-08 10:22:55 +02001173
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001174
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001175#
1176# To generate test classes, do:
1177# grep '# GEN' test_ipsec_esp.py | sed -e 's/# GEN //g' | bash
1178#
Neale Ranns8c609af2021-02-25 10:05:32 +00001179# GEN for ENG in native ipsecmb openssl; do \
Neale Ranns5b891102021-06-28 13:31:28 +00001180# GEN for ESN in ESNon ESNoff; do for AR in ARon ARoff; do \
1181# GEN for ALG in AES-GCM-128/NONE \
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001182# GEN AES-GCM-192/NONE AES-GCM-256/NONE AES-CBC-128/MD5-96 \
1183# GEN AES-CBC-192/SHA1-96 AES-CBC-256/SHA1-96 \
Benoît Ganne490b9272021-01-22 18:03:09 +01001184# GEN 3DES-CBC/SHA1-96 NONE/SHA1-96 \
1185# GEN AES-CTR-128/SHA1-96 AES-CTR-192/SHA1-96 AES-CTR-256/SHA1-96; do \
Neale Ranns5b891102021-06-28 13:31:28 +00001186# GEN echo -en "\n\nclass "
1187# GEN echo -e "Test_${ENG}_${ESN}_${AR}_${ALG}(RunTestIpsecEspAll):" |
1188# GEN sed -e 's/-/_/g' -e 's#/#_#g' ;
1189# GEN echo ' """'$ENG $ESN $AR $ALG IPSec test'"""' ;
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001190# GEN echo " def test_ipsec(self):";
Neale Ranns5b891102021-06-28 13:31:28 +00001191# GEN echo ' """'$ENG $ESN $AR $ALG IPSec test'"""' ;
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001192# GEN echo " self.run_test()";
Neale Ranns5b891102021-06-28 13:31:28 +00001193# GEN done; done; done; done
Neale Ranns8c609af2021-02-25 10:05:32 +00001194#
Neale Ranns5b891102021-06-28 13:31:28 +00001195# GEN for ESN in ESNon ESNoff; do for AR in ARon ARoff; do \
1196# GEN for ALG in \
Neale Ranns8c609af2021-02-25 10:05:32 +00001197# GEN AES-GCM-128/NONE AES-GCM-192/NONE AES-GCM-256/NONE \
1198# GEN AES-CBC-192/SHA1-96 AES-CBC-256/SHA1-96; do \
Neale Ranns5b891102021-06-28 13:31:28 +00001199# GEN echo -en "\n\nclass "
1200# GEN echo -e "Test_async_${ESN}_${AR}_${ALG}(RunTestIpsecEspAll):" |
1201# GEN sed -e 's/-/_/g' -e 's#/#_#g' ;
1202# GEN echo ' """'async $ESN $AR $ALG IPSec test'"""' ;
Neale Ranns8c609af2021-02-25 10:05:32 +00001203# GEN echo " def test_ipsec(self):";
Neale Ranns5b891102021-06-28 13:31:28 +00001204# GEN echo ' """'async $ESN $AR $ALG IPSec test'"""' ;
Neale Ranns8c609af2021-02-25 10:05:32 +00001205# GEN echo " self.run_test()";
Neale Ranns5b891102021-06-28 13:31:28 +00001206# GEN done; done; done;
1207
1208
1209class Test_native_ESNon_ARon_AES_GCM_128_NONE(RunTestIpsecEspAll):
1210 """native ESNon ARon AES-GCM-128/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001211
Neale Ranns5b891102021-06-28 13:31:28 +00001212 def test_ipsec(self):
1213 """native ESNon ARon AES-GCM-128/NONE IPSec test"""
1214 self.run_test()
1215
1216
1217class Test_native_ESNon_ARon_AES_GCM_192_NONE(RunTestIpsecEspAll):
1218 """native ESNon ARon AES-GCM-192/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001219
Neale Ranns5b891102021-06-28 13:31:28 +00001220 def test_ipsec(self):
1221 """native ESNon ARon AES-GCM-192/NONE IPSec test"""
1222 self.run_test()
1223
1224
1225class Test_native_ESNon_ARon_AES_GCM_256_NONE(RunTestIpsecEspAll):
1226 """native ESNon ARon AES-GCM-256/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001227
Neale Ranns5b891102021-06-28 13:31:28 +00001228 def test_ipsec(self):
1229 """native ESNon ARon AES-GCM-256/NONE IPSec test"""
1230 self.run_test()
1231
1232
1233class Test_native_ESNon_ARon_AES_CBC_128_MD5_96(RunTestIpsecEspAll):
1234 """native ESNon ARon AES-CBC-128/MD5-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001235
Neale Ranns5b891102021-06-28 13:31:28 +00001236 def test_ipsec(self):
1237 """native ESNon ARon AES-CBC-128/MD5-96 IPSec test"""
1238 self.run_test()
1239
1240
1241class Test_native_ESNon_ARon_AES_CBC_192_SHA1_96(RunTestIpsecEspAll):
1242 """native ESNon ARon AES-CBC-192/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001243
Neale Ranns5b891102021-06-28 13:31:28 +00001244 def test_ipsec(self):
1245 """native ESNon ARon AES-CBC-192/SHA1-96 IPSec test"""
1246 self.run_test()
1247
1248
1249class Test_native_ESNon_ARon_AES_CBC_256_SHA1_96(RunTestIpsecEspAll):
1250 """native ESNon ARon AES-CBC-256/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001251
Neale Ranns5b891102021-06-28 13:31:28 +00001252 def test_ipsec(self):
1253 """native ESNon ARon AES-CBC-256/SHA1-96 IPSec test"""
1254 self.run_test()
1255
1256
1257class Test_native_ESNon_ARon_3DES_CBC_SHA1_96(RunTestIpsecEspAll):
1258 """native ESNon ARon 3DES-CBC/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001259
Neale Ranns5b891102021-06-28 13:31:28 +00001260 def test_ipsec(self):
1261 """native ESNon ARon 3DES-CBC/SHA1-96 IPSec test"""
1262 self.run_test()
1263
1264
1265class Test_native_ESNon_ARon_NONE_SHA1_96(RunTestIpsecEspAll):
1266 """native ESNon ARon NONE/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001267
Neale Ranns5b891102021-06-28 13:31:28 +00001268 def test_ipsec(self):
1269 """native ESNon ARon NONE/SHA1-96 IPSec test"""
1270 self.run_test()
1271
1272
1273class Test_native_ESNon_ARon_AES_CTR_128_SHA1_96(RunTestIpsecEspAll):
1274 """native ESNon ARon AES-CTR-128/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001275
Neale Ranns5b891102021-06-28 13:31:28 +00001276 def test_ipsec(self):
1277 """native ESNon ARon AES-CTR-128/SHA1-96 IPSec test"""
1278 self.run_test()
1279
1280
1281class Test_native_ESNon_ARon_AES_CTR_192_SHA1_96(RunTestIpsecEspAll):
1282 """native ESNon ARon AES-CTR-192/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001283
Neale Ranns5b891102021-06-28 13:31:28 +00001284 def test_ipsec(self):
1285 """native ESNon ARon AES-CTR-192/SHA1-96 IPSec test"""
1286 self.run_test()
1287
1288
1289class Test_native_ESNon_ARon_AES_CTR_256_SHA1_96(RunTestIpsecEspAll):
1290 """native ESNon ARon AES-CTR-256/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001291
Neale Ranns5b891102021-06-28 13:31:28 +00001292 def test_ipsec(self):
1293 """native ESNon ARon AES-CTR-256/SHA1-96 IPSec test"""
1294 self.run_test()
1295
1296
1297class Test_native_ESNon_ARoff_AES_GCM_128_NONE(RunTestIpsecEspAll):
1298 """native ESNon ARoff AES-GCM-128/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001299
Neale Ranns5b891102021-06-28 13:31:28 +00001300 def test_ipsec(self):
1301 """native ESNon ARoff AES-GCM-128/NONE IPSec test"""
1302 self.run_test()
1303
1304
1305class Test_native_ESNon_ARoff_AES_GCM_192_NONE(RunTestIpsecEspAll):
1306 """native ESNon ARoff AES-GCM-192/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001307
Neale Ranns5b891102021-06-28 13:31:28 +00001308 def test_ipsec(self):
1309 """native ESNon ARoff AES-GCM-192/NONE IPSec test"""
1310 self.run_test()
1311
1312
1313class Test_native_ESNon_ARoff_AES_GCM_256_NONE(RunTestIpsecEspAll):
1314 """native ESNon ARoff AES-GCM-256/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001315
Neale Ranns5b891102021-06-28 13:31:28 +00001316 def test_ipsec(self):
1317 """native ESNon ARoff AES-GCM-256/NONE IPSec test"""
1318 self.run_test()
1319
1320
1321class Test_native_ESNon_ARoff_AES_CBC_128_MD5_96(RunTestIpsecEspAll):
1322 """native ESNon ARoff AES-CBC-128/MD5-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001323
Neale Ranns5b891102021-06-28 13:31:28 +00001324 def test_ipsec(self):
1325 """native ESNon ARoff AES-CBC-128/MD5-96 IPSec test"""
1326 self.run_test()
1327
1328
1329class Test_native_ESNon_ARoff_AES_CBC_192_SHA1_96(RunTestIpsecEspAll):
1330 """native ESNon ARoff AES-CBC-192/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001331
Neale Ranns5b891102021-06-28 13:31:28 +00001332 def test_ipsec(self):
1333 """native ESNon ARoff AES-CBC-192/SHA1-96 IPSec test"""
1334 self.run_test()
1335
1336
1337class Test_native_ESNon_ARoff_AES_CBC_256_SHA1_96(RunTestIpsecEspAll):
1338 """native ESNon ARoff AES-CBC-256/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001339
Neale Ranns5b891102021-06-28 13:31:28 +00001340 def test_ipsec(self):
1341 """native ESNon ARoff AES-CBC-256/SHA1-96 IPSec test"""
1342 self.run_test()
1343
1344
1345class Test_native_ESNon_ARoff_3DES_CBC_SHA1_96(RunTestIpsecEspAll):
1346 """native ESNon ARoff 3DES-CBC/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001347
Neale Ranns5b891102021-06-28 13:31:28 +00001348 def test_ipsec(self):
1349 """native ESNon ARoff 3DES-CBC/SHA1-96 IPSec test"""
1350 self.run_test()
1351
1352
1353class Test_native_ESNon_ARoff_NONE_SHA1_96(RunTestIpsecEspAll):
1354 """native ESNon ARoff NONE/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001355
Neale Ranns5b891102021-06-28 13:31:28 +00001356 def test_ipsec(self):
1357 """native ESNon ARoff NONE/SHA1-96 IPSec test"""
1358 self.run_test()
1359
1360
1361class Test_native_ESNon_ARoff_AES_CTR_128_SHA1_96(RunTestIpsecEspAll):
1362 """native ESNon ARoff AES-CTR-128/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001363
Neale Ranns5b891102021-06-28 13:31:28 +00001364 def test_ipsec(self):
1365 """native ESNon ARoff AES-CTR-128/SHA1-96 IPSec test"""
1366 self.run_test()
1367
1368
1369class Test_native_ESNon_ARoff_AES_CTR_192_SHA1_96(RunTestIpsecEspAll):
1370 """native ESNon ARoff AES-CTR-192/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001371
Neale Ranns5b891102021-06-28 13:31:28 +00001372 def test_ipsec(self):
1373 """native ESNon ARoff AES-CTR-192/SHA1-96 IPSec test"""
1374 self.run_test()
1375
1376
1377class Test_native_ESNon_ARoff_AES_CTR_256_SHA1_96(RunTestIpsecEspAll):
1378 """native ESNon ARoff AES-CTR-256/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001379
Neale Ranns5b891102021-06-28 13:31:28 +00001380 def test_ipsec(self):
1381 """native ESNon ARoff AES-CTR-256/SHA1-96 IPSec test"""
1382 self.run_test()
1383
1384
1385class Test_native_ESNoff_ARon_AES_GCM_128_NONE(RunTestIpsecEspAll):
1386 """native ESNoff ARon AES-GCM-128/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001387
Neale Ranns5b891102021-06-28 13:31:28 +00001388 def test_ipsec(self):
1389 """native ESNoff ARon AES-GCM-128/NONE IPSec test"""
1390 self.run_test()
1391
1392
1393class Test_native_ESNoff_ARon_AES_GCM_192_NONE(RunTestIpsecEspAll):
1394 """native ESNoff ARon AES-GCM-192/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001395
Neale Ranns5b891102021-06-28 13:31:28 +00001396 def test_ipsec(self):
1397 """native ESNoff ARon AES-GCM-192/NONE IPSec test"""
1398 self.run_test()
1399
1400
1401class Test_native_ESNoff_ARon_AES_GCM_256_NONE(RunTestIpsecEspAll):
1402 """native ESNoff ARon AES-GCM-256/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001403
Neale Ranns5b891102021-06-28 13:31:28 +00001404 def test_ipsec(self):
1405 """native ESNoff ARon AES-GCM-256/NONE IPSec test"""
1406 self.run_test()
1407
1408
1409class Test_native_ESNoff_ARon_AES_CBC_128_MD5_96(RunTestIpsecEspAll):
1410 """native ESNoff ARon AES-CBC-128/MD5-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001411
Neale Ranns5b891102021-06-28 13:31:28 +00001412 def test_ipsec(self):
1413 """native ESNoff ARon AES-CBC-128/MD5-96 IPSec test"""
1414 self.run_test()
1415
1416
1417class Test_native_ESNoff_ARon_AES_CBC_192_SHA1_96(RunTestIpsecEspAll):
1418 """native ESNoff ARon AES-CBC-192/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001419
Neale Ranns5b891102021-06-28 13:31:28 +00001420 def test_ipsec(self):
1421 """native ESNoff ARon AES-CBC-192/SHA1-96 IPSec test"""
1422 self.run_test()
1423
1424
1425class Test_native_ESNoff_ARon_AES_CBC_256_SHA1_96(RunTestIpsecEspAll):
1426 """native ESNoff ARon AES-CBC-256/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001427
Neale Ranns5b891102021-06-28 13:31:28 +00001428 def test_ipsec(self):
1429 """native ESNoff ARon AES-CBC-256/SHA1-96 IPSec test"""
1430 self.run_test()
1431
1432
1433class Test_native_ESNoff_ARon_3DES_CBC_SHA1_96(RunTestIpsecEspAll):
1434 """native ESNoff ARon 3DES-CBC/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001435
Neale Ranns5b891102021-06-28 13:31:28 +00001436 def test_ipsec(self):
1437 """native ESNoff ARon 3DES-CBC/SHA1-96 IPSec test"""
1438 self.run_test()
1439
1440
1441class Test_native_ESNoff_ARon_NONE_SHA1_96(RunTestIpsecEspAll):
1442 """native ESNoff ARon NONE/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001443
Neale Ranns5b891102021-06-28 13:31:28 +00001444 def test_ipsec(self):
1445 """native ESNoff ARon NONE/SHA1-96 IPSec test"""
1446 self.run_test()
1447
1448
1449class Test_native_ESNoff_ARon_AES_CTR_128_SHA1_96(RunTestIpsecEspAll):
1450 """native ESNoff ARon AES-CTR-128/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001451
Neale Ranns5b891102021-06-28 13:31:28 +00001452 def test_ipsec(self):
1453 """native ESNoff ARon AES-CTR-128/SHA1-96 IPSec test"""
1454 self.run_test()
1455
1456
1457class Test_native_ESNoff_ARon_AES_CTR_192_SHA1_96(RunTestIpsecEspAll):
1458 """native ESNoff ARon AES-CTR-192/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001459
Neale Ranns5b891102021-06-28 13:31:28 +00001460 def test_ipsec(self):
1461 """native ESNoff ARon AES-CTR-192/SHA1-96 IPSec test"""
1462 self.run_test()
1463
1464
1465class Test_native_ESNoff_ARon_AES_CTR_256_SHA1_96(RunTestIpsecEspAll):
1466 """native ESNoff ARon AES-CTR-256/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001467
Neale Ranns5b891102021-06-28 13:31:28 +00001468 def test_ipsec(self):
1469 """native ESNoff ARon AES-CTR-256/SHA1-96 IPSec test"""
1470 self.run_test()
1471
1472
1473class Test_native_ESNoff_ARoff_AES_GCM_128_NONE(RunTestIpsecEspAll):
1474 """native ESNoff ARoff AES-GCM-128/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001475
Neale Ranns5b891102021-06-28 13:31:28 +00001476 def test_ipsec(self):
1477 """native ESNoff ARoff AES-GCM-128/NONE IPSec test"""
1478 self.run_test()
1479
1480
1481class Test_native_ESNoff_ARoff_AES_GCM_192_NONE(RunTestIpsecEspAll):
1482 """native ESNoff ARoff AES-GCM-192/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001483
Neale Ranns5b891102021-06-28 13:31:28 +00001484 def test_ipsec(self):
1485 """native ESNoff ARoff AES-GCM-192/NONE IPSec test"""
1486 self.run_test()
1487
1488
1489class Test_native_ESNoff_ARoff_AES_GCM_256_NONE(RunTestIpsecEspAll):
1490 """native ESNoff ARoff AES-GCM-256/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001491
Neale Ranns5b891102021-06-28 13:31:28 +00001492 def test_ipsec(self):
1493 """native ESNoff ARoff AES-GCM-256/NONE IPSec test"""
1494 self.run_test()
1495
1496
1497class Test_native_ESNoff_ARoff_AES_CBC_128_MD5_96(RunTestIpsecEspAll):
1498 """native ESNoff ARoff AES-CBC-128/MD5-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001499
Neale Ranns5b891102021-06-28 13:31:28 +00001500 def test_ipsec(self):
1501 """native ESNoff ARoff AES-CBC-128/MD5-96 IPSec test"""
1502 self.run_test()
1503
1504
1505class Test_native_ESNoff_ARoff_AES_CBC_192_SHA1_96(RunTestIpsecEspAll):
1506 """native ESNoff ARoff AES-CBC-192/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001507
Neale Ranns5b891102021-06-28 13:31:28 +00001508 def test_ipsec(self):
1509 """native ESNoff ARoff AES-CBC-192/SHA1-96 IPSec test"""
1510 self.run_test()
1511
1512
1513class Test_native_ESNoff_ARoff_AES_CBC_256_SHA1_96(RunTestIpsecEspAll):
1514 """native ESNoff ARoff AES-CBC-256/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001515
Neale Ranns5b891102021-06-28 13:31:28 +00001516 def test_ipsec(self):
1517 """native ESNoff ARoff AES-CBC-256/SHA1-96 IPSec test"""
1518 self.run_test()
1519
1520
1521class Test_native_ESNoff_ARoff_3DES_CBC_SHA1_96(RunTestIpsecEspAll):
1522 """native ESNoff ARoff 3DES-CBC/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001523
Neale Ranns5b891102021-06-28 13:31:28 +00001524 def test_ipsec(self):
1525 """native ESNoff ARoff 3DES-CBC/SHA1-96 IPSec test"""
1526 self.run_test()
1527
1528
1529class Test_native_ESNoff_ARoff_NONE_SHA1_96(RunTestIpsecEspAll):
1530 """native ESNoff ARoff NONE/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001531
Neale Ranns5b891102021-06-28 13:31:28 +00001532 def test_ipsec(self):
1533 """native ESNoff ARoff NONE/SHA1-96 IPSec test"""
1534 self.run_test()
1535
1536
1537class Test_native_ESNoff_ARoff_AES_CTR_128_SHA1_96(RunTestIpsecEspAll):
1538 """native ESNoff ARoff AES-CTR-128/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001539
Neale Ranns5b891102021-06-28 13:31:28 +00001540 def test_ipsec(self):
1541 """native ESNoff ARoff AES-CTR-128/SHA1-96 IPSec test"""
1542 self.run_test()
1543
1544
1545class Test_native_ESNoff_ARoff_AES_CTR_192_SHA1_96(RunTestIpsecEspAll):
1546 """native ESNoff ARoff AES-CTR-192/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001547
Neale Ranns5b891102021-06-28 13:31:28 +00001548 def test_ipsec(self):
1549 """native ESNoff ARoff AES-CTR-192/SHA1-96 IPSec test"""
1550 self.run_test()
1551
1552
1553class Test_native_ESNoff_ARoff_AES_CTR_256_SHA1_96(RunTestIpsecEspAll):
1554 """native ESNoff ARoff AES-CTR-256/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001555
Neale Ranns5b891102021-06-28 13:31:28 +00001556 def test_ipsec(self):
1557 """native ESNoff ARoff AES-CTR-256/SHA1-96 IPSec test"""
1558 self.run_test()
1559
1560
1561class Test_ipsecmb_ESNon_ARon_AES_GCM_128_NONE(RunTestIpsecEspAll):
1562 """ipsecmb ESNon ARon AES-GCM-128/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001563
Neale Ranns5b891102021-06-28 13:31:28 +00001564 def test_ipsec(self):
1565 """ipsecmb ESNon ARon AES-GCM-128/NONE IPSec test"""
1566 self.run_test()
1567
1568
1569class Test_ipsecmb_ESNon_ARon_AES_GCM_192_NONE(RunTestIpsecEspAll):
1570 """ipsecmb ESNon ARon AES-GCM-192/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001571
Neale Ranns5b891102021-06-28 13:31:28 +00001572 def test_ipsec(self):
1573 """ipsecmb ESNon ARon AES-GCM-192/NONE IPSec test"""
1574 self.run_test()
1575
1576
1577class Test_ipsecmb_ESNon_ARon_AES_GCM_256_NONE(RunTestIpsecEspAll):
1578 """ipsecmb ESNon ARon AES-GCM-256/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001579
Neale Ranns5b891102021-06-28 13:31:28 +00001580 def test_ipsec(self):
1581 """ipsecmb ESNon ARon AES-GCM-256/NONE IPSec test"""
1582 self.run_test()
1583
1584
1585class Test_ipsecmb_ESNon_ARon_AES_CBC_128_MD5_96(RunTestIpsecEspAll):
1586 """ipsecmb ESNon ARon AES-CBC-128/MD5-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001587
Neale Ranns5b891102021-06-28 13:31:28 +00001588 def test_ipsec(self):
1589 """ipsecmb ESNon ARon AES-CBC-128/MD5-96 IPSec test"""
1590 self.run_test()
1591
1592
1593class Test_ipsecmb_ESNon_ARon_AES_CBC_192_SHA1_96(RunTestIpsecEspAll):
1594 """ipsecmb ESNon ARon AES-CBC-192/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001595
Neale Ranns5b891102021-06-28 13:31:28 +00001596 def test_ipsec(self):
1597 """ipsecmb ESNon ARon AES-CBC-192/SHA1-96 IPSec test"""
1598 self.run_test()
1599
1600
1601class Test_ipsecmb_ESNon_ARon_AES_CBC_256_SHA1_96(RunTestIpsecEspAll):
1602 """ipsecmb ESNon ARon AES-CBC-256/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001603
Neale Ranns5b891102021-06-28 13:31:28 +00001604 def test_ipsec(self):
1605 """ipsecmb ESNon ARon AES-CBC-256/SHA1-96 IPSec test"""
1606 self.run_test()
1607
1608
1609class Test_ipsecmb_ESNon_ARon_3DES_CBC_SHA1_96(RunTestIpsecEspAll):
1610 """ipsecmb ESNon ARon 3DES-CBC/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001611
Neale Ranns5b891102021-06-28 13:31:28 +00001612 def test_ipsec(self):
1613 """ipsecmb ESNon ARon 3DES-CBC/SHA1-96 IPSec test"""
1614 self.run_test()
1615
1616
1617class Test_ipsecmb_ESNon_ARon_NONE_SHA1_96(RunTestIpsecEspAll):
1618 """ipsecmb ESNon ARon NONE/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001619
Neale Ranns5b891102021-06-28 13:31:28 +00001620 def test_ipsec(self):
1621 """ipsecmb ESNon ARon NONE/SHA1-96 IPSec test"""
1622 self.run_test()
1623
1624
1625class Test_ipsecmb_ESNon_ARon_AES_CTR_128_SHA1_96(RunTestIpsecEspAll):
1626 """ipsecmb ESNon ARon AES-CTR-128/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001627
Neale Ranns5b891102021-06-28 13:31:28 +00001628 def test_ipsec(self):
1629 """ipsecmb ESNon ARon AES-CTR-128/SHA1-96 IPSec test"""
1630 self.run_test()
1631
1632
1633class Test_ipsecmb_ESNon_ARon_AES_CTR_192_SHA1_96(RunTestIpsecEspAll):
1634 """ipsecmb ESNon ARon AES-CTR-192/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001635
Neale Ranns5b891102021-06-28 13:31:28 +00001636 def test_ipsec(self):
1637 """ipsecmb ESNon ARon AES-CTR-192/SHA1-96 IPSec test"""
1638 self.run_test()
1639
1640
1641class Test_ipsecmb_ESNon_ARon_AES_CTR_256_SHA1_96(RunTestIpsecEspAll):
1642 """ipsecmb ESNon ARon AES-CTR-256/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001643
Neale Ranns5b891102021-06-28 13:31:28 +00001644 def test_ipsec(self):
1645 """ipsecmb ESNon ARon AES-CTR-256/SHA1-96 IPSec test"""
1646 self.run_test()
1647
1648
1649class Test_ipsecmb_ESNon_ARoff_AES_GCM_128_NONE(RunTestIpsecEspAll):
1650 """ipsecmb ESNon ARoff AES-GCM-128/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001651
Neale Ranns5b891102021-06-28 13:31:28 +00001652 def test_ipsec(self):
1653 """ipsecmb ESNon ARoff AES-GCM-128/NONE IPSec test"""
1654 self.run_test()
1655
1656
1657class Test_ipsecmb_ESNon_ARoff_AES_GCM_192_NONE(RunTestIpsecEspAll):
1658 """ipsecmb ESNon ARoff AES-GCM-192/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001659
Neale Ranns5b891102021-06-28 13:31:28 +00001660 def test_ipsec(self):
1661 """ipsecmb ESNon ARoff AES-GCM-192/NONE IPSec test"""
1662 self.run_test()
1663
1664
1665class Test_ipsecmb_ESNon_ARoff_AES_GCM_256_NONE(RunTestIpsecEspAll):
1666 """ipsecmb ESNon ARoff AES-GCM-256/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001667
Neale Ranns5b891102021-06-28 13:31:28 +00001668 def test_ipsec(self):
1669 """ipsecmb ESNon ARoff AES-GCM-256/NONE IPSec test"""
1670 self.run_test()
1671
1672
1673class Test_ipsecmb_ESNon_ARoff_AES_CBC_128_MD5_96(RunTestIpsecEspAll):
1674 """ipsecmb ESNon ARoff AES-CBC-128/MD5-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001675
Neale Ranns5b891102021-06-28 13:31:28 +00001676 def test_ipsec(self):
1677 """ipsecmb ESNon ARoff AES-CBC-128/MD5-96 IPSec test"""
1678 self.run_test()
1679
1680
1681class Test_ipsecmb_ESNon_ARoff_AES_CBC_192_SHA1_96(RunTestIpsecEspAll):
1682 """ipsecmb ESNon ARoff AES-CBC-192/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001683
Neale Ranns5b891102021-06-28 13:31:28 +00001684 def test_ipsec(self):
1685 """ipsecmb ESNon ARoff AES-CBC-192/SHA1-96 IPSec test"""
1686 self.run_test()
1687
1688
1689class Test_ipsecmb_ESNon_ARoff_AES_CBC_256_SHA1_96(RunTestIpsecEspAll):
1690 """ipsecmb ESNon ARoff AES-CBC-256/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001691
Neale Ranns5b891102021-06-28 13:31:28 +00001692 def test_ipsec(self):
1693 """ipsecmb ESNon ARoff AES-CBC-256/SHA1-96 IPSec test"""
1694 self.run_test()
1695
1696
1697class Test_ipsecmb_ESNon_ARoff_3DES_CBC_SHA1_96(RunTestIpsecEspAll):
1698 """ipsecmb ESNon ARoff 3DES-CBC/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001699
Neale Ranns5b891102021-06-28 13:31:28 +00001700 def test_ipsec(self):
1701 """ipsecmb ESNon ARoff 3DES-CBC/SHA1-96 IPSec test"""
1702 self.run_test()
1703
1704
1705class Test_ipsecmb_ESNon_ARoff_NONE_SHA1_96(RunTestIpsecEspAll):
1706 """ipsecmb ESNon ARoff NONE/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001707
Neale Ranns5b891102021-06-28 13:31:28 +00001708 def test_ipsec(self):
1709 """ipsecmb ESNon ARoff NONE/SHA1-96 IPSec test"""
1710 self.run_test()
1711
1712
1713class Test_ipsecmb_ESNon_ARoff_AES_CTR_128_SHA1_96(RunTestIpsecEspAll):
1714 """ipsecmb ESNon ARoff AES-CTR-128/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001715
Neale Ranns5b891102021-06-28 13:31:28 +00001716 def test_ipsec(self):
1717 """ipsecmb ESNon ARoff AES-CTR-128/SHA1-96 IPSec test"""
1718 self.run_test()
1719
1720
1721class Test_ipsecmb_ESNon_ARoff_AES_CTR_192_SHA1_96(RunTestIpsecEspAll):
1722 """ipsecmb ESNon ARoff AES-CTR-192/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001723
Neale Ranns5b891102021-06-28 13:31:28 +00001724 def test_ipsec(self):
1725 """ipsecmb ESNon ARoff AES-CTR-192/SHA1-96 IPSec test"""
1726 self.run_test()
1727
1728
1729class Test_ipsecmb_ESNon_ARoff_AES_CTR_256_SHA1_96(RunTestIpsecEspAll):
1730 """ipsecmb ESNon ARoff AES-CTR-256/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001731
Neale Ranns5b891102021-06-28 13:31:28 +00001732 def test_ipsec(self):
1733 """ipsecmb ESNon ARoff AES-CTR-256/SHA1-96 IPSec test"""
1734 self.run_test()
1735
1736
1737class Test_ipsecmb_ESNoff_ARon_AES_GCM_128_NONE(RunTestIpsecEspAll):
1738 """ipsecmb ESNoff ARon AES-GCM-128/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001739
Neale Ranns5b891102021-06-28 13:31:28 +00001740 def test_ipsec(self):
1741 """ipsecmb ESNoff ARon AES-GCM-128/NONE IPSec test"""
1742 self.run_test()
1743
1744
1745class Test_ipsecmb_ESNoff_ARon_AES_GCM_192_NONE(RunTestIpsecEspAll):
1746 """ipsecmb ESNoff ARon AES-GCM-192/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001747
Neale Ranns5b891102021-06-28 13:31:28 +00001748 def test_ipsec(self):
1749 """ipsecmb ESNoff ARon AES-GCM-192/NONE IPSec test"""
1750 self.run_test()
1751
1752
1753class Test_ipsecmb_ESNoff_ARon_AES_GCM_256_NONE(RunTestIpsecEspAll):
1754 """ipsecmb ESNoff ARon AES-GCM-256/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001755
Neale Ranns5b891102021-06-28 13:31:28 +00001756 def test_ipsec(self):
1757 """ipsecmb ESNoff ARon AES-GCM-256/NONE IPSec test"""
1758 self.run_test()
1759
1760
1761class Test_ipsecmb_ESNoff_ARon_AES_CBC_128_MD5_96(RunTestIpsecEspAll):
1762 """ipsecmb ESNoff ARon AES-CBC-128/MD5-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001763
Neale Ranns5b891102021-06-28 13:31:28 +00001764 def test_ipsec(self):
1765 """ipsecmb ESNoff ARon AES-CBC-128/MD5-96 IPSec test"""
1766 self.run_test()
1767
1768
1769class Test_ipsecmb_ESNoff_ARon_AES_CBC_192_SHA1_96(RunTestIpsecEspAll):
1770 """ipsecmb ESNoff ARon AES-CBC-192/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001771
Neale Ranns5b891102021-06-28 13:31:28 +00001772 def test_ipsec(self):
1773 """ipsecmb ESNoff ARon AES-CBC-192/SHA1-96 IPSec test"""
1774 self.run_test()
1775
1776
1777class Test_ipsecmb_ESNoff_ARon_AES_CBC_256_SHA1_96(RunTestIpsecEspAll):
1778 """ipsecmb ESNoff ARon AES-CBC-256/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001779
Neale Ranns5b891102021-06-28 13:31:28 +00001780 def test_ipsec(self):
1781 """ipsecmb ESNoff ARon AES-CBC-256/SHA1-96 IPSec test"""
1782 self.run_test()
1783
1784
1785class Test_ipsecmb_ESNoff_ARon_3DES_CBC_SHA1_96(RunTestIpsecEspAll):
1786 """ipsecmb ESNoff ARon 3DES-CBC/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001787
Neale Ranns5b891102021-06-28 13:31:28 +00001788 def test_ipsec(self):
1789 """ipsecmb ESNoff ARon 3DES-CBC/SHA1-96 IPSec test"""
1790 self.run_test()
1791
1792
1793class Test_ipsecmb_ESNoff_ARon_NONE_SHA1_96(RunTestIpsecEspAll):
1794 """ipsecmb ESNoff ARon NONE/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001795
Neale Ranns5b891102021-06-28 13:31:28 +00001796 def test_ipsec(self):
1797 """ipsecmb ESNoff ARon NONE/SHA1-96 IPSec test"""
1798 self.run_test()
1799
1800
1801class Test_ipsecmb_ESNoff_ARon_AES_CTR_128_SHA1_96(RunTestIpsecEspAll):
1802 """ipsecmb ESNoff ARon AES-CTR-128/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001803
Neale Ranns5b891102021-06-28 13:31:28 +00001804 def test_ipsec(self):
1805 """ipsecmb ESNoff ARon AES-CTR-128/SHA1-96 IPSec test"""
1806 self.run_test()
1807
1808
1809class Test_ipsecmb_ESNoff_ARon_AES_CTR_192_SHA1_96(RunTestIpsecEspAll):
1810 """ipsecmb ESNoff ARon AES-CTR-192/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001811
Neale Ranns5b891102021-06-28 13:31:28 +00001812 def test_ipsec(self):
1813 """ipsecmb ESNoff ARon AES-CTR-192/SHA1-96 IPSec test"""
1814 self.run_test()
Neale Ranns4f33c802019-04-10 12:39:10 +00001815
Neale Ranns4f33c802019-04-10 12:39:10 +00001816
Neale Ranns5b891102021-06-28 13:31:28 +00001817class Test_ipsecmb_ESNoff_ARon_AES_CTR_256_SHA1_96(RunTestIpsecEspAll):
1818 """ipsecmb ESNoff ARon AES-CTR-256/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001819
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001820 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00001821 """ipsecmb ESNoff ARon AES-CTR-256/SHA1-96 IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001822 self.run_test()
Neale Ranns4f33c802019-04-10 12:39:10 +00001823
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001824
Neale Ranns5b891102021-06-28 13:31:28 +00001825class Test_ipsecmb_ESNoff_ARoff_AES_GCM_128_NONE(RunTestIpsecEspAll):
1826 """ipsecmb ESNoff ARoff AES-GCM-128/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001827
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001828 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00001829 """ipsecmb ESNoff ARoff AES-GCM-128/NONE IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001830 self.run_test()
1831
1832
Neale Ranns5b891102021-06-28 13:31:28 +00001833class Test_ipsecmb_ESNoff_ARoff_AES_GCM_192_NONE(RunTestIpsecEspAll):
1834 """ipsecmb ESNoff ARoff AES-GCM-192/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001835
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001836 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00001837 """ipsecmb ESNoff ARoff AES-GCM-192/NONE IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001838 self.run_test()
1839
1840
Neale Ranns5b891102021-06-28 13:31:28 +00001841class Test_ipsecmb_ESNoff_ARoff_AES_GCM_256_NONE(RunTestIpsecEspAll):
1842 """ipsecmb ESNoff ARoff AES-GCM-256/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001843
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001844 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00001845 """ipsecmb ESNoff ARoff AES-GCM-256/NONE IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001846 self.run_test()
1847
1848
Neale Ranns5b891102021-06-28 13:31:28 +00001849class Test_ipsecmb_ESNoff_ARoff_AES_CBC_128_MD5_96(RunTestIpsecEspAll):
1850 """ipsecmb ESNoff ARoff AES-CBC-128/MD5-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001851
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001852 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00001853 """ipsecmb ESNoff ARoff AES-CBC-128/MD5-96 IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001854 self.run_test()
1855
1856
Neale Ranns5b891102021-06-28 13:31:28 +00001857class Test_ipsecmb_ESNoff_ARoff_AES_CBC_192_SHA1_96(RunTestIpsecEspAll):
1858 """ipsecmb ESNoff ARoff AES-CBC-192/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001859
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001860 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00001861 """ipsecmb ESNoff ARoff AES-CBC-192/SHA1-96 IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001862 self.run_test()
1863
1864
Neale Ranns5b891102021-06-28 13:31:28 +00001865class Test_ipsecmb_ESNoff_ARoff_AES_CBC_256_SHA1_96(RunTestIpsecEspAll):
1866 """ipsecmb ESNoff ARoff AES-CBC-256/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001867
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001868 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00001869 """ipsecmb ESNoff ARoff AES-CBC-256/SHA1-96 IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001870 self.run_test()
1871
1872
Neale Ranns5b891102021-06-28 13:31:28 +00001873class Test_ipsecmb_ESNoff_ARoff_3DES_CBC_SHA1_96(RunTestIpsecEspAll):
1874 """ipsecmb ESNoff ARoff 3DES-CBC/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001875
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001876 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00001877 """ipsecmb ESNoff ARoff 3DES-CBC/SHA1-96 IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001878 self.run_test()
1879
1880
Neale Ranns5b891102021-06-28 13:31:28 +00001881class Test_ipsecmb_ESNoff_ARoff_NONE_SHA1_96(RunTestIpsecEspAll):
1882 """ipsecmb ESNoff ARoff NONE/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001883
Benoît Ganne490b9272021-01-22 18:03:09 +01001884 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00001885 """ipsecmb ESNoff ARoff NONE/SHA1-96 IPSec test"""
Benoît Ganne490b9272021-01-22 18:03:09 +01001886 self.run_test()
1887
1888
Neale Ranns5b891102021-06-28 13:31:28 +00001889class Test_ipsecmb_ESNoff_ARoff_AES_CTR_128_SHA1_96(RunTestIpsecEspAll):
1890 """ipsecmb ESNoff ARoff AES-CTR-128/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001891
Benoît Ganne490b9272021-01-22 18:03:09 +01001892 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00001893 """ipsecmb ESNoff ARoff AES-CTR-128/SHA1-96 IPSec test"""
Benoît Ganne490b9272021-01-22 18:03:09 +01001894 self.run_test()
1895
1896
Neale Ranns5b891102021-06-28 13:31:28 +00001897class Test_ipsecmb_ESNoff_ARoff_AES_CTR_192_SHA1_96(RunTestIpsecEspAll):
1898 """ipsecmb ESNoff ARoff AES-CTR-192/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001899
Benoît Ganne490b9272021-01-22 18:03:09 +01001900 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00001901 """ipsecmb ESNoff ARoff AES-CTR-192/SHA1-96 IPSec test"""
Benoît Ganne490b9272021-01-22 18:03:09 +01001902 self.run_test()
1903
1904
Neale Ranns5b891102021-06-28 13:31:28 +00001905class Test_ipsecmb_ESNoff_ARoff_AES_CTR_256_SHA1_96(RunTestIpsecEspAll):
1906 """ipsecmb ESNoff ARoff AES-CTR-256/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001907
Neale Ranns9c23ff82021-06-25 13:30:50 +00001908 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00001909 """ipsecmb ESNoff ARoff AES-CTR-256/SHA1-96 IPSec test"""
Neale Ranns9c23ff82021-06-25 13:30:50 +00001910 self.run_test()
1911
1912
Neale Ranns5b891102021-06-28 13:31:28 +00001913class Test_openssl_ESNon_ARon_AES_GCM_128_NONE(RunTestIpsecEspAll):
1914 """openssl ESNon ARon AES-GCM-128/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001915
Neale Ranns9c23ff82021-06-25 13:30:50 +00001916 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00001917 """openssl ESNon ARon AES-GCM-128/NONE IPSec test"""
Neale Ranns9c23ff82021-06-25 13:30:50 +00001918 self.run_test()
1919
1920
Neale Ranns5b891102021-06-28 13:31:28 +00001921class Test_openssl_ESNon_ARon_AES_GCM_192_NONE(RunTestIpsecEspAll):
1922 """openssl ESNon ARon AES-GCM-192/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001923
Neale Ranns9c23ff82021-06-25 13:30:50 +00001924 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00001925 """openssl ESNon ARon AES-GCM-192/NONE IPSec test"""
Neale Ranns9c23ff82021-06-25 13:30:50 +00001926 self.run_test()
1927
1928
Neale Ranns5b891102021-06-28 13:31:28 +00001929class Test_openssl_ESNon_ARon_AES_GCM_256_NONE(RunTestIpsecEspAll):
1930 """openssl ESNon ARon AES-GCM-256/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001931
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001932 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00001933 """openssl ESNon ARon AES-GCM-256/NONE IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001934 self.run_test()
1935
1936
Neale Ranns5b891102021-06-28 13:31:28 +00001937class Test_openssl_ESNon_ARon_AES_CBC_128_MD5_96(RunTestIpsecEspAll):
1938 """openssl ESNon ARon AES-CBC-128/MD5-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001939
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001940 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00001941 """openssl ESNon ARon AES-CBC-128/MD5-96 IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001942 self.run_test()
1943
1944
Neale Ranns5b891102021-06-28 13:31:28 +00001945class Test_openssl_ESNon_ARon_AES_CBC_192_SHA1_96(RunTestIpsecEspAll):
1946 """openssl ESNon ARon AES-CBC-192/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001947
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001948 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00001949 """openssl ESNon ARon AES-CBC-192/SHA1-96 IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001950 self.run_test()
1951
1952
Neale Ranns5b891102021-06-28 13:31:28 +00001953class Test_openssl_ESNon_ARon_AES_CBC_256_SHA1_96(RunTestIpsecEspAll):
1954 """openssl ESNon ARon AES-CBC-256/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001955
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001956 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00001957 """openssl ESNon ARon AES-CBC-256/SHA1-96 IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001958 self.run_test()
1959
1960
Neale Ranns5b891102021-06-28 13:31:28 +00001961class Test_openssl_ESNon_ARon_3DES_CBC_SHA1_96(RunTestIpsecEspAll):
1962 """openssl ESNon ARon 3DES-CBC/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001963
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001964 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00001965 """openssl ESNon ARon 3DES-CBC/SHA1-96 IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001966 self.run_test()
1967
1968
Neale Ranns5b891102021-06-28 13:31:28 +00001969class Test_openssl_ESNon_ARon_NONE_SHA1_96(RunTestIpsecEspAll):
1970 """openssl ESNon ARon NONE/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001971
Benoît Ganne490b9272021-01-22 18:03:09 +01001972 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00001973 """openssl ESNon ARon NONE/SHA1-96 IPSec test"""
Benoît Ganne490b9272021-01-22 18:03:09 +01001974 self.run_test()
1975
1976
Neale Ranns5b891102021-06-28 13:31:28 +00001977class Test_openssl_ESNon_ARon_AES_CTR_128_SHA1_96(RunTestIpsecEspAll):
1978 """openssl ESNon ARon AES-CTR-128/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001979
Benoît Ganne490b9272021-01-22 18:03:09 +01001980 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00001981 """openssl ESNon ARon AES-CTR-128/SHA1-96 IPSec test"""
Benoît Ganne490b9272021-01-22 18:03:09 +01001982 self.run_test()
1983
1984
Neale Ranns5b891102021-06-28 13:31:28 +00001985class Test_openssl_ESNon_ARon_AES_CTR_192_SHA1_96(RunTestIpsecEspAll):
1986 """openssl ESNon ARon AES-CTR-192/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001987
Benoît Ganne490b9272021-01-22 18:03:09 +01001988 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00001989 """openssl ESNon ARon AES-CTR-192/SHA1-96 IPSec test"""
Benoît Ganne490b9272021-01-22 18:03:09 +01001990 self.run_test()
1991
1992
Neale Ranns5b891102021-06-28 13:31:28 +00001993class Test_openssl_ESNon_ARon_AES_CTR_256_SHA1_96(RunTestIpsecEspAll):
1994 """openssl ESNon ARon AES-CTR-256/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001995
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001996 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00001997 """openssl ESNon ARon AES-CTR-256/SHA1-96 IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001998 self.run_test()
1999
2000
Neale Ranns5b891102021-06-28 13:31:28 +00002001class Test_openssl_ESNon_ARoff_AES_GCM_128_NONE(RunTestIpsecEspAll):
2002 """openssl ESNon ARoff AES-GCM-128/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002003
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002004 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002005 """openssl ESNon ARoff AES-GCM-128/NONE IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002006 self.run_test()
2007
2008
Neale Ranns5b891102021-06-28 13:31:28 +00002009class Test_openssl_ESNon_ARoff_AES_GCM_192_NONE(RunTestIpsecEspAll):
2010 """openssl ESNon ARoff AES-GCM-192/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002011
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002012 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002013 """openssl ESNon ARoff AES-GCM-192/NONE IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002014 self.run_test()
2015
2016
Neale Ranns5b891102021-06-28 13:31:28 +00002017class Test_openssl_ESNon_ARoff_AES_GCM_256_NONE(RunTestIpsecEspAll):
2018 """openssl ESNon ARoff AES-GCM-256/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002019
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002020 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002021 """openssl ESNon ARoff AES-GCM-256/NONE IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002022 self.run_test()
2023
2024
Neale Ranns5b891102021-06-28 13:31:28 +00002025class Test_openssl_ESNon_ARoff_AES_CBC_128_MD5_96(RunTestIpsecEspAll):
2026 """openssl ESNon ARoff AES-CBC-128/MD5-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002027
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002028 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002029 """openssl ESNon ARoff AES-CBC-128/MD5-96 IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002030 self.run_test()
2031
2032
Neale Ranns5b891102021-06-28 13:31:28 +00002033class Test_openssl_ESNon_ARoff_AES_CBC_192_SHA1_96(RunTestIpsecEspAll):
2034 """openssl ESNon ARoff AES-CBC-192/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002035
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002036 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002037 """openssl ESNon ARoff AES-CBC-192/SHA1-96 IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002038 self.run_test()
2039
2040
Neale Ranns5b891102021-06-28 13:31:28 +00002041class Test_openssl_ESNon_ARoff_AES_CBC_256_SHA1_96(RunTestIpsecEspAll):
2042 """openssl ESNon ARoff AES-CBC-256/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002043
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002044 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002045 """openssl ESNon ARoff AES-CBC-256/SHA1-96 IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002046 self.run_test()
2047
2048
Neale Ranns5b891102021-06-28 13:31:28 +00002049class Test_openssl_ESNon_ARoff_3DES_CBC_SHA1_96(RunTestIpsecEspAll):
2050 """openssl ESNon ARoff 3DES-CBC/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002051
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002052 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002053 """openssl ESNon ARoff 3DES-CBC/SHA1-96 IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002054 self.run_test()
2055
2056
Neale Ranns5b891102021-06-28 13:31:28 +00002057class Test_openssl_ESNon_ARoff_NONE_SHA1_96(RunTestIpsecEspAll):
2058 """openssl ESNon ARoff NONE/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002059
Benoît Ganne490b9272021-01-22 18:03:09 +01002060 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002061 """openssl ESNon ARoff NONE/SHA1-96 IPSec test"""
Benoît Ganne490b9272021-01-22 18:03:09 +01002062 self.run_test()
2063
2064
Neale Ranns5b891102021-06-28 13:31:28 +00002065class Test_openssl_ESNon_ARoff_AES_CTR_128_SHA1_96(RunTestIpsecEspAll):
2066 """openssl ESNon ARoff AES-CTR-128/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002067
Benoît Ganne490b9272021-01-22 18:03:09 +01002068 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002069 """openssl ESNon ARoff AES-CTR-128/SHA1-96 IPSec test"""
Benoît Ganne490b9272021-01-22 18:03:09 +01002070 self.run_test()
2071
2072
Neale Ranns5b891102021-06-28 13:31:28 +00002073class Test_openssl_ESNon_ARoff_AES_CTR_192_SHA1_96(RunTestIpsecEspAll):
2074 """openssl ESNon ARoff AES-CTR-192/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002075
Benoît Ganne490b9272021-01-22 18:03:09 +01002076 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002077 """openssl ESNon ARoff AES-CTR-192/SHA1-96 IPSec test"""
Benoît Ganne490b9272021-01-22 18:03:09 +01002078 self.run_test()
2079
2080
Neale Ranns5b891102021-06-28 13:31:28 +00002081class Test_openssl_ESNon_ARoff_AES_CTR_256_SHA1_96(RunTestIpsecEspAll):
2082 """openssl ESNon ARoff AES-CTR-256/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002083
Neale Ranns9c23ff82021-06-25 13:30:50 +00002084 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002085 """openssl ESNon ARoff AES-CTR-256/SHA1-96 IPSec test"""
Neale Ranns9c23ff82021-06-25 13:30:50 +00002086 self.run_test()
2087
2088
Neale Ranns5b891102021-06-28 13:31:28 +00002089class Test_openssl_ESNoff_ARon_AES_GCM_128_NONE(RunTestIpsecEspAll):
2090 """openssl ESNoff ARon AES-GCM-128/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002091
Neale Ranns9c23ff82021-06-25 13:30:50 +00002092 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002093 """openssl ESNoff ARon AES-GCM-128/NONE IPSec test"""
Neale Ranns9c23ff82021-06-25 13:30:50 +00002094 self.run_test()
2095
2096
Neale Ranns5b891102021-06-28 13:31:28 +00002097class Test_openssl_ESNoff_ARon_AES_GCM_192_NONE(RunTestIpsecEspAll):
2098 """openssl ESNoff ARon AES-GCM-192/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002099
Neale Ranns9c23ff82021-06-25 13:30:50 +00002100 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002101 """openssl ESNoff ARon AES-GCM-192/NONE IPSec test"""
Neale Ranns9c23ff82021-06-25 13:30:50 +00002102 self.run_test()
2103
2104
Neale Ranns5b891102021-06-28 13:31:28 +00002105class Test_openssl_ESNoff_ARon_AES_GCM_256_NONE(RunTestIpsecEspAll):
2106 """openssl ESNoff ARon AES-GCM-256/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002107
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002108 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002109 """openssl ESNoff ARon AES-GCM-256/NONE IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002110 self.run_test()
2111
2112
Neale Ranns5b891102021-06-28 13:31:28 +00002113class Test_openssl_ESNoff_ARon_AES_CBC_128_MD5_96(RunTestIpsecEspAll):
2114 """openssl ESNoff ARon AES-CBC-128/MD5-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002115
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002116 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002117 """openssl ESNoff ARon AES-CBC-128/MD5-96 IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002118 self.run_test()
2119
2120
Neale Ranns5b891102021-06-28 13:31:28 +00002121class Test_openssl_ESNoff_ARon_AES_CBC_192_SHA1_96(RunTestIpsecEspAll):
2122 """openssl ESNoff ARon AES-CBC-192/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002123
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002124 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002125 """openssl ESNoff ARon AES-CBC-192/SHA1-96 IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002126 self.run_test()
2127
2128
Neale Ranns5b891102021-06-28 13:31:28 +00002129class Test_openssl_ESNoff_ARon_AES_CBC_256_SHA1_96(RunTestIpsecEspAll):
2130 """openssl ESNoff ARon AES-CBC-256/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002131
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002132 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002133 """openssl ESNoff ARon AES-CBC-256/SHA1-96 IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002134 self.run_test()
2135
2136
Neale Ranns5b891102021-06-28 13:31:28 +00002137class Test_openssl_ESNoff_ARon_3DES_CBC_SHA1_96(RunTestIpsecEspAll):
2138 """openssl ESNoff ARon 3DES-CBC/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002139
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002140 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002141 """openssl ESNoff ARon 3DES-CBC/SHA1-96 IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002142 self.run_test()
2143
2144
Neale Ranns5b891102021-06-28 13:31:28 +00002145class Test_openssl_ESNoff_ARon_NONE_SHA1_96(RunTestIpsecEspAll):
2146 """openssl ESNoff ARon NONE/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002147
Benoît Ganne490b9272021-01-22 18:03:09 +01002148 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002149 """openssl ESNoff ARon NONE/SHA1-96 IPSec test"""
Benoît Ganne490b9272021-01-22 18:03:09 +01002150 self.run_test()
2151
2152
Neale Ranns5b891102021-06-28 13:31:28 +00002153class Test_openssl_ESNoff_ARon_AES_CTR_128_SHA1_96(RunTestIpsecEspAll):
2154 """openssl ESNoff ARon AES-CTR-128/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002155
Benoît Ganne490b9272021-01-22 18:03:09 +01002156 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002157 """openssl ESNoff ARon AES-CTR-128/SHA1-96 IPSec test"""
Benoît Ganne490b9272021-01-22 18:03:09 +01002158 self.run_test()
2159
2160
Neale Ranns5b891102021-06-28 13:31:28 +00002161class Test_openssl_ESNoff_ARon_AES_CTR_192_SHA1_96(RunTestIpsecEspAll):
2162 """openssl ESNoff ARon AES-CTR-192/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002163
Benoît Ganne490b9272021-01-22 18:03:09 +01002164 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002165 """openssl ESNoff ARon AES-CTR-192/SHA1-96 IPSec test"""
Benoît Ganne490b9272021-01-22 18:03:09 +01002166 self.run_test()
2167
2168
Neale Ranns5b891102021-06-28 13:31:28 +00002169class Test_openssl_ESNoff_ARon_AES_CTR_256_SHA1_96(RunTestIpsecEspAll):
2170 """openssl ESNoff ARon AES-CTR-256/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002171
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002172 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002173 """openssl ESNoff ARon AES-CTR-256/SHA1-96 IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002174 self.run_test()
2175
2176
Neale Ranns5b891102021-06-28 13:31:28 +00002177class Test_openssl_ESNoff_ARoff_AES_GCM_128_NONE(RunTestIpsecEspAll):
2178 """openssl ESNoff ARoff AES-GCM-128/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002179
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002180 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002181 """openssl ESNoff ARoff AES-GCM-128/NONE IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002182 self.run_test()
2183
2184
Neale Ranns5b891102021-06-28 13:31:28 +00002185class Test_openssl_ESNoff_ARoff_AES_GCM_192_NONE(RunTestIpsecEspAll):
2186 """openssl ESNoff ARoff AES-GCM-192/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002187
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002188 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002189 """openssl ESNoff ARoff AES-GCM-192/NONE IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002190 self.run_test()
2191
2192
Neale Ranns5b891102021-06-28 13:31:28 +00002193class Test_openssl_ESNoff_ARoff_AES_GCM_256_NONE(RunTestIpsecEspAll):
2194 """openssl ESNoff ARoff AES-GCM-256/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002195
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002196 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002197 """openssl ESNoff ARoff AES-GCM-256/NONE IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002198 self.run_test()
2199
2200
Neale Ranns5b891102021-06-28 13:31:28 +00002201class Test_openssl_ESNoff_ARoff_AES_CBC_128_MD5_96(RunTestIpsecEspAll):
2202 """openssl ESNoff ARoff AES-CBC-128/MD5-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002203
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002204 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002205 """openssl ESNoff ARoff AES-CBC-128/MD5-96 IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002206 self.run_test()
2207
2208
Neale Ranns5b891102021-06-28 13:31:28 +00002209class Test_openssl_ESNoff_ARoff_AES_CBC_192_SHA1_96(RunTestIpsecEspAll):
2210 """openssl ESNoff ARoff AES-CBC-192/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002211
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002212 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002213 """openssl ESNoff ARoff AES-CBC-192/SHA1-96 IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002214 self.run_test()
2215
2216
Neale Ranns5b891102021-06-28 13:31:28 +00002217class Test_openssl_ESNoff_ARoff_AES_CBC_256_SHA1_96(RunTestIpsecEspAll):
2218 """openssl ESNoff ARoff AES-CBC-256/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002219
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002220 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002221 """openssl ESNoff ARoff AES-CBC-256/SHA1-96 IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002222 self.run_test()
2223
2224
Neale Ranns5b891102021-06-28 13:31:28 +00002225class Test_openssl_ESNoff_ARoff_3DES_CBC_SHA1_96(RunTestIpsecEspAll):
2226 """openssl ESNoff ARoff 3DES-CBC/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002227
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002228 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002229 """openssl ESNoff ARoff 3DES-CBC/SHA1-96 IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002230 self.run_test()
2231
2232
Neale Ranns5b891102021-06-28 13:31:28 +00002233class Test_openssl_ESNoff_ARoff_NONE_SHA1_96(RunTestIpsecEspAll):
2234 """openssl ESNoff ARoff NONE/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002235
Benoît Ganne490b9272021-01-22 18:03:09 +01002236 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002237 """openssl ESNoff ARoff NONE/SHA1-96 IPSec test"""
Benoît Ganne490b9272021-01-22 18:03:09 +01002238 self.run_test()
2239
2240
Neale Ranns5b891102021-06-28 13:31:28 +00002241class Test_openssl_ESNoff_ARoff_AES_CTR_128_SHA1_96(RunTestIpsecEspAll):
2242 """openssl ESNoff ARoff AES-CTR-128/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002243
Benoît Ganne490b9272021-01-22 18:03:09 +01002244 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002245 """openssl ESNoff ARoff AES-CTR-128/SHA1-96 IPSec test"""
Benoît Ganne490b9272021-01-22 18:03:09 +01002246 self.run_test()
2247
2248
Neale Ranns5b891102021-06-28 13:31:28 +00002249class Test_openssl_ESNoff_ARoff_AES_CTR_192_SHA1_96(RunTestIpsecEspAll):
2250 """openssl ESNoff ARoff AES-CTR-192/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002251
Benoît Ganne490b9272021-01-22 18:03:09 +01002252 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002253 """openssl ESNoff ARoff AES-CTR-192/SHA1-96 IPSec test"""
Benoît Ganne490b9272021-01-22 18:03:09 +01002254 self.run_test()
2255
2256
Neale Ranns5b891102021-06-28 13:31:28 +00002257class Test_openssl_ESNoff_ARoff_AES_CTR_256_SHA1_96(RunTestIpsecEspAll):
2258 """openssl ESNoff ARoff AES-CTR-256/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002259
Neale Ranns9c23ff82021-06-25 13:30:50 +00002260 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002261 """openssl ESNoff ARoff AES-CTR-256/SHA1-96 IPSec test"""
Neale Ranns9c23ff82021-06-25 13:30:50 +00002262 self.run_test()
2263
2264
Neale Ranns5b891102021-06-28 13:31:28 +00002265class Test_async_ESNon_ARon_AES_GCM_128_NONE(RunTestIpsecEspAll):
2266 """async ESNon ARon AES-GCM-128/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002267
Neale Ranns9c23ff82021-06-25 13:30:50 +00002268 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002269 """async ESNon ARon AES-GCM-128/NONE IPSec test"""
Neale Ranns9c23ff82021-06-25 13:30:50 +00002270 self.run_test()
2271
2272
Neale Ranns5b891102021-06-28 13:31:28 +00002273class Test_async_ESNon_ARon_AES_GCM_192_NONE(RunTestIpsecEspAll):
2274 """async ESNon ARon AES-GCM-192/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002275
Neale Ranns9c23ff82021-06-25 13:30:50 +00002276 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002277 """async ESNon ARon AES-GCM-192/NONE IPSec test"""
Neale Ranns9c23ff82021-06-25 13:30:50 +00002278 self.run_test()
2279
2280
Neale Ranns5b891102021-06-28 13:31:28 +00002281class Test_async_ESNon_ARon_AES_GCM_256_NONE(RunTestIpsecEspAll):
2282 """async ESNon ARon AES-GCM-256/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002283
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002284 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002285 """async ESNon ARon AES-GCM-256/NONE IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002286 self.run_test()
2287
2288
Neale Ranns5b891102021-06-28 13:31:28 +00002289class Test_async_ESNon_ARon_AES_CBC_192_SHA1_96(RunTestIpsecEspAll):
2290 """async ESNon ARon AES-CBC-192/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002291
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002292 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002293 """async ESNon ARon AES-CBC-192/SHA1-96 IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002294 self.run_test()
2295
2296
Neale Ranns5b891102021-06-28 13:31:28 +00002297class Test_async_ESNon_ARon_AES_CBC_256_SHA1_96(RunTestIpsecEspAll):
2298 """async ESNon ARon AES-CBC-256/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002299
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002300 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002301 """async ESNon ARon AES-CBC-256/SHA1-96 IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002302 self.run_test()
2303
2304
Neale Ranns5b891102021-06-28 13:31:28 +00002305class Test_async_ESNon_ARoff_AES_GCM_128_NONE(RunTestIpsecEspAll):
2306 """async ESNon ARoff AES-GCM-128/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002307
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002308 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002309 """async ESNon ARoff AES-GCM-128/NONE IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002310 self.run_test()
2311
2312
Neale Ranns5b891102021-06-28 13:31:28 +00002313class Test_async_ESNon_ARoff_AES_GCM_192_NONE(RunTestIpsecEspAll):
2314 """async ESNon ARoff AES-GCM-192/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002315
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002316 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002317 """async ESNon ARoff AES-GCM-192/NONE IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002318 self.run_test()
Neale Ranns6afaae12019-07-17 15:07:14 +00002319
Neale Ranns4f33c802019-04-10 12:39:10 +00002320
Neale Ranns5b891102021-06-28 13:31:28 +00002321class Test_async_ESNon_ARoff_AES_GCM_256_NONE(RunTestIpsecEspAll):
2322 """async ESNon ARoff AES-GCM-256/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002323
Benoît Ganne490b9272021-01-22 18:03:09 +01002324 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002325 """async ESNon ARoff AES-GCM-256/NONE IPSec test"""
Benoît Ganne490b9272021-01-22 18:03:09 +01002326 self.run_test()
2327
2328
Neale Ranns5b891102021-06-28 13:31:28 +00002329class Test_async_ESNon_ARoff_AES_CBC_192_SHA1_96(RunTestIpsecEspAll):
2330 """async ESNon ARoff AES-CBC-192/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002331
Benoît Ganne490b9272021-01-22 18:03:09 +01002332 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002333 """async ESNon ARoff AES-CBC-192/SHA1-96 IPSec test"""
Benoît Ganne490b9272021-01-22 18:03:09 +01002334 self.run_test()
2335
2336
Neale Ranns5b891102021-06-28 13:31:28 +00002337class Test_async_ESNon_ARoff_AES_CBC_256_SHA1_96(RunTestIpsecEspAll):
2338 """async ESNon ARoff AES-CBC-256/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002339
Benoît Ganne490b9272021-01-22 18:03:09 +01002340 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002341 """async ESNon ARoff AES-CBC-256/SHA1-96 IPSec test"""
Benoît Ganne490b9272021-01-22 18:03:09 +01002342 self.run_test()
2343
2344
Neale Ranns5b891102021-06-28 13:31:28 +00002345class Test_async_ESNoff_ARon_AES_GCM_128_NONE(RunTestIpsecEspAll):
2346 """async ESNoff ARon AES-GCM-128/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002347
Neale Ranns8c609af2021-02-25 10:05:32 +00002348 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002349 """async ESNoff ARon AES-GCM-128/NONE IPSec test"""
Neale Ranns8c609af2021-02-25 10:05:32 +00002350 self.run_test()
2351
2352
Neale Ranns5b891102021-06-28 13:31:28 +00002353class Test_async_ESNoff_ARon_AES_GCM_192_NONE(RunTestIpsecEspAll):
2354 """async ESNoff ARon AES-GCM-192/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002355
Neale Ranns8c609af2021-02-25 10:05:32 +00002356 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002357 """async ESNoff ARon AES-GCM-192/NONE IPSec test"""
Neale Ranns8c609af2021-02-25 10:05:32 +00002358 self.run_test()
2359
2360
Neale Ranns5b891102021-06-28 13:31:28 +00002361class Test_async_ESNoff_ARon_AES_GCM_256_NONE(RunTestIpsecEspAll):
2362 """async ESNoff ARon AES-GCM-256/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002363
Neale Ranns8c609af2021-02-25 10:05:32 +00002364 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002365 """async ESNoff ARon AES-GCM-256/NONE IPSec test"""
Neale Ranns8c609af2021-02-25 10:05:32 +00002366 self.run_test()
2367
2368
Neale Ranns5b891102021-06-28 13:31:28 +00002369class Test_async_ESNoff_ARon_AES_CBC_192_SHA1_96(RunTestIpsecEspAll):
2370 """async ESNoff ARon AES-CBC-192/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002371
Neale Ranns8c609af2021-02-25 10:05:32 +00002372 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002373 """async ESNoff ARon AES-CBC-192/SHA1-96 IPSec test"""
Neale Ranns8c609af2021-02-25 10:05:32 +00002374 self.run_test()
2375
2376
Neale Ranns5b891102021-06-28 13:31:28 +00002377class Test_async_ESNoff_ARon_AES_CBC_256_SHA1_96(RunTestIpsecEspAll):
2378 """async ESNoff ARon AES-CBC-256/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002379
Neale Ranns8c609af2021-02-25 10:05:32 +00002380 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002381 """async ESNoff ARon AES-CBC-256/SHA1-96 IPSec test"""
Neale Ranns8c609af2021-02-25 10:05:32 +00002382 self.run_test()
2383
2384
Neale Ranns5b891102021-06-28 13:31:28 +00002385class Test_async_ESNoff_ARoff_AES_GCM_128_NONE(RunTestIpsecEspAll):
2386 """async ESNoff ARoff AES-GCM-128/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002387
Neale Ranns9c23ff82021-06-25 13:30:50 +00002388 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002389 """async ESNoff ARoff AES-GCM-128/NONE IPSec test"""
Neale Ranns9c23ff82021-06-25 13:30:50 +00002390 self.run_test()
2391
2392
Neale Ranns5b891102021-06-28 13:31:28 +00002393class Test_async_ESNoff_ARoff_AES_GCM_192_NONE(RunTestIpsecEspAll):
2394 """async ESNoff ARoff AES-GCM-192/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002395
Neale Ranns9c23ff82021-06-25 13:30:50 +00002396 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002397 """async ESNoff ARoff AES-GCM-192/NONE IPSec test"""
Neale Ranns9c23ff82021-06-25 13:30:50 +00002398 self.run_test()
2399
2400
Neale Ranns5b891102021-06-28 13:31:28 +00002401class Test_async_ESNoff_ARoff_AES_GCM_256_NONE(RunTestIpsecEspAll):
2402 """async ESNoff ARoff AES-GCM-256/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002403
Neale Ranns9c23ff82021-06-25 13:30:50 +00002404 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002405 """async ESNoff ARoff AES-GCM-256/NONE IPSec test"""
Neale Ranns9c23ff82021-06-25 13:30:50 +00002406 self.run_test()
2407
2408
Neale Ranns5b891102021-06-28 13:31:28 +00002409class Test_async_ESNoff_ARoff_AES_CBC_192_SHA1_96(RunTestIpsecEspAll):
2410 """async ESNoff ARoff AES-CBC-192/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002411
Neale Ranns8c609af2021-02-25 10:05:32 +00002412 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002413 """async ESNoff ARoff AES-CBC-192/SHA1-96 IPSec test"""
Neale Ranns8c609af2021-02-25 10:05:32 +00002414 self.run_test()
2415
2416
Neale Ranns5b891102021-06-28 13:31:28 +00002417class Test_async_ESNoff_ARoff_AES_CBC_256_SHA1_96(RunTestIpsecEspAll):
2418 """async ESNoff ARoff AES-CBC-256/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002419
Neale Ranns8c609af2021-02-25 10:05:32 +00002420 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002421 """async ESNoff ARoff AES-CBC-256/SHA1-96 IPSec test"""
Neale Ranns8c609af2021-02-25 10:05:32 +00002422 self.run_test()