blob: 54b877112e9953a5e499fa6223b6a195b7060f50 [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,
148 self.tun_if.local_addr[addr_type],
149 self.tun_if.remote_addr[addr_type],
150 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,
165 self.tun_if.remote_addr[addr_type],
166 self.tun_if.local_addr[addr_type],
167 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,
204 vpp_tun_sa_id,
205 remote_tun_if_host,
206 remote_tun_if_host,
207 self.pg1.remote_addr[addr_type],
208 self.pg1.remote_addr[addr_type],
209 0,
210 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,
219 scapy_tun_sa_id,
220 self.pg1.remote_addr[addr_type],
221 self.pg1.remote_addr[addr_type],
222 remote_tun_if_host,
223 remote_tun_if_host,
224 0,
225 policy=e.IPSEC_API_SPD_ACTION_PROTECT,
226 priority=10,
227 )
228 )
229 objs.append(
230 VppIpsecSpdEntry(
231 self,
232 self.tun_spd,
233 vpp_tun_sa_id,
234 remote_tun_if_host,
235 remote_tun_if_host,
236 self.pg0.local_addr[addr_type],
237 self.pg0.local_addr[addr_type],
238 0,
239 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,
248 scapy_tun_sa_id,
249 self.pg0.local_addr[addr_type],
250 self.pg0.local_addr[addr_type],
251 remote_tun_if_host,
252 remote_tun_if_host,
253 0,
254 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,
335 vpp_tra_sa_id,
336 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],
340 0,
341 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,
350 scapy_tra_sa_id,
351 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],
355 0,
356 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,
450 p6.scapy_tun_sa_id,
451 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,
455 0,
456 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,
485 p4.scapy_tun_sa_id,
486 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,
490 0,
491 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,
Neale Rannsfc811342021-02-26 10:35:33 +0000651 0,
652 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,
710 0,
711 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:
749 if rx[ESP].spi == p.scapy_tun_spi:
750 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:
752 decrypted = self.p_sync.scapy_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:
810 if rx[ESP].spi == p.scapy_tun_spi:
811 decrypted = p.vpp_tun_sa.decrypt(rx[IP])
812 elif rx[ESP].spi == self.p_sync.vpp_tun_spi:
813 decrypted = self.p_sync.scapy_tun_sa.decrypt(rx[IP])
814 elif rx[ESP].spi == self.p_async.vpp_tun_spi:
815 decrypted = self.p_async.scapy_tun_sa.decrypt(rx[IP])
816 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
825 # async mode should have been disabled now that there are
826 # no async SAs. there's no API for this, so a reluctant
827 # screen scrape.
828 self.assertTrue("DISABLED" in self.vapi.cli("sh crypto async status"))
Neale Rannsfc811342021-02-26 10:35:33 +0000829
830
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200831class TestIpsecEspHandoff(
832 TemplateIpsecEsp, IpsecTun6HandoffTests, IpsecTun4HandoffTests
833):
834 """Ipsec ESP - handoff tests"""
835
Neale Ranns4a56f4e2019-12-23 04:10:25 +0000836 pass
837
838
Neale Ranns4f33c802019-04-10 12:39:10 +0000839class TemplateIpsecEspUdp(ConfigIpsecESP):
Neale Ranns53f526b2019-02-25 14:32:02 +0000840 """
841 UDP encapped ESP
842 """
Paul Vinciguerra7f9b7f92019-03-12 19:23:27 -0700843
844 @classmethod
845 def setUpClass(cls):
846 super(TemplateIpsecEspUdp, cls).setUpClass()
847
848 @classmethod
849 def tearDownClass(cls):
850 super(TemplateIpsecEspUdp, cls).tearDownClass()
851
Neale Ranns53f526b2019-02-25 14:32:02 +0000852 def setUp(self):
853 super(TemplateIpsecEspUdp, self).setUp()
Neale Ranns4f33c802019-04-10 12:39:10 +0000854 self.net_objs = []
Neale Ranns53f526b2019-02-25 14:32:02 +0000855 self.tun_if = self.pg0
856 self.tra_if = self.pg2
857 self.logger.info(self.vapi.ppcli("show int addr"))
858
859 p = self.ipv4_params
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200860 p.flags = (
861 VppEnum.vl_api_ipsec_sad_flags_t.IPSEC_API_SAD_FLAG_UDP_ENCAP
862 | VppEnum.vl_api_ipsec_sad_flags_t.IPSEC_API_SAD_FLAG_USE_ANTI_REPLAY
863 )
Neale Ranns53f526b2019-02-25 14:32:02 +0000864 p.nat_header = UDP(sport=5454, dport=4500)
865
866 self.tra_spd = VppIpsecSpd(self, self.tra_spd_id)
867 self.tra_spd.add_vpp_config()
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200868 VppIpsecSpdItfBinding(self, self.tra_spd, self.tra_if).add_vpp_config()
Neale Ranns53f526b2019-02-25 14:32:02 +0000869
Neale Ranns4f33c802019-04-10 12:39:10 +0000870 self.config_esp_tra(p)
Neale Ranns2ac885c2019-03-20 18:24:43 +0000871 config_tra_params(p, self.encryption_type)
Neale Ranns53f526b2019-02-25 14:32:02 +0000872
873 self.tun_spd = VppIpsecSpd(self, self.tun_spd_id)
874 self.tun_spd.add_vpp_config()
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200875 VppIpsecSpdItfBinding(self, self.tun_spd, self.tun_if).add_vpp_config()
Neale Ranns53f526b2019-02-25 14:32:02 +0000876
Neale Ranns4f33c802019-04-10 12:39:10 +0000877 self.config_esp_tun(p)
Neale Ranns92e93842019-04-08 07:36:50 +0000878 self.logger.info(self.vapi.ppcli("show ipsec all"))
Neale Ranns53f526b2019-02-25 14:32:02 +0000879
880 d = DpoProto.DPO_PROTO_IP4
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200881 VppIpRoute(
882 self,
883 p.remote_tun_if_host,
884 p.addr_len,
885 [VppRoutePath(self.tun_if.remote_addr[p.addr_type], 0xFFFFFFFF, proto=d)],
886 ).add_vpp_config()
Neale Ranns53f526b2019-02-25 14:32:02 +0000887
888 def tearDown(self):
889 super(TemplateIpsecEspUdp, self).tearDown()
Paul Vinciguerra90cf21b2019-03-13 09:23:05 -0700890
891 def show_commands_at_teardown(self):
892 self.logger.info(self.vapi.cli("show hardware"))
Neale Ranns53f526b2019-02-25 14:32:02 +0000893
894
Neale Ranns49e7ef62019-04-10 17:24:29 +0000895class TestIpsecEspUdp(TemplateIpsecEspUdp, IpsecTra4Tests):
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200896 """Ipsec NAT-T ESP UDP tests"""
897
Neale Ranns53f526b2019-02-25 14:32:02 +0000898 pass
899
900
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200901class MyParameters:
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +0000902 def __init__(self):
Neale Ranns5b891102021-06-28 13:31:28 +0000903 saf = VppEnum.vl_api_ipsec_sad_flags_t
904 flag_esn = saf.IPSEC_API_SAD_FLAG_USE_ESN
905 flag_ar = saf.IPSEC_API_SAD_FLAG_USE_ANTI_REPLAY
906 self.flags = [0, flag_esn, flag_ar]
Neale Ranns4f33c802019-04-10 12:39:10 +0000907 # foreach crypto algorithm
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +0000908 self.algos = {
Klement Sekerad9b0c6f2022-04-26 19:02:15 +0200909 "AES-GCM-128/NONE": {
910 "vpp-crypto": (
911 VppEnum.vl_api_ipsec_crypto_alg_t.IPSEC_API_CRYPTO_ALG_AES_GCM_128
912 ),
913 "vpp-integ": (
914 VppEnum.vl_api_ipsec_integ_alg_t.IPSEC_API_INTEG_ALG_NONE
915 ),
916 "scapy-crypto": "AES-GCM",
917 "scapy-integ": "NULL",
918 "key": b"JPjyOWBeVEQiMe7h",
919 "salt": 0,
920 },
921 "AES-GCM-192/NONE": {
922 "vpp-crypto": (
923 VppEnum.vl_api_ipsec_crypto_alg_t.IPSEC_API_CRYPTO_ALG_AES_GCM_192
924 ),
925 "vpp-integ": (
926 VppEnum.vl_api_ipsec_integ_alg_t.IPSEC_API_INTEG_ALG_NONE
927 ),
928 "scapy-crypto": "AES-GCM",
929 "scapy-integ": "NULL",
930 "key": b"JPjyOWBeVEQiMe7h01234567",
931 "salt": 1010,
932 },
933 "AES-GCM-256/NONE": {
934 "vpp-crypto": (
935 VppEnum.vl_api_ipsec_crypto_alg_t.IPSEC_API_CRYPTO_ALG_AES_GCM_256
936 ),
937 "vpp-integ": (
938 VppEnum.vl_api_ipsec_integ_alg_t.IPSEC_API_INTEG_ALG_NONE
939 ),
940 "scapy-crypto": "AES-GCM",
941 "scapy-integ": "NULL",
942 "key": b"JPjyOWBeVEQiMe7h0123456787654321",
943 "salt": 2020,
944 },
945 "AES-CBC-128/MD5-96": {
946 "vpp-crypto": (
947 VppEnum.vl_api_ipsec_crypto_alg_t.IPSEC_API_CRYPTO_ALG_AES_CBC_128
948 ),
949 "vpp-integ": (
950 VppEnum.vl_api_ipsec_integ_alg_t.IPSEC_API_INTEG_ALG_MD5_96
951 ),
952 "scapy-crypto": "AES-CBC",
953 "scapy-integ": "HMAC-MD5-96",
954 "salt": 0,
955 "key": b"JPjyOWBeVEQiMe7h",
956 },
957 "AES-CBC-192/SHA1-96": {
958 "vpp-crypto": (
959 VppEnum.vl_api_ipsec_crypto_alg_t.IPSEC_API_CRYPTO_ALG_AES_CBC_192
960 ),
961 "vpp-integ": (
962 VppEnum.vl_api_ipsec_integ_alg_t.IPSEC_API_INTEG_ALG_SHA1_96
963 ),
964 "scapy-crypto": "AES-CBC",
965 "scapy-integ": "HMAC-SHA1-96",
966 "salt": 0,
967 "key": b"JPjyOWBeVEQiMe7hJPjyOWBe",
968 },
969 "AES-CBC-256/SHA1-96": {
970 "vpp-crypto": (
971 VppEnum.vl_api_ipsec_crypto_alg_t.IPSEC_API_CRYPTO_ALG_AES_CBC_256
972 ),
973 "vpp-integ": (
974 VppEnum.vl_api_ipsec_integ_alg_t.IPSEC_API_INTEG_ALG_SHA1_96
975 ),
976 "scapy-crypto": "AES-CBC",
977 "scapy-integ": "HMAC-SHA1-96",
978 "salt": 0,
979 "key": b"JPjyOWBeVEQiMe7hJPjyOWBeVEQiMe7h",
980 },
981 "3DES-CBC/SHA1-96": {
982 "vpp-crypto": (
983 VppEnum.vl_api_ipsec_crypto_alg_t.IPSEC_API_CRYPTO_ALG_3DES_CBC
984 ),
985 "vpp-integ": (
986 VppEnum.vl_api_ipsec_integ_alg_t.IPSEC_API_INTEG_ALG_SHA1_96
987 ),
988 "scapy-crypto": "3DES",
989 "scapy-integ": "HMAC-SHA1-96",
990 "salt": 0,
991 "key": b"JPjyOWBeVEQiMe7h00112233",
992 },
993 "NONE/SHA1-96": {
994 "vpp-crypto": (
995 VppEnum.vl_api_ipsec_crypto_alg_t.IPSEC_API_CRYPTO_ALG_NONE
996 ),
997 "vpp-integ": (
998 VppEnum.vl_api_ipsec_integ_alg_t.IPSEC_API_INTEG_ALG_SHA1_96
999 ),
1000 "scapy-crypto": "NULL",
1001 "scapy-integ": "HMAC-SHA1-96",
1002 "salt": 0,
1003 "key": b"JPjyOWBeVEQiMe7h00112233",
1004 },
1005 "AES-CTR-128/SHA1-96": {
1006 "vpp-crypto": (
1007 VppEnum.vl_api_ipsec_crypto_alg_t.IPSEC_API_CRYPTO_ALG_AES_CTR_128
1008 ),
1009 "vpp-integ": (
1010 VppEnum.vl_api_ipsec_integ_alg_t.IPSEC_API_INTEG_ALG_SHA1_96
1011 ),
1012 "scapy-crypto": "AES-CTR",
1013 "scapy-integ": "HMAC-SHA1-96",
1014 "salt": 0,
1015 "key": b"JPjyOWBeVEQiMe7h",
1016 },
1017 "AES-CTR-192/SHA1-96": {
1018 "vpp-crypto": (
1019 VppEnum.vl_api_ipsec_crypto_alg_t.IPSEC_API_CRYPTO_ALG_AES_CTR_192
1020 ),
1021 "vpp-integ": (
1022 VppEnum.vl_api_ipsec_integ_alg_t.IPSEC_API_INTEG_ALG_SHA1_96
1023 ),
1024 "scapy-crypto": "AES-CTR",
1025 "scapy-integ": "HMAC-SHA1-96",
1026 "salt": 1010,
1027 "key": b"JPjyOWBeVEQiMe7hJPjyOWBe",
1028 },
1029 "AES-CTR-256/SHA1-96": {
1030 "vpp-crypto": (
1031 VppEnum.vl_api_ipsec_crypto_alg_t.IPSEC_API_CRYPTO_ALG_AES_CTR_256
1032 ),
1033 "vpp-integ": (
1034 VppEnum.vl_api_ipsec_integ_alg_t.IPSEC_API_INTEG_ALG_SHA1_96
1035 ),
1036 "scapy-crypto": "AES-CTR",
1037 "scapy-integ": "HMAC-SHA1-96",
1038 "salt": 2020,
1039 "key": b"JPjyOWBeVEQiMe7hJPjyOWBeVEQiMe7h",
1040 },
1041 }
Neale Ranns4f33c802019-04-10 12:39:10 +00001042
Neale Ranns4f33c802019-04-10 12:39:10 +00001043
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001044class RunTestIpsecEspAll(ConfigIpsecESP, IpsecTra4, IpsecTra6, IpsecTun4, IpsecTun6):
1045 """Ipsec ESP all Algos"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001046
Neale Ranns8c609af2021-02-25 10:05:32 +00001047 @classmethod
1048 def setUpConstants(cls):
1049 test_args = str.split(cls.__doc__, " ")
1050 engine = test_args[0]
1051 if engine == "async":
Klement Sekera8d815022021-03-15 16:58:10 +01001052 cls.vpp_worker_count = 2
Neale Ranns8c609af2021-02-25 10:05:32 +00001053 super(RunTestIpsecEspAll, cls).setUpConstants()
1054
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001055 def setUp(self):
1056 super(RunTestIpsecEspAll, self).setUp()
1057 test_args = str.split(self.__doc__, " ")
1058
1059 params = MyParameters()
1060 self.engine = test_args[0]
1061 self.flag = params.flags[0]
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001062 if test_args[1] == "ESNon":
Neale Ranns5b891102021-06-28 13:31:28 +00001063 self.flag |= params.flags[1]
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001064 if test_args[2] == "ARon":
Neale Ranns5b891102021-06-28 13:31:28 +00001065 self.flag |= params.flags[2]
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001066
Neale Ranns5b891102021-06-28 13:31:28 +00001067 self.algo = params.algos[test_args[3]]
Neale Ranns8c609af2021-02-25 10:05:32 +00001068 self.async_mode = False
1069 if self.engine == "async":
1070 self.async_mode = True
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001071
1072 def tearDown(self):
1073 super(RunTestIpsecEspAll, self).tearDown()
1074
1075 def run_test(self):
1076 self.run_a_test(self.engine, self.flag, self.algo)
1077
Filip Tehlarefcad1a2020-02-04 09:36:04 +00001078 def run_a_test(self, engine, flag, algo, payload_size=None):
Neale Ranns8c609af2021-02-25 10:05:32 +00001079 if self.async_mode:
1080 self.vapi.cli("set ipsec async mode on")
1081 else:
1082 self.vapi.cli("set crypto handler all %s" % engine)
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001083
Neale Ranns8c609af2021-02-25 10:05:32 +00001084 self.logger.info(self.vapi.cli("show crypto async status"))
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001085 self.ipv4_params = IPsecIPv4Params()
1086 self.ipv6_params = IPsecIPv6Params()
1087
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001088 self.params = {
1089 self.ipv4_params.addr_type: self.ipv4_params,
1090 self.ipv6_params.addr_type: self.ipv6_params,
1091 }
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001092
1093 for _, p in self.params.items():
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001094 p.auth_algo_vpp_id = algo["vpp-integ"]
1095 p.crypt_algo_vpp_id = algo["vpp-crypto"]
1096 p.crypt_algo = algo["scapy-crypto"]
1097 p.auth_algo = algo["scapy-integ"]
1098 p.crypt_key = algo["key"]
1099 p.salt = algo["salt"]
Neale Ranns5b891102021-06-28 13:31:28 +00001100 p.flags = flag
Neale Ranns9ec846c2021-02-09 14:04:02 +00001101 p.outer_flow_label = 243224
Neale Ranns8c609af2021-02-25 10:05:32 +00001102 p.async_mode = self.async_mode
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001103
1104 self.reporter.send_keep_alive(self)
1105
Neale Ranns4f33c802019-04-10 12:39:10 +00001106 #
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001107 # configure the SPDs. SAs, etc
Neale Ranns4f33c802019-04-10 12:39:10 +00001108 #
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001109 self.config_network(self.params.values())
Neale Ranns4f33c802019-04-10 12:39:10 +00001110
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001111 #
1112 # run some traffic.
1113 # An exhautsive 4o6, 6o4 is not necessary
1114 # for each algo
1115 #
1116 self.verify_tra_basic6(count=NUM_PKTS)
1117 self.verify_tra_basic4(count=NUM_PKTS)
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001118 self.verify_tun_66(self.params[socket.AF_INET6], count=NUM_PKTS)
Christian Hoppsfb7e7ed2019-11-03 07:02:15 -05001119 #
1120 # Use an odd-byte payload size to check for correct padding.
1121 #
1122 # 49 + 2 == 51 which should pad +1 to 52 for 4 byte alignment, +5
1123 # to 56 for 8 byte alignment, and +13 to 64 for 64 byte alignment.
1124 # This should catch bugs where the code is incorrectly over-padding
1125 # for algorithms that don't require it
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001126 psz = 49 - len(IP() / ICMP()) if payload_size is None else payload_size
1127 self.verify_tun_44(
1128 self.params[socket.AF_INET], count=NUM_PKTS, payload_size=psz
1129 )
Neale Ranns4f33c802019-04-10 12:39:10 +00001130
Filip Tehlarefcad1a2020-02-04 09:36:04 +00001131 LARGE_PKT_SZ = [
Filip Tehlare4e8c6b2020-02-13 07:49:30 +00001132 1970, # results in 2 chained buffers entering decrypt node
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001133 # but leaving as simple buffer due to ICV removal (tra4)
PiotrX Kleskifdca4dd2020-05-05 14:14:22 +02001134 2004, # footer+ICV will be added to 2nd buffer (tun4)
Nathan Skrzypczak2c77ae42021-09-29 15:36:51 +02001135 4010, # ICV ends up splitted across 2 buffers in esp_decrypt
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001136 # for transport4; transport6 takes normal path
Filip Tehlarefcad1a2020-02-04 09:36:04 +00001137 4020, # same as above but tra4 and tra6 are switched
1138 ]
1139 if self.engine in engines_supporting_chain_bufs:
1140 for sz in LARGE_PKT_SZ:
1141 self.verify_tra_basic4(count=NUM_PKTS, payload_size=sz)
1142 self.verify_tra_basic6(count=NUM_PKTS, payload_size=sz)
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001143 self.verify_tun_66(
1144 self.params[socket.AF_INET6], count=NUM_PKTS, payload_size=sz
1145 )
1146 self.verify_tun_44(
1147 self.params[socket.AF_INET], count=NUM_PKTS, payload_size=sz
1148 )
Filip Tehlarefcad1a2020-02-04 09:36:04 +00001149
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001150 #
Neale Ranns5b891102021-06-28 13:31:28 +00001151 # reconfigure the network and SA to run the
1152 # anti replay tests
1153 #
1154 saf = VppEnum.vl_api_ipsec_sad_flags_t
1155 if flag & saf.IPSEC_API_SAD_FLAG_USE_ANTI_REPLAY:
1156 self.unconfig_network()
1157 self.config_network(self.params.values())
1158 self.verify_tra_anti_replay()
1159
1160 self.unconfig_network()
1161 self.config_network(self.params.values())
1162 self.verify_hi_seq_num()
Neale Rannse11203e2021-09-21 12:34:19 +00001163 self.unconfig_network()
1164 self.config_network(self.params.values())
1165 self.verify_tra_lost()
Neale Ranns5b891102021-06-28 13:31:28 +00001166
1167 #
Neale Rannsf16e9a52021-02-25 19:09:24 +00001168 # swap the handlers while SAs are up
1169 #
Neale Ranns5b891102021-06-28 13:31:28 +00001170 self.unconfig_network()
1171 self.config_network(self.params.values())
Neale Rannsf16e9a52021-02-25 19:09:24 +00001172 for e in engines:
1173 if e != engine:
1174 self.vapi.cli("set crypto handler all %s" % e)
1175 self.verify_tra_basic4(count=NUM_PKTS)
1176
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001177 self.unconfig_network()
juraj.linkes11057662019-07-08 10:22:55 +02001178
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001179
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001180#
1181# To generate test classes, do:
1182# grep '# GEN' test_ipsec_esp.py | sed -e 's/# GEN //g' | bash
1183#
Neale Ranns8c609af2021-02-25 10:05:32 +00001184# GEN for ENG in native ipsecmb openssl; do \
Neale Ranns5b891102021-06-28 13:31:28 +00001185# GEN for ESN in ESNon ESNoff; do for AR in ARon ARoff; do \
1186# GEN for ALG in AES-GCM-128/NONE \
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001187# GEN AES-GCM-192/NONE AES-GCM-256/NONE AES-CBC-128/MD5-96 \
1188# GEN AES-CBC-192/SHA1-96 AES-CBC-256/SHA1-96 \
Benoît Ganne490b9272021-01-22 18:03:09 +01001189# GEN 3DES-CBC/SHA1-96 NONE/SHA1-96 \
1190# GEN AES-CTR-128/SHA1-96 AES-CTR-192/SHA1-96 AES-CTR-256/SHA1-96; do \
Neale Ranns5b891102021-06-28 13:31:28 +00001191# GEN echo -en "\n\nclass "
1192# GEN echo -e "Test_${ENG}_${ESN}_${AR}_${ALG}(RunTestIpsecEspAll):" |
1193# GEN sed -e 's/-/_/g' -e 's#/#_#g' ;
1194# GEN echo ' """'$ENG $ESN $AR $ALG IPSec test'"""' ;
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001195# GEN echo " def test_ipsec(self):";
Neale Ranns5b891102021-06-28 13:31:28 +00001196# GEN echo ' """'$ENG $ESN $AR $ALG IPSec test'"""' ;
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001197# GEN echo " self.run_test()";
Neale Ranns5b891102021-06-28 13:31:28 +00001198# GEN done; done; done; done
Neale Ranns8c609af2021-02-25 10:05:32 +00001199#
Neale Ranns5b891102021-06-28 13:31:28 +00001200# GEN for ESN in ESNon ESNoff; do for AR in ARon ARoff; do \
1201# GEN for ALG in \
Neale Ranns8c609af2021-02-25 10:05:32 +00001202# GEN AES-GCM-128/NONE AES-GCM-192/NONE AES-GCM-256/NONE \
1203# GEN AES-CBC-192/SHA1-96 AES-CBC-256/SHA1-96; do \
Neale Ranns5b891102021-06-28 13:31:28 +00001204# GEN echo -en "\n\nclass "
1205# GEN echo -e "Test_async_${ESN}_${AR}_${ALG}(RunTestIpsecEspAll):" |
1206# GEN sed -e 's/-/_/g' -e 's#/#_#g' ;
1207# GEN echo ' """'async $ESN $AR $ALG IPSec test'"""' ;
Neale Ranns8c609af2021-02-25 10:05:32 +00001208# GEN echo " def test_ipsec(self):";
Neale Ranns5b891102021-06-28 13:31:28 +00001209# GEN echo ' """'async $ESN $AR $ALG IPSec test'"""' ;
Neale Ranns8c609af2021-02-25 10:05:32 +00001210# GEN echo " self.run_test()";
Neale Ranns5b891102021-06-28 13:31:28 +00001211# GEN done; done; done;
1212
1213
1214class Test_native_ESNon_ARon_AES_GCM_128_NONE(RunTestIpsecEspAll):
1215 """native ESNon ARon AES-GCM-128/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001216
Neale Ranns5b891102021-06-28 13:31:28 +00001217 def test_ipsec(self):
1218 """native ESNon ARon AES-GCM-128/NONE IPSec test"""
1219 self.run_test()
1220
1221
1222class Test_native_ESNon_ARon_AES_GCM_192_NONE(RunTestIpsecEspAll):
1223 """native ESNon ARon AES-GCM-192/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001224
Neale Ranns5b891102021-06-28 13:31:28 +00001225 def test_ipsec(self):
1226 """native ESNon ARon AES-GCM-192/NONE IPSec test"""
1227 self.run_test()
1228
1229
1230class Test_native_ESNon_ARon_AES_GCM_256_NONE(RunTestIpsecEspAll):
1231 """native ESNon ARon AES-GCM-256/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001232
Neale Ranns5b891102021-06-28 13:31:28 +00001233 def test_ipsec(self):
1234 """native ESNon ARon AES-GCM-256/NONE IPSec test"""
1235 self.run_test()
1236
1237
1238class Test_native_ESNon_ARon_AES_CBC_128_MD5_96(RunTestIpsecEspAll):
1239 """native ESNon ARon AES-CBC-128/MD5-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001240
Neale Ranns5b891102021-06-28 13:31:28 +00001241 def test_ipsec(self):
1242 """native ESNon ARon AES-CBC-128/MD5-96 IPSec test"""
1243 self.run_test()
1244
1245
1246class Test_native_ESNon_ARon_AES_CBC_192_SHA1_96(RunTestIpsecEspAll):
1247 """native ESNon ARon AES-CBC-192/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001248
Neale Ranns5b891102021-06-28 13:31:28 +00001249 def test_ipsec(self):
1250 """native ESNon ARon AES-CBC-192/SHA1-96 IPSec test"""
1251 self.run_test()
1252
1253
1254class Test_native_ESNon_ARon_AES_CBC_256_SHA1_96(RunTestIpsecEspAll):
1255 """native ESNon ARon AES-CBC-256/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001256
Neale Ranns5b891102021-06-28 13:31:28 +00001257 def test_ipsec(self):
1258 """native ESNon ARon AES-CBC-256/SHA1-96 IPSec test"""
1259 self.run_test()
1260
1261
1262class Test_native_ESNon_ARon_3DES_CBC_SHA1_96(RunTestIpsecEspAll):
1263 """native ESNon ARon 3DES-CBC/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001264
Neale Ranns5b891102021-06-28 13:31:28 +00001265 def test_ipsec(self):
1266 """native ESNon ARon 3DES-CBC/SHA1-96 IPSec test"""
1267 self.run_test()
1268
1269
1270class Test_native_ESNon_ARon_NONE_SHA1_96(RunTestIpsecEspAll):
1271 """native ESNon ARon NONE/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001272
Neale Ranns5b891102021-06-28 13:31:28 +00001273 def test_ipsec(self):
1274 """native ESNon ARon NONE/SHA1-96 IPSec test"""
1275 self.run_test()
1276
1277
1278class Test_native_ESNon_ARon_AES_CTR_128_SHA1_96(RunTestIpsecEspAll):
1279 """native ESNon ARon AES-CTR-128/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001280
Neale Ranns5b891102021-06-28 13:31:28 +00001281 def test_ipsec(self):
1282 """native ESNon ARon AES-CTR-128/SHA1-96 IPSec test"""
1283 self.run_test()
1284
1285
1286class Test_native_ESNon_ARon_AES_CTR_192_SHA1_96(RunTestIpsecEspAll):
1287 """native ESNon ARon AES-CTR-192/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001288
Neale Ranns5b891102021-06-28 13:31:28 +00001289 def test_ipsec(self):
1290 """native ESNon ARon AES-CTR-192/SHA1-96 IPSec test"""
1291 self.run_test()
1292
1293
1294class Test_native_ESNon_ARon_AES_CTR_256_SHA1_96(RunTestIpsecEspAll):
1295 """native ESNon ARon AES-CTR-256/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001296
Neale Ranns5b891102021-06-28 13:31:28 +00001297 def test_ipsec(self):
1298 """native ESNon ARon AES-CTR-256/SHA1-96 IPSec test"""
1299 self.run_test()
1300
1301
1302class Test_native_ESNon_ARoff_AES_GCM_128_NONE(RunTestIpsecEspAll):
1303 """native ESNon ARoff AES-GCM-128/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001304
Neale Ranns5b891102021-06-28 13:31:28 +00001305 def test_ipsec(self):
1306 """native ESNon ARoff AES-GCM-128/NONE IPSec test"""
1307 self.run_test()
1308
1309
1310class Test_native_ESNon_ARoff_AES_GCM_192_NONE(RunTestIpsecEspAll):
1311 """native ESNon ARoff AES-GCM-192/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001312
Neale Ranns5b891102021-06-28 13:31:28 +00001313 def test_ipsec(self):
1314 """native ESNon ARoff AES-GCM-192/NONE IPSec test"""
1315 self.run_test()
1316
1317
1318class Test_native_ESNon_ARoff_AES_GCM_256_NONE(RunTestIpsecEspAll):
1319 """native ESNon ARoff AES-GCM-256/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001320
Neale Ranns5b891102021-06-28 13:31:28 +00001321 def test_ipsec(self):
1322 """native ESNon ARoff AES-GCM-256/NONE IPSec test"""
1323 self.run_test()
1324
1325
1326class Test_native_ESNon_ARoff_AES_CBC_128_MD5_96(RunTestIpsecEspAll):
1327 """native ESNon ARoff AES-CBC-128/MD5-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001328
Neale Ranns5b891102021-06-28 13:31:28 +00001329 def test_ipsec(self):
1330 """native ESNon ARoff AES-CBC-128/MD5-96 IPSec test"""
1331 self.run_test()
1332
1333
1334class Test_native_ESNon_ARoff_AES_CBC_192_SHA1_96(RunTestIpsecEspAll):
1335 """native ESNon ARoff AES-CBC-192/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001336
Neale Ranns5b891102021-06-28 13:31:28 +00001337 def test_ipsec(self):
1338 """native ESNon ARoff AES-CBC-192/SHA1-96 IPSec test"""
1339 self.run_test()
1340
1341
1342class Test_native_ESNon_ARoff_AES_CBC_256_SHA1_96(RunTestIpsecEspAll):
1343 """native ESNon ARoff AES-CBC-256/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001344
Neale Ranns5b891102021-06-28 13:31:28 +00001345 def test_ipsec(self):
1346 """native ESNon ARoff AES-CBC-256/SHA1-96 IPSec test"""
1347 self.run_test()
1348
1349
1350class Test_native_ESNon_ARoff_3DES_CBC_SHA1_96(RunTestIpsecEspAll):
1351 """native ESNon ARoff 3DES-CBC/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001352
Neale Ranns5b891102021-06-28 13:31:28 +00001353 def test_ipsec(self):
1354 """native ESNon ARoff 3DES-CBC/SHA1-96 IPSec test"""
1355 self.run_test()
1356
1357
1358class Test_native_ESNon_ARoff_NONE_SHA1_96(RunTestIpsecEspAll):
1359 """native ESNon ARoff NONE/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001360
Neale Ranns5b891102021-06-28 13:31:28 +00001361 def test_ipsec(self):
1362 """native ESNon ARoff NONE/SHA1-96 IPSec test"""
1363 self.run_test()
1364
1365
1366class Test_native_ESNon_ARoff_AES_CTR_128_SHA1_96(RunTestIpsecEspAll):
1367 """native ESNon ARoff AES-CTR-128/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001368
Neale Ranns5b891102021-06-28 13:31:28 +00001369 def test_ipsec(self):
1370 """native ESNon ARoff AES-CTR-128/SHA1-96 IPSec test"""
1371 self.run_test()
1372
1373
1374class Test_native_ESNon_ARoff_AES_CTR_192_SHA1_96(RunTestIpsecEspAll):
1375 """native ESNon ARoff AES-CTR-192/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001376
Neale Ranns5b891102021-06-28 13:31:28 +00001377 def test_ipsec(self):
1378 """native ESNon ARoff AES-CTR-192/SHA1-96 IPSec test"""
1379 self.run_test()
1380
1381
1382class Test_native_ESNon_ARoff_AES_CTR_256_SHA1_96(RunTestIpsecEspAll):
1383 """native ESNon ARoff AES-CTR-256/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001384
Neale Ranns5b891102021-06-28 13:31:28 +00001385 def test_ipsec(self):
1386 """native ESNon ARoff AES-CTR-256/SHA1-96 IPSec test"""
1387 self.run_test()
1388
1389
1390class Test_native_ESNoff_ARon_AES_GCM_128_NONE(RunTestIpsecEspAll):
1391 """native ESNoff ARon AES-GCM-128/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001392
Neale Ranns5b891102021-06-28 13:31:28 +00001393 def test_ipsec(self):
1394 """native ESNoff ARon AES-GCM-128/NONE IPSec test"""
1395 self.run_test()
1396
1397
1398class Test_native_ESNoff_ARon_AES_GCM_192_NONE(RunTestIpsecEspAll):
1399 """native ESNoff ARon AES-GCM-192/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001400
Neale Ranns5b891102021-06-28 13:31:28 +00001401 def test_ipsec(self):
1402 """native ESNoff ARon AES-GCM-192/NONE IPSec test"""
1403 self.run_test()
1404
1405
1406class Test_native_ESNoff_ARon_AES_GCM_256_NONE(RunTestIpsecEspAll):
1407 """native ESNoff ARon AES-GCM-256/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001408
Neale Ranns5b891102021-06-28 13:31:28 +00001409 def test_ipsec(self):
1410 """native ESNoff ARon AES-GCM-256/NONE IPSec test"""
1411 self.run_test()
1412
1413
1414class Test_native_ESNoff_ARon_AES_CBC_128_MD5_96(RunTestIpsecEspAll):
1415 """native ESNoff ARon AES-CBC-128/MD5-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001416
Neale Ranns5b891102021-06-28 13:31:28 +00001417 def test_ipsec(self):
1418 """native ESNoff ARon AES-CBC-128/MD5-96 IPSec test"""
1419 self.run_test()
1420
1421
1422class Test_native_ESNoff_ARon_AES_CBC_192_SHA1_96(RunTestIpsecEspAll):
1423 """native ESNoff ARon AES-CBC-192/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001424
Neale Ranns5b891102021-06-28 13:31:28 +00001425 def test_ipsec(self):
1426 """native ESNoff ARon AES-CBC-192/SHA1-96 IPSec test"""
1427 self.run_test()
1428
1429
1430class Test_native_ESNoff_ARon_AES_CBC_256_SHA1_96(RunTestIpsecEspAll):
1431 """native ESNoff ARon AES-CBC-256/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001432
Neale Ranns5b891102021-06-28 13:31:28 +00001433 def test_ipsec(self):
1434 """native ESNoff ARon AES-CBC-256/SHA1-96 IPSec test"""
1435 self.run_test()
1436
1437
1438class Test_native_ESNoff_ARon_3DES_CBC_SHA1_96(RunTestIpsecEspAll):
1439 """native ESNoff ARon 3DES-CBC/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001440
Neale Ranns5b891102021-06-28 13:31:28 +00001441 def test_ipsec(self):
1442 """native ESNoff ARon 3DES-CBC/SHA1-96 IPSec test"""
1443 self.run_test()
1444
1445
1446class Test_native_ESNoff_ARon_NONE_SHA1_96(RunTestIpsecEspAll):
1447 """native ESNoff ARon NONE/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001448
Neale Ranns5b891102021-06-28 13:31:28 +00001449 def test_ipsec(self):
1450 """native ESNoff ARon NONE/SHA1-96 IPSec test"""
1451 self.run_test()
1452
1453
1454class Test_native_ESNoff_ARon_AES_CTR_128_SHA1_96(RunTestIpsecEspAll):
1455 """native ESNoff ARon AES-CTR-128/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001456
Neale Ranns5b891102021-06-28 13:31:28 +00001457 def test_ipsec(self):
1458 """native ESNoff ARon AES-CTR-128/SHA1-96 IPSec test"""
1459 self.run_test()
1460
1461
1462class Test_native_ESNoff_ARon_AES_CTR_192_SHA1_96(RunTestIpsecEspAll):
1463 """native ESNoff ARon AES-CTR-192/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001464
Neale Ranns5b891102021-06-28 13:31:28 +00001465 def test_ipsec(self):
1466 """native ESNoff ARon AES-CTR-192/SHA1-96 IPSec test"""
1467 self.run_test()
1468
1469
1470class Test_native_ESNoff_ARon_AES_CTR_256_SHA1_96(RunTestIpsecEspAll):
1471 """native ESNoff ARon AES-CTR-256/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001472
Neale Ranns5b891102021-06-28 13:31:28 +00001473 def test_ipsec(self):
1474 """native ESNoff ARon AES-CTR-256/SHA1-96 IPSec test"""
1475 self.run_test()
1476
1477
1478class Test_native_ESNoff_ARoff_AES_GCM_128_NONE(RunTestIpsecEspAll):
1479 """native ESNoff ARoff AES-GCM-128/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001480
Neale Ranns5b891102021-06-28 13:31:28 +00001481 def test_ipsec(self):
1482 """native ESNoff ARoff AES-GCM-128/NONE IPSec test"""
1483 self.run_test()
1484
1485
1486class Test_native_ESNoff_ARoff_AES_GCM_192_NONE(RunTestIpsecEspAll):
1487 """native ESNoff ARoff AES-GCM-192/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001488
Neale Ranns5b891102021-06-28 13:31:28 +00001489 def test_ipsec(self):
1490 """native ESNoff ARoff AES-GCM-192/NONE IPSec test"""
1491 self.run_test()
1492
1493
1494class Test_native_ESNoff_ARoff_AES_GCM_256_NONE(RunTestIpsecEspAll):
1495 """native ESNoff ARoff AES-GCM-256/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001496
Neale Ranns5b891102021-06-28 13:31:28 +00001497 def test_ipsec(self):
1498 """native ESNoff ARoff AES-GCM-256/NONE IPSec test"""
1499 self.run_test()
1500
1501
1502class Test_native_ESNoff_ARoff_AES_CBC_128_MD5_96(RunTestIpsecEspAll):
1503 """native ESNoff ARoff AES-CBC-128/MD5-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001504
Neale Ranns5b891102021-06-28 13:31:28 +00001505 def test_ipsec(self):
1506 """native ESNoff ARoff AES-CBC-128/MD5-96 IPSec test"""
1507 self.run_test()
1508
1509
1510class Test_native_ESNoff_ARoff_AES_CBC_192_SHA1_96(RunTestIpsecEspAll):
1511 """native ESNoff ARoff AES-CBC-192/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001512
Neale Ranns5b891102021-06-28 13:31:28 +00001513 def test_ipsec(self):
1514 """native ESNoff ARoff AES-CBC-192/SHA1-96 IPSec test"""
1515 self.run_test()
1516
1517
1518class Test_native_ESNoff_ARoff_AES_CBC_256_SHA1_96(RunTestIpsecEspAll):
1519 """native ESNoff ARoff AES-CBC-256/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001520
Neale Ranns5b891102021-06-28 13:31:28 +00001521 def test_ipsec(self):
1522 """native ESNoff ARoff AES-CBC-256/SHA1-96 IPSec test"""
1523 self.run_test()
1524
1525
1526class Test_native_ESNoff_ARoff_3DES_CBC_SHA1_96(RunTestIpsecEspAll):
1527 """native ESNoff ARoff 3DES-CBC/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001528
Neale Ranns5b891102021-06-28 13:31:28 +00001529 def test_ipsec(self):
1530 """native ESNoff ARoff 3DES-CBC/SHA1-96 IPSec test"""
1531 self.run_test()
1532
1533
1534class Test_native_ESNoff_ARoff_NONE_SHA1_96(RunTestIpsecEspAll):
1535 """native ESNoff ARoff NONE/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001536
Neale Ranns5b891102021-06-28 13:31:28 +00001537 def test_ipsec(self):
1538 """native ESNoff ARoff NONE/SHA1-96 IPSec test"""
1539 self.run_test()
1540
1541
1542class Test_native_ESNoff_ARoff_AES_CTR_128_SHA1_96(RunTestIpsecEspAll):
1543 """native ESNoff ARoff AES-CTR-128/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001544
Neale Ranns5b891102021-06-28 13:31:28 +00001545 def test_ipsec(self):
1546 """native ESNoff ARoff AES-CTR-128/SHA1-96 IPSec test"""
1547 self.run_test()
1548
1549
1550class Test_native_ESNoff_ARoff_AES_CTR_192_SHA1_96(RunTestIpsecEspAll):
1551 """native ESNoff ARoff AES-CTR-192/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001552
Neale Ranns5b891102021-06-28 13:31:28 +00001553 def test_ipsec(self):
1554 """native ESNoff ARoff AES-CTR-192/SHA1-96 IPSec test"""
1555 self.run_test()
1556
1557
1558class Test_native_ESNoff_ARoff_AES_CTR_256_SHA1_96(RunTestIpsecEspAll):
1559 """native ESNoff ARoff AES-CTR-256/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001560
Neale Ranns5b891102021-06-28 13:31:28 +00001561 def test_ipsec(self):
1562 """native ESNoff ARoff AES-CTR-256/SHA1-96 IPSec test"""
1563 self.run_test()
1564
1565
1566class Test_ipsecmb_ESNon_ARon_AES_GCM_128_NONE(RunTestIpsecEspAll):
1567 """ipsecmb ESNon ARon AES-GCM-128/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001568
Neale Ranns5b891102021-06-28 13:31:28 +00001569 def test_ipsec(self):
1570 """ipsecmb ESNon ARon AES-GCM-128/NONE IPSec test"""
1571 self.run_test()
1572
1573
1574class Test_ipsecmb_ESNon_ARon_AES_GCM_192_NONE(RunTestIpsecEspAll):
1575 """ipsecmb ESNon ARon AES-GCM-192/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001576
Neale Ranns5b891102021-06-28 13:31:28 +00001577 def test_ipsec(self):
1578 """ipsecmb ESNon ARon AES-GCM-192/NONE IPSec test"""
1579 self.run_test()
1580
1581
1582class Test_ipsecmb_ESNon_ARon_AES_GCM_256_NONE(RunTestIpsecEspAll):
1583 """ipsecmb ESNon ARon AES-GCM-256/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001584
Neale Ranns5b891102021-06-28 13:31:28 +00001585 def test_ipsec(self):
1586 """ipsecmb ESNon ARon AES-GCM-256/NONE IPSec test"""
1587 self.run_test()
1588
1589
1590class Test_ipsecmb_ESNon_ARon_AES_CBC_128_MD5_96(RunTestIpsecEspAll):
1591 """ipsecmb ESNon ARon AES-CBC-128/MD5-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001592
Neale Ranns5b891102021-06-28 13:31:28 +00001593 def test_ipsec(self):
1594 """ipsecmb ESNon ARon AES-CBC-128/MD5-96 IPSec test"""
1595 self.run_test()
1596
1597
1598class Test_ipsecmb_ESNon_ARon_AES_CBC_192_SHA1_96(RunTestIpsecEspAll):
1599 """ipsecmb ESNon ARon AES-CBC-192/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001600
Neale Ranns5b891102021-06-28 13:31:28 +00001601 def test_ipsec(self):
1602 """ipsecmb ESNon ARon AES-CBC-192/SHA1-96 IPSec test"""
1603 self.run_test()
1604
1605
1606class Test_ipsecmb_ESNon_ARon_AES_CBC_256_SHA1_96(RunTestIpsecEspAll):
1607 """ipsecmb ESNon ARon AES-CBC-256/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001608
Neale Ranns5b891102021-06-28 13:31:28 +00001609 def test_ipsec(self):
1610 """ipsecmb ESNon ARon AES-CBC-256/SHA1-96 IPSec test"""
1611 self.run_test()
1612
1613
1614class Test_ipsecmb_ESNon_ARon_3DES_CBC_SHA1_96(RunTestIpsecEspAll):
1615 """ipsecmb ESNon ARon 3DES-CBC/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001616
Neale Ranns5b891102021-06-28 13:31:28 +00001617 def test_ipsec(self):
1618 """ipsecmb ESNon ARon 3DES-CBC/SHA1-96 IPSec test"""
1619 self.run_test()
1620
1621
1622class Test_ipsecmb_ESNon_ARon_NONE_SHA1_96(RunTestIpsecEspAll):
1623 """ipsecmb ESNon ARon NONE/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001624
Neale Ranns5b891102021-06-28 13:31:28 +00001625 def test_ipsec(self):
1626 """ipsecmb ESNon ARon NONE/SHA1-96 IPSec test"""
1627 self.run_test()
1628
1629
1630class Test_ipsecmb_ESNon_ARon_AES_CTR_128_SHA1_96(RunTestIpsecEspAll):
1631 """ipsecmb ESNon ARon AES-CTR-128/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001632
Neale Ranns5b891102021-06-28 13:31:28 +00001633 def test_ipsec(self):
1634 """ipsecmb ESNon ARon AES-CTR-128/SHA1-96 IPSec test"""
1635 self.run_test()
1636
1637
1638class Test_ipsecmb_ESNon_ARon_AES_CTR_192_SHA1_96(RunTestIpsecEspAll):
1639 """ipsecmb ESNon ARon AES-CTR-192/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001640
Neale Ranns5b891102021-06-28 13:31:28 +00001641 def test_ipsec(self):
1642 """ipsecmb ESNon ARon AES-CTR-192/SHA1-96 IPSec test"""
1643 self.run_test()
1644
1645
1646class Test_ipsecmb_ESNon_ARon_AES_CTR_256_SHA1_96(RunTestIpsecEspAll):
1647 """ipsecmb ESNon ARon AES-CTR-256/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001648
Neale Ranns5b891102021-06-28 13:31:28 +00001649 def test_ipsec(self):
1650 """ipsecmb ESNon ARon AES-CTR-256/SHA1-96 IPSec test"""
1651 self.run_test()
1652
1653
1654class Test_ipsecmb_ESNon_ARoff_AES_GCM_128_NONE(RunTestIpsecEspAll):
1655 """ipsecmb ESNon ARoff AES-GCM-128/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001656
Neale Ranns5b891102021-06-28 13:31:28 +00001657 def test_ipsec(self):
1658 """ipsecmb ESNon ARoff AES-GCM-128/NONE IPSec test"""
1659 self.run_test()
1660
1661
1662class Test_ipsecmb_ESNon_ARoff_AES_GCM_192_NONE(RunTestIpsecEspAll):
1663 """ipsecmb ESNon ARoff AES-GCM-192/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001664
Neale Ranns5b891102021-06-28 13:31:28 +00001665 def test_ipsec(self):
1666 """ipsecmb ESNon ARoff AES-GCM-192/NONE IPSec test"""
1667 self.run_test()
1668
1669
1670class Test_ipsecmb_ESNon_ARoff_AES_GCM_256_NONE(RunTestIpsecEspAll):
1671 """ipsecmb ESNon ARoff AES-GCM-256/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001672
Neale Ranns5b891102021-06-28 13:31:28 +00001673 def test_ipsec(self):
1674 """ipsecmb ESNon ARoff AES-GCM-256/NONE IPSec test"""
1675 self.run_test()
1676
1677
1678class Test_ipsecmb_ESNon_ARoff_AES_CBC_128_MD5_96(RunTestIpsecEspAll):
1679 """ipsecmb ESNon ARoff AES-CBC-128/MD5-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001680
Neale Ranns5b891102021-06-28 13:31:28 +00001681 def test_ipsec(self):
1682 """ipsecmb ESNon ARoff AES-CBC-128/MD5-96 IPSec test"""
1683 self.run_test()
1684
1685
1686class Test_ipsecmb_ESNon_ARoff_AES_CBC_192_SHA1_96(RunTestIpsecEspAll):
1687 """ipsecmb ESNon ARoff AES-CBC-192/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001688
Neale Ranns5b891102021-06-28 13:31:28 +00001689 def test_ipsec(self):
1690 """ipsecmb ESNon ARoff AES-CBC-192/SHA1-96 IPSec test"""
1691 self.run_test()
1692
1693
1694class Test_ipsecmb_ESNon_ARoff_AES_CBC_256_SHA1_96(RunTestIpsecEspAll):
1695 """ipsecmb ESNon ARoff AES-CBC-256/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001696
Neale Ranns5b891102021-06-28 13:31:28 +00001697 def test_ipsec(self):
1698 """ipsecmb ESNon ARoff AES-CBC-256/SHA1-96 IPSec test"""
1699 self.run_test()
1700
1701
1702class Test_ipsecmb_ESNon_ARoff_3DES_CBC_SHA1_96(RunTestIpsecEspAll):
1703 """ipsecmb ESNon ARoff 3DES-CBC/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001704
Neale Ranns5b891102021-06-28 13:31:28 +00001705 def test_ipsec(self):
1706 """ipsecmb ESNon ARoff 3DES-CBC/SHA1-96 IPSec test"""
1707 self.run_test()
1708
1709
1710class Test_ipsecmb_ESNon_ARoff_NONE_SHA1_96(RunTestIpsecEspAll):
1711 """ipsecmb ESNon ARoff NONE/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001712
Neale Ranns5b891102021-06-28 13:31:28 +00001713 def test_ipsec(self):
1714 """ipsecmb ESNon ARoff NONE/SHA1-96 IPSec test"""
1715 self.run_test()
1716
1717
1718class Test_ipsecmb_ESNon_ARoff_AES_CTR_128_SHA1_96(RunTestIpsecEspAll):
1719 """ipsecmb ESNon ARoff AES-CTR-128/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001720
Neale Ranns5b891102021-06-28 13:31:28 +00001721 def test_ipsec(self):
1722 """ipsecmb ESNon ARoff AES-CTR-128/SHA1-96 IPSec test"""
1723 self.run_test()
1724
1725
1726class Test_ipsecmb_ESNon_ARoff_AES_CTR_192_SHA1_96(RunTestIpsecEspAll):
1727 """ipsecmb ESNon ARoff AES-CTR-192/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001728
Neale Ranns5b891102021-06-28 13:31:28 +00001729 def test_ipsec(self):
1730 """ipsecmb ESNon ARoff AES-CTR-192/SHA1-96 IPSec test"""
1731 self.run_test()
1732
1733
1734class Test_ipsecmb_ESNon_ARoff_AES_CTR_256_SHA1_96(RunTestIpsecEspAll):
1735 """ipsecmb ESNon ARoff AES-CTR-256/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001736
Neale Ranns5b891102021-06-28 13:31:28 +00001737 def test_ipsec(self):
1738 """ipsecmb ESNon ARoff AES-CTR-256/SHA1-96 IPSec test"""
1739 self.run_test()
1740
1741
1742class Test_ipsecmb_ESNoff_ARon_AES_GCM_128_NONE(RunTestIpsecEspAll):
1743 """ipsecmb ESNoff ARon AES-GCM-128/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001744
Neale Ranns5b891102021-06-28 13:31:28 +00001745 def test_ipsec(self):
1746 """ipsecmb ESNoff ARon AES-GCM-128/NONE IPSec test"""
1747 self.run_test()
1748
1749
1750class Test_ipsecmb_ESNoff_ARon_AES_GCM_192_NONE(RunTestIpsecEspAll):
1751 """ipsecmb ESNoff ARon AES-GCM-192/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001752
Neale Ranns5b891102021-06-28 13:31:28 +00001753 def test_ipsec(self):
1754 """ipsecmb ESNoff ARon AES-GCM-192/NONE IPSec test"""
1755 self.run_test()
1756
1757
1758class Test_ipsecmb_ESNoff_ARon_AES_GCM_256_NONE(RunTestIpsecEspAll):
1759 """ipsecmb ESNoff ARon AES-GCM-256/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001760
Neale Ranns5b891102021-06-28 13:31:28 +00001761 def test_ipsec(self):
1762 """ipsecmb ESNoff ARon AES-GCM-256/NONE IPSec test"""
1763 self.run_test()
1764
1765
1766class Test_ipsecmb_ESNoff_ARon_AES_CBC_128_MD5_96(RunTestIpsecEspAll):
1767 """ipsecmb ESNoff ARon AES-CBC-128/MD5-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001768
Neale Ranns5b891102021-06-28 13:31:28 +00001769 def test_ipsec(self):
1770 """ipsecmb ESNoff ARon AES-CBC-128/MD5-96 IPSec test"""
1771 self.run_test()
1772
1773
1774class Test_ipsecmb_ESNoff_ARon_AES_CBC_192_SHA1_96(RunTestIpsecEspAll):
1775 """ipsecmb ESNoff ARon AES-CBC-192/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001776
Neale Ranns5b891102021-06-28 13:31:28 +00001777 def test_ipsec(self):
1778 """ipsecmb ESNoff ARon AES-CBC-192/SHA1-96 IPSec test"""
1779 self.run_test()
1780
1781
1782class Test_ipsecmb_ESNoff_ARon_AES_CBC_256_SHA1_96(RunTestIpsecEspAll):
1783 """ipsecmb ESNoff ARon AES-CBC-256/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001784
Neale Ranns5b891102021-06-28 13:31:28 +00001785 def test_ipsec(self):
1786 """ipsecmb ESNoff ARon AES-CBC-256/SHA1-96 IPSec test"""
1787 self.run_test()
1788
1789
1790class Test_ipsecmb_ESNoff_ARon_3DES_CBC_SHA1_96(RunTestIpsecEspAll):
1791 """ipsecmb ESNoff ARon 3DES-CBC/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001792
Neale Ranns5b891102021-06-28 13:31:28 +00001793 def test_ipsec(self):
1794 """ipsecmb ESNoff ARon 3DES-CBC/SHA1-96 IPSec test"""
1795 self.run_test()
1796
1797
1798class Test_ipsecmb_ESNoff_ARon_NONE_SHA1_96(RunTestIpsecEspAll):
1799 """ipsecmb ESNoff ARon NONE/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001800
Neale Ranns5b891102021-06-28 13:31:28 +00001801 def test_ipsec(self):
1802 """ipsecmb ESNoff ARon NONE/SHA1-96 IPSec test"""
1803 self.run_test()
1804
1805
1806class Test_ipsecmb_ESNoff_ARon_AES_CTR_128_SHA1_96(RunTestIpsecEspAll):
1807 """ipsecmb ESNoff ARon AES-CTR-128/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001808
Neale Ranns5b891102021-06-28 13:31:28 +00001809 def test_ipsec(self):
1810 """ipsecmb ESNoff ARon AES-CTR-128/SHA1-96 IPSec test"""
1811 self.run_test()
1812
1813
1814class Test_ipsecmb_ESNoff_ARon_AES_CTR_192_SHA1_96(RunTestIpsecEspAll):
1815 """ipsecmb ESNoff ARon AES-CTR-192/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001816
Neale Ranns5b891102021-06-28 13:31:28 +00001817 def test_ipsec(self):
1818 """ipsecmb ESNoff ARon AES-CTR-192/SHA1-96 IPSec test"""
1819 self.run_test()
Neale Ranns4f33c802019-04-10 12:39:10 +00001820
Neale Ranns4f33c802019-04-10 12:39:10 +00001821
Neale Ranns5b891102021-06-28 13:31:28 +00001822class Test_ipsecmb_ESNoff_ARon_AES_CTR_256_SHA1_96(RunTestIpsecEspAll):
1823 """ipsecmb ESNoff ARon AES-CTR-256/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001824
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001825 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00001826 """ipsecmb ESNoff ARon AES-CTR-256/SHA1-96 IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001827 self.run_test()
Neale Ranns4f33c802019-04-10 12:39:10 +00001828
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001829
Neale Ranns5b891102021-06-28 13:31:28 +00001830class Test_ipsecmb_ESNoff_ARoff_AES_GCM_128_NONE(RunTestIpsecEspAll):
1831 """ipsecmb ESNoff ARoff AES-GCM-128/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001832
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001833 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00001834 """ipsecmb ESNoff ARoff AES-GCM-128/NONE IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001835 self.run_test()
1836
1837
Neale Ranns5b891102021-06-28 13:31:28 +00001838class Test_ipsecmb_ESNoff_ARoff_AES_GCM_192_NONE(RunTestIpsecEspAll):
1839 """ipsecmb ESNoff ARoff AES-GCM-192/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001840
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001841 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00001842 """ipsecmb ESNoff ARoff AES-GCM-192/NONE IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001843 self.run_test()
1844
1845
Neale Ranns5b891102021-06-28 13:31:28 +00001846class Test_ipsecmb_ESNoff_ARoff_AES_GCM_256_NONE(RunTestIpsecEspAll):
1847 """ipsecmb ESNoff ARoff AES-GCM-256/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001848
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001849 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00001850 """ipsecmb ESNoff ARoff AES-GCM-256/NONE IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001851 self.run_test()
1852
1853
Neale Ranns5b891102021-06-28 13:31:28 +00001854class Test_ipsecmb_ESNoff_ARoff_AES_CBC_128_MD5_96(RunTestIpsecEspAll):
1855 """ipsecmb ESNoff ARoff AES-CBC-128/MD5-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001856
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001857 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00001858 """ipsecmb ESNoff ARoff AES-CBC-128/MD5-96 IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001859 self.run_test()
1860
1861
Neale Ranns5b891102021-06-28 13:31:28 +00001862class Test_ipsecmb_ESNoff_ARoff_AES_CBC_192_SHA1_96(RunTestIpsecEspAll):
1863 """ipsecmb ESNoff ARoff AES-CBC-192/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001864
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001865 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00001866 """ipsecmb ESNoff ARoff AES-CBC-192/SHA1-96 IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001867 self.run_test()
1868
1869
Neale Ranns5b891102021-06-28 13:31:28 +00001870class Test_ipsecmb_ESNoff_ARoff_AES_CBC_256_SHA1_96(RunTestIpsecEspAll):
1871 """ipsecmb ESNoff ARoff AES-CBC-256/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001872
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001873 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00001874 """ipsecmb ESNoff ARoff AES-CBC-256/SHA1-96 IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001875 self.run_test()
1876
1877
Neale Ranns5b891102021-06-28 13:31:28 +00001878class Test_ipsecmb_ESNoff_ARoff_3DES_CBC_SHA1_96(RunTestIpsecEspAll):
1879 """ipsecmb ESNoff ARoff 3DES-CBC/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001880
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001881 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00001882 """ipsecmb ESNoff ARoff 3DES-CBC/SHA1-96 IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001883 self.run_test()
1884
1885
Neale Ranns5b891102021-06-28 13:31:28 +00001886class Test_ipsecmb_ESNoff_ARoff_NONE_SHA1_96(RunTestIpsecEspAll):
1887 """ipsecmb ESNoff ARoff NONE/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001888
Benoît Ganne490b9272021-01-22 18:03:09 +01001889 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00001890 """ipsecmb ESNoff ARoff NONE/SHA1-96 IPSec test"""
Benoît Ganne490b9272021-01-22 18:03:09 +01001891 self.run_test()
1892
1893
Neale Ranns5b891102021-06-28 13:31:28 +00001894class Test_ipsecmb_ESNoff_ARoff_AES_CTR_128_SHA1_96(RunTestIpsecEspAll):
1895 """ipsecmb ESNoff ARoff AES-CTR-128/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001896
Benoît Ganne490b9272021-01-22 18:03:09 +01001897 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00001898 """ipsecmb ESNoff ARoff AES-CTR-128/SHA1-96 IPSec test"""
Benoît Ganne490b9272021-01-22 18:03:09 +01001899 self.run_test()
1900
1901
Neale Ranns5b891102021-06-28 13:31:28 +00001902class Test_ipsecmb_ESNoff_ARoff_AES_CTR_192_SHA1_96(RunTestIpsecEspAll):
1903 """ipsecmb ESNoff ARoff AES-CTR-192/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001904
Benoît Ganne490b9272021-01-22 18:03:09 +01001905 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00001906 """ipsecmb ESNoff ARoff AES-CTR-192/SHA1-96 IPSec test"""
Benoît Ganne490b9272021-01-22 18:03:09 +01001907 self.run_test()
1908
1909
Neale Ranns5b891102021-06-28 13:31:28 +00001910class Test_ipsecmb_ESNoff_ARoff_AES_CTR_256_SHA1_96(RunTestIpsecEspAll):
1911 """ipsecmb ESNoff ARoff AES-CTR-256/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001912
Neale Ranns9c23ff82021-06-25 13:30:50 +00001913 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00001914 """ipsecmb ESNoff ARoff AES-CTR-256/SHA1-96 IPSec test"""
Neale Ranns9c23ff82021-06-25 13:30:50 +00001915 self.run_test()
1916
1917
Neale Ranns5b891102021-06-28 13:31:28 +00001918class Test_openssl_ESNon_ARon_AES_GCM_128_NONE(RunTestIpsecEspAll):
1919 """openssl ESNon ARon AES-GCM-128/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001920
Neale Ranns9c23ff82021-06-25 13:30:50 +00001921 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00001922 """openssl ESNon ARon AES-GCM-128/NONE IPSec test"""
Neale Ranns9c23ff82021-06-25 13:30:50 +00001923 self.run_test()
1924
1925
Neale Ranns5b891102021-06-28 13:31:28 +00001926class Test_openssl_ESNon_ARon_AES_GCM_192_NONE(RunTestIpsecEspAll):
1927 """openssl ESNon ARon AES-GCM-192/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001928
Neale Ranns9c23ff82021-06-25 13:30:50 +00001929 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00001930 """openssl ESNon ARon AES-GCM-192/NONE IPSec test"""
Neale Ranns9c23ff82021-06-25 13:30:50 +00001931 self.run_test()
1932
1933
Neale Ranns5b891102021-06-28 13:31:28 +00001934class Test_openssl_ESNon_ARon_AES_GCM_256_NONE(RunTestIpsecEspAll):
1935 """openssl ESNon ARon AES-GCM-256/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001936
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001937 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00001938 """openssl ESNon ARon AES-GCM-256/NONE IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001939 self.run_test()
1940
1941
Neale Ranns5b891102021-06-28 13:31:28 +00001942class Test_openssl_ESNon_ARon_AES_CBC_128_MD5_96(RunTestIpsecEspAll):
1943 """openssl ESNon ARon AES-CBC-128/MD5-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001944
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001945 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00001946 """openssl ESNon ARon AES-CBC-128/MD5-96 IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001947 self.run_test()
1948
1949
Neale Ranns5b891102021-06-28 13:31:28 +00001950class Test_openssl_ESNon_ARon_AES_CBC_192_SHA1_96(RunTestIpsecEspAll):
1951 """openssl ESNon ARon AES-CBC-192/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001952
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001953 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00001954 """openssl ESNon ARon AES-CBC-192/SHA1-96 IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001955 self.run_test()
1956
1957
Neale Ranns5b891102021-06-28 13:31:28 +00001958class Test_openssl_ESNon_ARon_AES_CBC_256_SHA1_96(RunTestIpsecEspAll):
1959 """openssl ESNon ARon AES-CBC-256/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001960
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001961 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00001962 """openssl ESNon ARon AES-CBC-256/SHA1-96 IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001963 self.run_test()
1964
1965
Neale Ranns5b891102021-06-28 13:31:28 +00001966class Test_openssl_ESNon_ARon_3DES_CBC_SHA1_96(RunTestIpsecEspAll):
1967 """openssl ESNon ARon 3DES-CBC/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001968
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001969 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00001970 """openssl ESNon ARon 3DES-CBC/SHA1-96 IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00001971 self.run_test()
1972
1973
Neale Ranns5b891102021-06-28 13:31:28 +00001974class Test_openssl_ESNon_ARon_NONE_SHA1_96(RunTestIpsecEspAll):
1975 """openssl ESNon ARon NONE/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001976
Benoît Ganne490b9272021-01-22 18:03:09 +01001977 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00001978 """openssl ESNon ARon NONE/SHA1-96 IPSec test"""
Benoît Ganne490b9272021-01-22 18:03:09 +01001979 self.run_test()
1980
1981
Neale Ranns5b891102021-06-28 13:31:28 +00001982class Test_openssl_ESNon_ARon_AES_CTR_128_SHA1_96(RunTestIpsecEspAll):
1983 """openssl ESNon ARon AES-CTR-128/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001984
Benoît Ganne490b9272021-01-22 18:03:09 +01001985 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00001986 """openssl ESNon ARon AES-CTR-128/SHA1-96 IPSec test"""
Benoît Ganne490b9272021-01-22 18:03:09 +01001987 self.run_test()
1988
1989
Neale Ranns5b891102021-06-28 13:31:28 +00001990class Test_openssl_ESNon_ARon_AES_CTR_192_SHA1_96(RunTestIpsecEspAll):
1991 """openssl ESNon ARon AES-CTR-192/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02001992
Benoît Ganne490b9272021-01-22 18:03:09 +01001993 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00001994 """openssl ESNon ARon AES-CTR-192/SHA1-96 IPSec test"""
Benoît Ganne490b9272021-01-22 18:03:09 +01001995 self.run_test()
1996
1997
Neale Ranns5b891102021-06-28 13:31:28 +00001998class Test_openssl_ESNon_ARon_AES_CTR_256_SHA1_96(RunTestIpsecEspAll):
1999 """openssl ESNon ARon AES-CTR-256/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002000
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002001 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002002 """openssl ESNon ARon AES-CTR-256/SHA1-96 IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002003 self.run_test()
2004
2005
Neale Ranns5b891102021-06-28 13:31:28 +00002006class Test_openssl_ESNon_ARoff_AES_GCM_128_NONE(RunTestIpsecEspAll):
2007 """openssl ESNon ARoff AES-GCM-128/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002008
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002009 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002010 """openssl ESNon ARoff AES-GCM-128/NONE IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002011 self.run_test()
2012
2013
Neale Ranns5b891102021-06-28 13:31:28 +00002014class Test_openssl_ESNon_ARoff_AES_GCM_192_NONE(RunTestIpsecEspAll):
2015 """openssl ESNon ARoff AES-GCM-192/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002016
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002017 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002018 """openssl ESNon ARoff AES-GCM-192/NONE IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002019 self.run_test()
2020
2021
Neale Ranns5b891102021-06-28 13:31:28 +00002022class Test_openssl_ESNon_ARoff_AES_GCM_256_NONE(RunTestIpsecEspAll):
2023 """openssl ESNon ARoff AES-GCM-256/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002024
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002025 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002026 """openssl ESNon ARoff AES-GCM-256/NONE IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002027 self.run_test()
2028
2029
Neale Ranns5b891102021-06-28 13:31:28 +00002030class Test_openssl_ESNon_ARoff_AES_CBC_128_MD5_96(RunTestIpsecEspAll):
2031 """openssl ESNon ARoff AES-CBC-128/MD5-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002032
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002033 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002034 """openssl ESNon ARoff AES-CBC-128/MD5-96 IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002035 self.run_test()
2036
2037
Neale Ranns5b891102021-06-28 13:31:28 +00002038class Test_openssl_ESNon_ARoff_AES_CBC_192_SHA1_96(RunTestIpsecEspAll):
2039 """openssl ESNon ARoff AES-CBC-192/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002040
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002041 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002042 """openssl ESNon ARoff AES-CBC-192/SHA1-96 IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002043 self.run_test()
2044
2045
Neale Ranns5b891102021-06-28 13:31:28 +00002046class Test_openssl_ESNon_ARoff_AES_CBC_256_SHA1_96(RunTestIpsecEspAll):
2047 """openssl ESNon ARoff AES-CBC-256/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002048
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002049 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002050 """openssl ESNon ARoff AES-CBC-256/SHA1-96 IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002051 self.run_test()
2052
2053
Neale Ranns5b891102021-06-28 13:31:28 +00002054class Test_openssl_ESNon_ARoff_3DES_CBC_SHA1_96(RunTestIpsecEspAll):
2055 """openssl ESNon ARoff 3DES-CBC/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002056
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002057 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002058 """openssl ESNon ARoff 3DES-CBC/SHA1-96 IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002059 self.run_test()
2060
2061
Neale Ranns5b891102021-06-28 13:31:28 +00002062class Test_openssl_ESNon_ARoff_NONE_SHA1_96(RunTestIpsecEspAll):
2063 """openssl ESNon ARoff NONE/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002064
Benoît Ganne490b9272021-01-22 18:03:09 +01002065 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002066 """openssl ESNon ARoff NONE/SHA1-96 IPSec test"""
Benoît Ganne490b9272021-01-22 18:03:09 +01002067 self.run_test()
2068
2069
Neale Ranns5b891102021-06-28 13:31:28 +00002070class Test_openssl_ESNon_ARoff_AES_CTR_128_SHA1_96(RunTestIpsecEspAll):
2071 """openssl ESNon ARoff AES-CTR-128/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002072
Benoît Ganne490b9272021-01-22 18:03:09 +01002073 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002074 """openssl ESNon ARoff AES-CTR-128/SHA1-96 IPSec test"""
Benoît Ganne490b9272021-01-22 18:03:09 +01002075 self.run_test()
2076
2077
Neale Ranns5b891102021-06-28 13:31:28 +00002078class Test_openssl_ESNon_ARoff_AES_CTR_192_SHA1_96(RunTestIpsecEspAll):
2079 """openssl ESNon ARoff AES-CTR-192/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002080
Benoît Ganne490b9272021-01-22 18:03:09 +01002081 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002082 """openssl ESNon ARoff AES-CTR-192/SHA1-96 IPSec test"""
Benoît Ganne490b9272021-01-22 18:03:09 +01002083 self.run_test()
2084
2085
Neale Ranns5b891102021-06-28 13:31:28 +00002086class Test_openssl_ESNon_ARoff_AES_CTR_256_SHA1_96(RunTestIpsecEspAll):
2087 """openssl ESNon ARoff AES-CTR-256/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002088
Neale Ranns9c23ff82021-06-25 13:30:50 +00002089 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002090 """openssl ESNon ARoff AES-CTR-256/SHA1-96 IPSec test"""
Neale Ranns9c23ff82021-06-25 13:30:50 +00002091 self.run_test()
2092
2093
Neale Ranns5b891102021-06-28 13:31:28 +00002094class Test_openssl_ESNoff_ARon_AES_GCM_128_NONE(RunTestIpsecEspAll):
2095 """openssl ESNoff ARon AES-GCM-128/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002096
Neale Ranns9c23ff82021-06-25 13:30:50 +00002097 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002098 """openssl ESNoff ARon AES-GCM-128/NONE IPSec test"""
Neale Ranns9c23ff82021-06-25 13:30:50 +00002099 self.run_test()
2100
2101
Neale Ranns5b891102021-06-28 13:31:28 +00002102class Test_openssl_ESNoff_ARon_AES_GCM_192_NONE(RunTestIpsecEspAll):
2103 """openssl ESNoff ARon AES-GCM-192/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002104
Neale Ranns9c23ff82021-06-25 13:30:50 +00002105 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002106 """openssl ESNoff ARon AES-GCM-192/NONE IPSec test"""
Neale Ranns9c23ff82021-06-25 13:30:50 +00002107 self.run_test()
2108
2109
Neale Ranns5b891102021-06-28 13:31:28 +00002110class Test_openssl_ESNoff_ARon_AES_GCM_256_NONE(RunTestIpsecEspAll):
2111 """openssl ESNoff ARon AES-GCM-256/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002112
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002113 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002114 """openssl ESNoff ARon AES-GCM-256/NONE IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002115 self.run_test()
2116
2117
Neale Ranns5b891102021-06-28 13:31:28 +00002118class Test_openssl_ESNoff_ARon_AES_CBC_128_MD5_96(RunTestIpsecEspAll):
2119 """openssl ESNoff ARon AES-CBC-128/MD5-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002120
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002121 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002122 """openssl ESNoff ARon AES-CBC-128/MD5-96 IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002123 self.run_test()
2124
2125
Neale Ranns5b891102021-06-28 13:31:28 +00002126class Test_openssl_ESNoff_ARon_AES_CBC_192_SHA1_96(RunTestIpsecEspAll):
2127 """openssl ESNoff ARon AES-CBC-192/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002128
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002129 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002130 """openssl ESNoff ARon AES-CBC-192/SHA1-96 IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002131 self.run_test()
2132
2133
Neale Ranns5b891102021-06-28 13:31:28 +00002134class Test_openssl_ESNoff_ARon_AES_CBC_256_SHA1_96(RunTestIpsecEspAll):
2135 """openssl ESNoff ARon AES-CBC-256/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002136
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002137 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002138 """openssl ESNoff ARon AES-CBC-256/SHA1-96 IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002139 self.run_test()
2140
2141
Neale Ranns5b891102021-06-28 13:31:28 +00002142class Test_openssl_ESNoff_ARon_3DES_CBC_SHA1_96(RunTestIpsecEspAll):
2143 """openssl ESNoff ARon 3DES-CBC/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002144
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002145 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002146 """openssl ESNoff ARon 3DES-CBC/SHA1-96 IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002147 self.run_test()
2148
2149
Neale Ranns5b891102021-06-28 13:31:28 +00002150class Test_openssl_ESNoff_ARon_NONE_SHA1_96(RunTestIpsecEspAll):
2151 """openssl ESNoff ARon NONE/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002152
Benoît Ganne490b9272021-01-22 18:03:09 +01002153 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002154 """openssl ESNoff ARon NONE/SHA1-96 IPSec test"""
Benoît Ganne490b9272021-01-22 18:03:09 +01002155 self.run_test()
2156
2157
Neale Ranns5b891102021-06-28 13:31:28 +00002158class Test_openssl_ESNoff_ARon_AES_CTR_128_SHA1_96(RunTestIpsecEspAll):
2159 """openssl ESNoff ARon AES-CTR-128/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002160
Benoît Ganne490b9272021-01-22 18:03:09 +01002161 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002162 """openssl ESNoff ARon AES-CTR-128/SHA1-96 IPSec test"""
Benoît Ganne490b9272021-01-22 18:03:09 +01002163 self.run_test()
2164
2165
Neale Ranns5b891102021-06-28 13:31:28 +00002166class Test_openssl_ESNoff_ARon_AES_CTR_192_SHA1_96(RunTestIpsecEspAll):
2167 """openssl ESNoff ARon AES-CTR-192/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002168
Benoît Ganne490b9272021-01-22 18:03:09 +01002169 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002170 """openssl ESNoff ARon AES-CTR-192/SHA1-96 IPSec test"""
Benoît Ganne490b9272021-01-22 18:03:09 +01002171 self.run_test()
2172
2173
Neale Ranns5b891102021-06-28 13:31:28 +00002174class Test_openssl_ESNoff_ARon_AES_CTR_256_SHA1_96(RunTestIpsecEspAll):
2175 """openssl ESNoff ARon AES-CTR-256/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002176
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002177 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002178 """openssl ESNoff ARon AES-CTR-256/SHA1-96 IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002179 self.run_test()
2180
2181
Neale Ranns5b891102021-06-28 13:31:28 +00002182class Test_openssl_ESNoff_ARoff_AES_GCM_128_NONE(RunTestIpsecEspAll):
2183 """openssl ESNoff ARoff AES-GCM-128/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002184
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002185 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002186 """openssl ESNoff ARoff AES-GCM-128/NONE IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002187 self.run_test()
2188
2189
Neale Ranns5b891102021-06-28 13:31:28 +00002190class Test_openssl_ESNoff_ARoff_AES_GCM_192_NONE(RunTestIpsecEspAll):
2191 """openssl ESNoff ARoff AES-GCM-192/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002192
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002193 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002194 """openssl ESNoff ARoff AES-GCM-192/NONE IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002195 self.run_test()
2196
2197
Neale Ranns5b891102021-06-28 13:31:28 +00002198class Test_openssl_ESNoff_ARoff_AES_GCM_256_NONE(RunTestIpsecEspAll):
2199 """openssl ESNoff ARoff AES-GCM-256/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002200
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002201 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002202 """openssl ESNoff ARoff AES-GCM-256/NONE IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002203 self.run_test()
2204
2205
Neale Ranns5b891102021-06-28 13:31:28 +00002206class Test_openssl_ESNoff_ARoff_AES_CBC_128_MD5_96(RunTestIpsecEspAll):
2207 """openssl ESNoff ARoff AES-CBC-128/MD5-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002208
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002209 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002210 """openssl ESNoff ARoff AES-CBC-128/MD5-96 IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002211 self.run_test()
2212
2213
Neale Ranns5b891102021-06-28 13:31:28 +00002214class Test_openssl_ESNoff_ARoff_AES_CBC_192_SHA1_96(RunTestIpsecEspAll):
2215 """openssl ESNoff ARoff AES-CBC-192/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002216
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002217 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002218 """openssl ESNoff ARoff AES-CBC-192/SHA1-96 IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002219 self.run_test()
2220
2221
Neale Ranns5b891102021-06-28 13:31:28 +00002222class Test_openssl_ESNoff_ARoff_AES_CBC_256_SHA1_96(RunTestIpsecEspAll):
2223 """openssl ESNoff ARoff AES-CBC-256/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002224
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002225 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002226 """openssl ESNoff ARoff AES-CBC-256/SHA1-96 IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002227 self.run_test()
2228
2229
Neale Ranns5b891102021-06-28 13:31:28 +00002230class Test_openssl_ESNoff_ARoff_3DES_CBC_SHA1_96(RunTestIpsecEspAll):
2231 """openssl ESNoff ARoff 3DES-CBC/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002232
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002233 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002234 """openssl ESNoff ARoff 3DES-CBC/SHA1-96 IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002235 self.run_test()
2236
2237
Neale Ranns5b891102021-06-28 13:31:28 +00002238class Test_openssl_ESNoff_ARoff_NONE_SHA1_96(RunTestIpsecEspAll):
2239 """openssl ESNoff ARoff NONE/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002240
Benoît Ganne490b9272021-01-22 18:03:09 +01002241 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002242 """openssl ESNoff ARoff NONE/SHA1-96 IPSec test"""
Benoît Ganne490b9272021-01-22 18:03:09 +01002243 self.run_test()
2244
2245
Neale Ranns5b891102021-06-28 13:31:28 +00002246class Test_openssl_ESNoff_ARoff_AES_CTR_128_SHA1_96(RunTestIpsecEspAll):
2247 """openssl ESNoff ARoff AES-CTR-128/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002248
Benoît Ganne490b9272021-01-22 18:03:09 +01002249 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002250 """openssl ESNoff ARoff AES-CTR-128/SHA1-96 IPSec test"""
Benoît Ganne490b9272021-01-22 18:03:09 +01002251 self.run_test()
2252
2253
Neale Ranns5b891102021-06-28 13:31:28 +00002254class Test_openssl_ESNoff_ARoff_AES_CTR_192_SHA1_96(RunTestIpsecEspAll):
2255 """openssl ESNoff ARoff AES-CTR-192/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002256
Benoît Ganne490b9272021-01-22 18:03:09 +01002257 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002258 """openssl ESNoff ARoff AES-CTR-192/SHA1-96 IPSec test"""
Benoît Ganne490b9272021-01-22 18:03:09 +01002259 self.run_test()
2260
2261
Neale Ranns5b891102021-06-28 13:31:28 +00002262class Test_openssl_ESNoff_ARoff_AES_CTR_256_SHA1_96(RunTestIpsecEspAll):
2263 """openssl ESNoff ARoff AES-CTR-256/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002264
Neale Ranns9c23ff82021-06-25 13:30:50 +00002265 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002266 """openssl ESNoff ARoff AES-CTR-256/SHA1-96 IPSec test"""
Neale Ranns9c23ff82021-06-25 13:30:50 +00002267 self.run_test()
2268
2269
Neale Ranns5b891102021-06-28 13:31:28 +00002270class Test_async_ESNon_ARon_AES_GCM_128_NONE(RunTestIpsecEspAll):
2271 """async ESNon ARon AES-GCM-128/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002272
Neale Ranns9c23ff82021-06-25 13:30:50 +00002273 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002274 """async ESNon ARon AES-GCM-128/NONE IPSec test"""
Neale Ranns9c23ff82021-06-25 13:30:50 +00002275 self.run_test()
2276
2277
Neale Ranns5b891102021-06-28 13:31:28 +00002278class Test_async_ESNon_ARon_AES_GCM_192_NONE(RunTestIpsecEspAll):
2279 """async ESNon ARon AES-GCM-192/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002280
Neale Ranns9c23ff82021-06-25 13:30:50 +00002281 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002282 """async ESNon ARon AES-GCM-192/NONE IPSec test"""
Neale Ranns9c23ff82021-06-25 13:30:50 +00002283 self.run_test()
2284
2285
Neale Ranns5b891102021-06-28 13:31:28 +00002286class Test_async_ESNon_ARon_AES_GCM_256_NONE(RunTestIpsecEspAll):
2287 """async ESNon ARon AES-GCM-256/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002288
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002289 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002290 """async ESNon ARon AES-GCM-256/NONE IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002291 self.run_test()
2292
2293
Neale Ranns5b891102021-06-28 13:31:28 +00002294class Test_async_ESNon_ARon_AES_CBC_192_SHA1_96(RunTestIpsecEspAll):
2295 """async ESNon ARon AES-CBC-192/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002296
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002297 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002298 """async ESNon ARon AES-CBC-192/SHA1-96 IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002299 self.run_test()
2300
2301
Neale Ranns5b891102021-06-28 13:31:28 +00002302class Test_async_ESNon_ARon_AES_CBC_256_SHA1_96(RunTestIpsecEspAll):
2303 """async ESNon ARon AES-CBC-256/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002304
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002305 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002306 """async ESNon ARon AES-CBC-256/SHA1-96 IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002307 self.run_test()
2308
2309
Neale Ranns5b891102021-06-28 13:31:28 +00002310class Test_async_ESNon_ARoff_AES_GCM_128_NONE(RunTestIpsecEspAll):
2311 """async ESNon ARoff AES-GCM-128/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002312
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002313 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002314 """async ESNon ARoff AES-GCM-128/NONE IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002315 self.run_test()
2316
2317
Neale Ranns5b891102021-06-28 13:31:28 +00002318class Test_async_ESNon_ARoff_AES_GCM_192_NONE(RunTestIpsecEspAll):
2319 """async ESNon ARoff AES-GCM-192/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002320
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002321 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002322 """async ESNon ARoff AES-GCM-192/NONE IPSec test"""
Andrew Yourtchenkofbc38892019-09-09 11:14:59 +00002323 self.run_test()
Neale Ranns6afaae12019-07-17 15:07:14 +00002324
Neale Ranns4f33c802019-04-10 12:39:10 +00002325
Neale Ranns5b891102021-06-28 13:31:28 +00002326class Test_async_ESNon_ARoff_AES_GCM_256_NONE(RunTestIpsecEspAll):
2327 """async ESNon ARoff AES-GCM-256/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002328
Benoît Ganne490b9272021-01-22 18:03:09 +01002329 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002330 """async ESNon ARoff AES-GCM-256/NONE IPSec test"""
Benoît Ganne490b9272021-01-22 18:03:09 +01002331 self.run_test()
2332
2333
Neale Ranns5b891102021-06-28 13:31:28 +00002334class Test_async_ESNon_ARoff_AES_CBC_192_SHA1_96(RunTestIpsecEspAll):
2335 """async ESNon ARoff AES-CBC-192/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002336
Benoît Ganne490b9272021-01-22 18:03:09 +01002337 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002338 """async ESNon ARoff AES-CBC-192/SHA1-96 IPSec test"""
Benoît Ganne490b9272021-01-22 18:03:09 +01002339 self.run_test()
2340
2341
Neale Ranns5b891102021-06-28 13:31:28 +00002342class Test_async_ESNon_ARoff_AES_CBC_256_SHA1_96(RunTestIpsecEspAll):
2343 """async ESNon ARoff AES-CBC-256/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002344
Benoît Ganne490b9272021-01-22 18:03:09 +01002345 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002346 """async ESNon ARoff AES-CBC-256/SHA1-96 IPSec test"""
Benoît Ganne490b9272021-01-22 18:03:09 +01002347 self.run_test()
2348
2349
Neale Ranns5b891102021-06-28 13:31:28 +00002350class Test_async_ESNoff_ARon_AES_GCM_128_NONE(RunTestIpsecEspAll):
2351 """async ESNoff ARon AES-GCM-128/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002352
Neale Ranns8c609af2021-02-25 10:05:32 +00002353 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002354 """async ESNoff ARon AES-GCM-128/NONE IPSec test"""
Neale Ranns8c609af2021-02-25 10:05:32 +00002355 self.run_test()
2356
2357
Neale Ranns5b891102021-06-28 13:31:28 +00002358class Test_async_ESNoff_ARon_AES_GCM_192_NONE(RunTestIpsecEspAll):
2359 """async ESNoff ARon AES-GCM-192/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002360
Neale Ranns8c609af2021-02-25 10:05:32 +00002361 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002362 """async ESNoff ARon AES-GCM-192/NONE IPSec test"""
Neale Ranns8c609af2021-02-25 10:05:32 +00002363 self.run_test()
2364
2365
Neale Ranns5b891102021-06-28 13:31:28 +00002366class Test_async_ESNoff_ARon_AES_GCM_256_NONE(RunTestIpsecEspAll):
2367 """async ESNoff ARon AES-GCM-256/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002368
Neale Ranns8c609af2021-02-25 10:05:32 +00002369 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002370 """async ESNoff ARon AES-GCM-256/NONE IPSec test"""
Neale Ranns8c609af2021-02-25 10:05:32 +00002371 self.run_test()
2372
2373
Neale Ranns5b891102021-06-28 13:31:28 +00002374class Test_async_ESNoff_ARon_AES_CBC_192_SHA1_96(RunTestIpsecEspAll):
2375 """async ESNoff ARon AES-CBC-192/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002376
Neale Ranns8c609af2021-02-25 10:05:32 +00002377 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002378 """async ESNoff ARon AES-CBC-192/SHA1-96 IPSec test"""
Neale Ranns8c609af2021-02-25 10:05:32 +00002379 self.run_test()
2380
2381
Neale Ranns5b891102021-06-28 13:31:28 +00002382class Test_async_ESNoff_ARon_AES_CBC_256_SHA1_96(RunTestIpsecEspAll):
2383 """async ESNoff ARon AES-CBC-256/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002384
Neale Ranns8c609af2021-02-25 10:05:32 +00002385 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002386 """async ESNoff ARon AES-CBC-256/SHA1-96 IPSec test"""
Neale Ranns8c609af2021-02-25 10:05:32 +00002387 self.run_test()
2388
2389
Neale Ranns5b891102021-06-28 13:31:28 +00002390class Test_async_ESNoff_ARoff_AES_GCM_128_NONE(RunTestIpsecEspAll):
2391 """async ESNoff ARoff AES-GCM-128/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002392
Neale Ranns9c23ff82021-06-25 13:30:50 +00002393 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002394 """async ESNoff ARoff AES-GCM-128/NONE IPSec test"""
Neale Ranns9c23ff82021-06-25 13:30:50 +00002395 self.run_test()
2396
2397
Neale Ranns5b891102021-06-28 13:31:28 +00002398class Test_async_ESNoff_ARoff_AES_GCM_192_NONE(RunTestIpsecEspAll):
2399 """async ESNoff ARoff AES-GCM-192/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002400
Neale Ranns9c23ff82021-06-25 13:30:50 +00002401 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002402 """async ESNoff ARoff AES-GCM-192/NONE IPSec test"""
Neale Ranns9c23ff82021-06-25 13:30:50 +00002403 self.run_test()
2404
2405
Neale Ranns5b891102021-06-28 13:31:28 +00002406class Test_async_ESNoff_ARoff_AES_GCM_256_NONE(RunTestIpsecEspAll):
2407 """async ESNoff ARoff AES-GCM-256/NONE IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002408
Neale Ranns9c23ff82021-06-25 13:30:50 +00002409 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002410 """async ESNoff ARoff AES-GCM-256/NONE IPSec test"""
Neale Ranns9c23ff82021-06-25 13:30:50 +00002411 self.run_test()
2412
2413
Neale Ranns5b891102021-06-28 13:31:28 +00002414class Test_async_ESNoff_ARoff_AES_CBC_192_SHA1_96(RunTestIpsecEspAll):
2415 """async ESNoff ARoff AES-CBC-192/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002416
Neale Ranns8c609af2021-02-25 10:05:32 +00002417 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002418 """async ESNoff ARoff AES-CBC-192/SHA1-96 IPSec test"""
Neale Ranns8c609af2021-02-25 10:05:32 +00002419 self.run_test()
2420
2421
Neale Ranns5b891102021-06-28 13:31:28 +00002422class Test_async_ESNoff_ARoff_AES_CBC_256_SHA1_96(RunTestIpsecEspAll):
2423 """async ESNoff ARoff AES-CBC-256/SHA1-96 IPSec test"""
Klement Sekerad9b0c6f2022-04-26 19:02:15 +02002424
Neale Ranns8c609af2021-02-25 10:05:32 +00002425 def test_ipsec(self):
Neale Ranns5b891102021-06-28 13:31:28 +00002426 """async ESNoff ARoff AES-CBC-256/SHA1-96 IPSec test"""
Neale Ranns8c609af2021-02-25 10:05:32 +00002427 self.run_test()