xref: /dpdk/app/test/test_security_inline_macsec_vectors.h (revision e3d83ea42031d79b5ed48acb5e85b4b98de6da0e)
1 /* SPDX-License-Identifier: BSD-3-Clause
2  * Copyright(C) 2023 Marvell.
3  */
4 
5 #ifndef TEST_INLINE_MACSEC_VECTORS_H
6 #define TEST_INLINE_MACSEC_VECTORS_H
7 
8 #define MCS_MAX_DATA_SZ				256
9 #define MCS_MAX_KEY_LEN				32
10 #define MCS_IV_LEN				12
11 #define MCS_SALT_LEN				12
12 
13 enum mcs_op {
14 	MCS_NO_OP,
15 	MCS_ENCAP,
16 	MCS_DECAP,
17 	MCS_ENCAP_DECAP,
18 	MCS_AUTH_ONLY,
19 	MCS_VERIFY_ONLY,
20 	MCS_AUTH_VERIFY,
21 };
22 
23 struct mcs_test_vector {
24 	uint32_t test_idx;
25 	enum rte_security_macsec_alg alg;
26 	uint32_t ssci;
27 	uint32_t xpn;
28 	uint8_t salt[MCS_SALT_LEN];
29 	struct {
30 		uint8_t data[MCS_MAX_KEY_LEN];
31 		uint16_t len;
32 	} sa_key;
33 	struct {
34 		uint8_t data[MCS_MAX_DATA_SZ];
35 		uint16_t len;
36 	} plain_pkt;
37 	struct {
38 		uint8_t data[MCS_MAX_DATA_SZ];
39 		uint16_t len;
40 	} secure_pkt;
41 };
42 
43 static const struct mcs_test_vector list_mcs_cipher_vectors[] = {
44 /* gcm_128_64B_cipher */
45 {
46 	.test_idx = 0,
47 	.alg = RTE_SECURITY_MACSEC_ALG_GCM_128,
48 	.ssci = 0x0,
49 	.salt = {0},
50 	.sa_key = {
51 		.data = {
52 			0x07, 0x1B, 0x11, 0x3B, 0x0C, 0xA7, 0x43, 0xFE,
53 			0xCC, 0xCF, 0x3D, 0x05, 0x1F, 0x73, 0x73, 0x82
54 		},
55 		.len = 16,
56 	},
57 	.plain_pkt = {
58 		.data = {/* MAC DA */
59 			0xE2, 0x01, 0x06, 0xD7, 0xCD, 0x0D,
60 			/* MAC SA */
61 			0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,
62 			/* User Data */
63 			0x08, 0x00, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14,
64 			0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C,
65 			0x1D, 0x1E, 0x1F, 0x20, 0x21, 0x22, 0x23, 0x24,
66 			0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2B, 0x2C,
67 			0x2D, 0x2E, 0x2F, 0x30, 0x31, 0x32, 0x33, 0x34,
68 			0x35, 0x36, 0x37, 0x38, 0x39, 0x40, 0x41, 0x42,
69 			0x43, 0x44, 0x45, 0x46,
70 		},
71 		.len = 64,
72 	},
73 	.secure_pkt = {
74 		.data = {/* MAC DA */
75 			0xE2, 0x01, 0x06, 0xD7, 0xCD, 0x0D,
76 			/* MAC SA */
77 			0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,
78 			/* MACsec EtherType */
79 			0x88, 0xE5,
80 			/* TCI and AN */
81 			0x2C,
82 			/* SL */
83 			0x0,
84 			/* PN */
85 			0x0, 0x0, 0x0, 0x2,
86 			/* SCI */
87 			0xFE, 0x2F, 0xCD, 0x14, 0x24, 0x1B, 0x88, 0x2C,
88 			/* Secure Data */
89 			0x39, 0x38, 0x97, 0x44, 0xA2, 0x6D, 0x71, 0x3D,
90 			0x14, 0x27, 0xC7, 0x3E, 0x02, 0x96, 0x81, 0xAD,
91 			0x47, 0x82, 0x2A, 0xCF, 0x19, 0x79, 0x12, 0x49,
92 			0x0F, 0x93, 0x5A, 0x32, 0x43, 0x79, 0xEF, 0x9D,
93 			0x70, 0xF8, 0xA9, 0xBE, 0x3D, 0x00, 0x5D, 0x22,
94 			0xDA, 0x87, 0x3D, 0xC1, 0xBE, 0x1B, 0x13, 0xD9,
95 			0x99, 0xDB, 0xF1, 0xC8,
96 			/* ICV */
97 			0x4B, 0xC4, 0xF8, 0xC6,	0x09, 0x78, 0xB9, 0xBB,
98 			0x5D, 0xC0, 0x04, 0xF3,	0x20, 0x7D, 0x14, 0x87,
99 		},
100 		.len = 96,
101 	},
102 },
103 /* gcm_128_54B_cipher */
104 {
105 	.test_idx = 1,
106 	.alg = RTE_SECURITY_MACSEC_ALG_GCM_128,
107 	.ssci = 0x0,
108 	.xpn = 0,
109 	.salt = {0},
110 	.sa_key = {
111 		.data = {
112 			0x07, 0x1B, 0x11, 0x3B, 0x0C, 0xA7, 0x43, 0xFE,
113 			0xCC, 0xCF, 0x3D, 0x05, 0x1F, 0x73, 0x73, 0x82,
114 		},
115 		.len = 16,
116 	},
117 	.plain_pkt = {
118 		.data = {/* MAC DA */
119 			0xE2, 0x01, 0x06, 0xD7, 0xCD, 0x0D,
120 			/* MAC SA */
121 			0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,
122 			/* User Data */
123 			0x08, 0x00, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14,
124 			0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C,
125 			0x1D, 0x1E, 0x1F, 0x20, 0x21, 0x22, 0x23, 0x24,
126 			0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2B, 0x2C,
127 			0x2D, 0x2E, 0x2F, 0x30, 0x31, 0x32, 0x33, 0x34,
128 			0x00, 0x04,
129 		},
130 		.len = 54,
131 	},
132 
133 	.secure_pkt = {
134 		.data = {/* MAC DA */
135 			0xE2, 0x01, 0x06, 0xD7, 0xCD, 0x0D,
136 			/* MAC SA */
137 			0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,
138 			/* MACsec EtherType */
139 			0x88, 0xE5,
140 			/* TCI and AN */
141 			0x4C,
142 			/* SL */
143 			0x2A,
144 			/* PN */
145 			0x76, 0xD4, 0x57, 0xED,
146 			/* Secure Data */
147 			0x13, 0xB4, 0xC7, 0x2B, 0x38, 0x9D, 0xC5, 0x01,
148 			0x8E, 0x72, 0xA1, 0x71, 0xDD, 0x85, 0xA5, 0xD3,
149 			0x75, 0x22, 0x74, 0xD3, 0xA0, 0x19, 0xFB, 0xCA,
150 			0xED, 0x09, 0xA4, 0x25, 0xCD, 0x9B, 0x2E, 0x1C,
151 			0x9B, 0x72, 0xEE, 0xE7, 0xC9, 0xDE, 0x7D, 0x52,
152 			0xB3, 0xF3,
153 			/* ICV */
154 			0xD6, 0xA5, 0x28, 0x4F, 0x4A, 0x6D, 0x3F, 0xE2,
155 			0x2A, 0x5D, 0x6C, 0x2B, 0x96, 0x04, 0x94, 0xC3,
156 		},
157 		.len = 78,
158 	},
159 },
160 /* gcm_256_54B_cipher */
161 {
162 	.test_idx = 2,
163 	.alg = RTE_SECURITY_MACSEC_ALG_GCM_256,
164 	.ssci = 0x0,
165 	.xpn = 0,
166 	.salt = {0},
167 	.sa_key = {
168 		.data = {
169 			0x69, 0x1D, 0x3E, 0xE9, 0x09, 0xD7, 0xF5, 0x41,
170 			0x67, 0xFD, 0x1C, 0xA0, 0xB5, 0xD7, 0x69, 0x08,
171 			0x1F, 0x2B, 0xDE, 0x1A, 0xEE, 0x65, 0x5F, 0xDB,
172 			0xAB, 0x80, 0xBD, 0x52, 0x95, 0xAE, 0x6B, 0xE7,
173 		},
174 		.len = 32,
175 	},
176 	.plain_pkt = {
177 		.data = {/* MAC DA */
178 			0xE2, 0x01, 0x06, 0xD7, 0xCD, 0x0D,
179 			/* MAC SA */
180 			0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,
181 			/* User Data */
182 			0x08, 0x00, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14,
183 			0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C,
184 			0x1D, 0x1E, 0x1F, 0x20, 0x21, 0x22, 0x23, 0x24,
185 			0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2B, 0x2C,
186 			0x2D, 0x2E, 0x2F, 0x30, 0x31, 0x32, 0x33, 0x34,
187 			0x00, 0x04,
188 		},
189 		.len = 54,
190 	},
191 	.secure_pkt = {
192 		.data = {/* MAC DA */
193 			0xE2, 0x01, 0x06, 0xD7, 0xCD, 0x0D,
194 			/* MAC SA */
195 			0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,
196 			/* MACsec EtherType */
197 			0x88, 0xE5,
198 			/* TCI and AN */
199 			0x4C,
200 			/* SL */
201 			0x2A,
202 			/* PN */
203 			0x76, 0xD4, 0x57, 0xED,
204 			/* Secure Data */
205 			0xC1, 0x62, 0x3F, 0x55, 0x73, 0x0C, 0x93, 0x53,
206 			0x30, 0x97, 0xAD, 0xDA, 0xD2, 0x56, 0x64, 0x96,
207 			0x61, 0x25, 0x35, 0x2B, 0x43, 0xAD, 0xAC, 0xBD,
208 			0x61, 0xC5, 0xEF, 0x3A, 0xC9, 0x0B, 0x5B, 0xEE,
209 			0x92, 0x9C, 0xE4, 0x63, 0x0E, 0xA7, 0x9F, 0x6C,
210 			0xE5, 0x19,
211 			/* ICV */
212 			0x12, 0xAF, 0x39, 0xC2, 0xD1, 0xFD, 0xC2, 0x05,
213 			0x1F, 0x8B, 0x7B, 0x3C, 0x9D, 0x39, 0x7E, 0xF2,
214 		},
215 		.len = 78,
216 	},
217 },
218 /* gcm_128_xpn_54B_cipher */
219 {
220 	.test_idx = 3,
221 	.alg = RTE_SECURITY_MACSEC_ALG_GCM_XPN_128,
222 	.ssci = 0x7A30C118,
223 	.xpn = 0xB0DF459C, /* Most significant 32 bits */
224 	.salt = {
225 		0xE6, 0x30, 0xE8, 0x1A, 0x48, 0xDE,
226 		0x86, 0xA2, 0x1C, 0x66, 0xFA, 0x6D,
227 	},
228 	.sa_key = {
229 		.data = {
230 			0x07, 0x1B, 0x11, 0x3B, 0x0C, 0xA7, 0x43, 0xFE,
231 			0xCC, 0xCF, 0x3D, 0x05, 0x1F, 0x73, 0x73, 0x82,
232 		},
233 		.len = 16,
234 	},
235 	.plain_pkt = {
236 		.data = {/* MAC DA */
237 			0xE2, 0x01, 0x06, 0xD7, 0xCD, 0x0D,
238 			/* MAC SA */
239 			0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,
240 			/* User Data */
241 			0x08, 0x00, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14,
242 			0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C,
243 			0x1D, 0x1E, 0x1F, 0x20, 0x21, 0x22, 0x23, 0x24,
244 			0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2B, 0x2C,
245 			0x2D, 0x2E, 0x2F, 0x30, 0x31, 0x32, 0x33, 0x34,
246 			0x00, 0x04,
247 		},
248 		.len = 54,
249 	},
250 	.secure_pkt = {
251 		.data = {/* MAC DA */
252 			0xE2, 0x01, 0x06, 0xD7, 0xCD, 0x0D,
253 			/* MAC SA */
254 			0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,
255 			/* MACsec EtherType */
256 			0x88, 0xE5,
257 			/* TCI and AN */
258 			0x4C,
259 			/* SL */
260 			0x2A,
261 			/* PN */
262 			0x76, 0xD4, 0x57, 0xED,
263 			/* Secure Data */
264 			0x9C, 0xA4, 0x69, 0x84, 0x43, 0x02, 0x03, 0xED,
265 			0x41, 0x6E, 0xBD, 0xC2, 0xFE, 0x26, 0x22, 0xBA,
266 			0x3E, 0x5E, 0xAB, 0x69, 0x61, 0xC3, 0x63, 0x83,
267 			0x00, 0x9E, 0x18, 0x7E, 0x9B, 0x0C, 0x88, 0x56,
268 			0x46, 0x53, 0xB9, 0xAB, 0xD2, 0x16, 0x44, 0x1C,
269 			0x6A, 0xB6,
270 			/* ICV */
271 			0xF0, 0xA2, 0x32, 0xE9, 0xE4, 0x4C, 0x97, 0x8C,
272 			0xF7, 0xCD, 0x84, 0xD4, 0x34, 0x84, 0xD1, 0x01,
273 		},
274 		.len = 78,
275 	},
276 },
277 /* gcm_256_xpn_54B_cipher */
278 {
279 	.test_idx = 4,
280 	.alg = RTE_SECURITY_MACSEC_ALG_GCM_XPN_256,
281 	.ssci = 0x7A30C118,
282 	.xpn = 0xB0DF459C, /* Most significant 32 bits */
283 	.salt = {
284 		0xE6, 0x30, 0xE8, 0x1A, 0x48, 0xDE,
285 		0x86, 0xA2, 0x1C, 0x66, 0xFA, 0x6D,
286 	},
287 	.sa_key = {
288 		.data = {
289 			0x69, 0x1D, 0x3E, 0xE9, 0x09, 0xD7, 0xF5, 0x41,
290 			0x67, 0xFD, 0x1C, 0xA0, 0xB5, 0xD7, 0x69, 0x08,
291 			0x1F, 0x2B, 0xDE, 0x1A, 0xEE, 0x65, 0x5F, 0xDB,
292 			0xAB, 0x80, 0xBD, 0x52, 0x95, 0xAE, 0x6B, 0xE7,
293 		},
294 		.len = 32,
295 	},
296 	.plain_pkt = {
297 		.data = {/* MAC DA */
298 			0xE2, 0x01, 0x06, 0xD7, 0xCD, 0x0D,
299 			/* MAC SA */
300 			0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,
301 			/* User Data */
302 			0x08, 0x00, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14,
303 			0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C,
304 			0x1D, 0x1E, 0x1F, 0x20, 0x21, 0x22, 0x23, 0x24,
305 			0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2B, 0x2C,
306 			0x2D, 0x2E, 0x2F, 0x30, 0x31, 0x32, 0x33, 0x34,
307 			0x00, 0x04,
308 		},
309 		.len = 54,
310 	},
311 	.secure_pkt = {
312 		.data = {/* MAC DA */
313 			0xE2, 0x01, 0x06, 0xD7, 0xCD, 0x0D,
314 			/* MAC SA */
315 			0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,
316 			/* MACsec EtherType */
317 			0x88, 0xE5,
318 			/* TCI and AN */
319 			0x4C,
320 			/* SL */
321 			0x2A,
322 			/* PN */
323 			0x76, 0xD4, 0x57, 0xED,
324 			/* Secure Data */
325 			0x88, 0xD9, 0xF7, 0xD1, 0xF1, 0x57, 0x8E, 0xE3,
326 			0x4B, 0xA7, 0xB1, 0xAB, 0xC8, 0x98, 0x93, 0xEF,
327 			0x1D, 0x33, 0x98, 0xC9, 0xF1, 0xDD, 0x3E, 0x47,
328 			0xFB, 0xD8, 0x55, 0x3E, 0x0F, 0xF7, 0x86, 0xEF,
329 			0x56, 0x99, 0xEB, 0x01, 0xEA, 0x10, 0x42, 0x0D,
330 			0x0E, 0xBD,
331 			/* ICV */
332 			0x39, 0xA0, 0xE2, 0x73, 0xC4, 0xC7, 0xF9, 0x5E,
333 			0xD8, 0x43, 0x20, 0x7D, 0x7A, 0x49, 0x7D, 0xFA,
334 		},
335 		.len = 78,
336 	},
337 },
338 /* gcm_128_60B_cipher */
339 {
340 	.test_idx = 5,
341 	.alg = RTE_SECURITY_MACSEC_ALG_GCM_128,
342 	.ssci = 0x0,
343 	.xpn = 0x0, /* Most significant 32 bits */
344 	.salt = {0},
345 	.sa_key = {
346 		.data = {
347 			0xAD, 0x7A, 0x2B, 0xD0, 0x3E, 0xAC, 0x83, 0x5A,
348 			0x6F, 0x62, 0x0F, 0xDC, 0xB5, 0x06, 0xB3, 0x45,
349 		},
350 		.len = 16,
351 	},
352 	.plain_pkt = {
353 		.data = {/* MAC DA */
354 			0xD6, 0x09, 0xB1, 0xF0, 0x56, 0x63,
355 			/* MAC SA */
356 			0x7A, 0x0D, 0x46, 0xDF, 0x99, 0x8D,
357 			/* User Data */
358 			0x08, 0x00, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14,
359 			0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C,
360 			0x1D, 0x1E, 0x1F, 0x20, 0x21, 0x22, 0x23, 0x24,
361 			0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2B, 0x2C,
362 			0x2D, 0x2E, 0x2F, 0x30, 0x31, 0x32, 0x33, 0x34,
363 			0x35, 0x36, 0x37, 0x38, 0x39, 0x3A, 0x00, 0x02,
364 		},
365 		.len = 60,
366 	},
367 	.secure_pkt = {
368 		.data = {/* MAC DA */
369 			0xD6, 0x09, 0xB1, 0xF0, 0x56, 0x63,
370 			/* MAC SA */
371 			0x7A, 0x0D, 0x46, 0xDF, 0x99, 0x8D,
372 			/* MACsec EtherType */
373 			0x88, 0xE5,
374 			/* TCI and AN */
375 			0x2E,
376 			/* SL */
377 			0x00,
378 			/* PN */
379 			0xB2, 0xC2, 0x84, 0x65,
380 			/* SCI */
381 			0x12, 0x15, 0x35, 0x24, 0xC0, 0x89, 0x5E, 0x81,
382 			/* Secure Data */
383 			0x70, 0x1A, 0xFA, 0x1C, 0xC0, 0x39, 0xC0, 0xD7,
384 			0x65, 0x12, 0x8A, 0x66, 0x5D, 0xAB, 0x69, 0x24,
385 			0x38, 0x99, 0xBF, 0x73, 0x18, 0xCC, 0xDC, 0x81,
386 			0xC9, 0x93, 0x1D, 0xA1, 0x7F, 0xBE, 0x8E, 0xDD,
387 			0x7D, 0x17, 0xCB, 0x8B, 0x4C, 0x26, 0xFC, 0x81,
388 			0xE3, 0x28, 0x4F, 0x2B, 0x7F, 0xBA, 0x71, 0x3D,
389 			/* ICV */
390 			0x4F, 0x8D, 0x55, 0xE7, 0xD3, 0xF0, 0x6F, 0xD5,
391 			0xA1, 0x3C, 0x0C, 0x29, 0xB9, 0xD5, 0xB8, 0x80,
392 		},
393 		.len = 92,
394 	},
395 },
396 /* gcm_256_60B_cipher */
397 {
398 	.test_idx = 6,
399 	.alg = RTE_SECURITY_MACSEC_ALG_GCM_256,
400 	.ssci = 0x0,
401 	.xpn = 0x0, /* Most significant 32 bits */
402 	.salt = {0},
403 	.sa_key = {
404 		.data = {
405 			0xE3, 0xC0, 0x8A, 0x8F, 0x06, 0xC6, 0xE3, 0xAD,
406 			0x95, 0xA7, 0x05, 0x57, 0xB2, 0x3F, 0x75, 0x48,
407 			0x3C, 0xE3, 0x30, 0x21, 0xA9, 0xC7, 0x2B, 0x70,
408 			0x25, 0x66, 0x62, 0x04, 0xC6, 0x9C, 0x0B, 0x72,
409 		},
410 		.len = 32,
411 	},
412 	.plain_pkt = {
413 		.data = {/* MAC DA */
414 			0xD6, 0x09, 0xB1, 0xF0, 0x56, 0x63,
415 			/* MAC SA */
416 			0x7A, 0x0D, 0x46, 0xDF, 0x99, 0x8D,
417 			/* User Data */
418 			0x08, 0x00, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14,
419 			0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C,
420 			0x1D, 0x1E, 0x1F, 0x20, 0x21, 0x22, 0x23, 0x24,
421 			0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2B, 0x2C,
422 			0x2D, 0x2E, 0x2F, 0x30, 0x31, 0x32, 0x33, 0x34,
423 			0x35, 0x36, 0x37, 0x38, 0x39, 0x3A, 0x00, 0x02,
424 		},
425 		.len = 60,
426 	},
427 	.secure_pkt = {
428 		.data = {/* MAC DA */
429 			0xD6, 0x09, 0xB1, 0xF0, 0x56, 0x63,
430 			/* MAC SA */
431 			0x7A, 0x0D, 0x46, 0xDF, 0x99, 0x8D,
432 			/* MACsec EtherType */
433 			0x88, 0xE5,
434 			/* TCI and AN */
435 			0x2E,
436 			/* SL */
437 			0x00,
438 			/* PN */
439 			0xB2, 0xC2, 0x84, 0x65,
440 			/* SCI */
441 			0x12, 0x15, 0x35, 0x24, 0xC0, 0x89, 0x5E, 0x81,
442 			/* Secure Data */
443 			0xE2, 0x00, 0x6E, 0xB4, 0x2F, 0x52, 0x77, 0x02,
444 			0x2D, 0x9B, 0x19, 0x92, 0x5B, 0xC4, 0x19, 0xD7,
445 			0xA5, 0x92, 0x66, 0x6C, 0x92, 0x5F, 0xE2, 0xEF,
446 			0x71, 0x8E, 0xB4, 0xE3, 0x08, 0xEF, 0xEA, 0xA7,
447 			0xC5, 0x27, 0x3B, 0x39, 0x41, 0x18, 0x86, 0x0A,
448 			0x5B, 0xE2, 0xA9, 0x7F, 0x56, 0xAB, 0x78, 0x36,
449 			/* ICV */
450 			0x5C, 0xA5, 0x97, 0xCD, 0xBB, 0x3E, 0xDB, 0x8D,
451 			0x1A, 0x11, 0x51, 0xEA, 0x0A, 0xF7, 0xB4, 0x36,
452 		},
453 		.len = 92,
454 	},
455 },
456 /* gcm_128_xpn_60B_cipher */
457 {
458 	.test_idx = 7,
459 	.alg = RTE_SECURITY_MACSEC_ALG_GCM_XPN_128,
460 	.ssci = 0x7A30C118,
461 	.xpn = 0xB0DF459C, /* Most significant 32 bits */
462 	.salt = {
463 		0xE6, 0x30, 0xE8, 0x1A, 0x48, 0xDE,
464 		0x86, 0xA2, 0x1C, 0x66, 0xFA, 0x6D,
465 	},
466 	.sa_key = {
467 		.data = {
468 			0xAD, 0x7A, 0x2B, 0xD0, 0x3E, 0xAC, 0x83, 0x5A,
469 			0x6F, 0x62, 0x0F, 0xDC, 0xB5, 0x06, 0xB3, 0x45,
470 		},
471 		.len = 16,
472 	},
473 	.plain_pkt = {
474 		.data = {/* MAC DA */
475 			0xD6, 0x09, 0xB1, 0xF0, 0x56, 0x63,
476 			/* MAC SA */
477 			0x7A, 0x0D, 0x46, 0xDF, 0x99, 0x8D,
478 			/* User Data */
479 			0x08, 0x00, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14,
480 			0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C,
481 			0x1D, 0x1E, 0x1F, 0x20, 0x21, 0x22, 0x23, 0x24,
482 			0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2B, 0x2C,
483 			0x2D, 0x2E, 0x2F, 0x30, 0x31, 0x32, 0x33, 0x34,
484 			0x35, 0x36, 0x37, 0x38, 0x39, 0x3A, 0x00, 0x02,
485 		},
486 		.len = 60,
487 	},
488 	.secure_pkt = {
489 		.data = {/* MAC DA */
490 			0xD6, 0x09, 0xB1, 0xF0, 0x56, 0x63,
491 			/* MAC SA */
492 			0x7A, 0x0D, 0x46, 0xDF, 0x99, 0x8D,
493 			/* MACsec EtherType */
494 			0x88, 0xE5,
495 			/* TCI and AN */
496 			0x2E,
497 			/* SL */
498 			0x00,
499 			/* PN */
500 			0xB2, 0xC2, 0x84, 0x65,
501 			/* SCI */
502 			0x12, 0x15, 0x35, 0x24, 0xC0, 0x89, 0x5E, 0x81,
503 			/* Secure Data */
504 			0x07, 0x12, 0xD9, 0x80, 0xCA, 0x50, 0xBB, 0xED,
505 			0x35, 0xA0, 0xFA, 0x56, 0x63, 0x38, 0x72, 0x9F,
506 			0xFA, 0x16, 0xD1, 0x9F, 0xFC, 0xF0, 0x7B, 0x3A,
507 			0x1E, 0x79, 0x19, 0xB3, 0x77, 0x6A, 0xAC, 0xEC,
508 			0x8A, 0x59, 0x37, 0x20, 0x8B, 0x48, 0x3A, 0x76,
509 			0x91, 0x98, 0x4D, 0x38, 0x07, 0x92, 0xE0, 0x7F,
510 			/* ICV */
511 			0xC2, 0xC3, 0xC7, 0x9F, 0x26, 0x3F, 0xA6, 0xBF,
512 			0xF8, 0xE7, 0x58, 0x1E, 0x2C, 0xE4, 0x5A, 0xF8,
513 		},
514 		.len = 92,
515 	},
516 },
517 /* gcm_256_xpn_60B_cipher */
518 {
519 	.test_idx = 8,
520 	.alg = RTE_SECURITY_MACSEC_ALG_GCM_XPN_256,
521 	.ssci = 0x7A30C118,
522 	.xpn = 0xB0DF459C, /* Most significant 32 bits */
523 	.salt = {
524 		0xE6, 0x30, 0xE8, 0x1A, 0x48, 0xDE,
525 		0x86, 0xA2, 0x1C, 0x66, 0xFA, 0x6D,
526 	},
527 	.sa_key = {
528 		.data = {
529 			0xE3, 0xC0, 0x8A, 0x8F, 0x06, 0xC6, 0xE3, 0xAD,
530 			0x95, 0xA7, 0x05, 0x57, 0xB2, 0x3F, 0x75, 0x48,
531 			0x3C, 0xE3, 0x30, 0x21, 0xA9, 0xC7, 0x2B, 0x70,
532 			0x25, 0x66, 0x62, 0x04, 0xC6, 0x9C, 0x0B, 0x72,
533 		},
534 		.len = 32,
535 	},
536 	.plain_pkt = {
537 		.data = {/* MAC DA */
538 			0xD6, 0x09, 0xB1, 0xF0, 0x56, 0x63,
539 			/* MAC SA */
540 			0x7A, 0x0D, 0x46, 0xDF, 0x99, 0x8D,
541 			/* User Data */
542 			0x08, 0x00, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14,
543 			0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C,
544 			0x1D, 0x1E, 0x1F, 0x20, 0x21, 0x22, 0x23, 0x24,
545 			0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2B, 0x2C,
546 			0x2D, 0x2E, 0x2F, 0x30, 0x31, 0x32, 0x33, 0x34,
547 			0x35, 0x36, 0x37, 0x38, 0x39, 0x3A, 0x00, 0x02,
548 		},
549 		.len = 60,
550 	},
551 	.secure_pkt = {
552 		.data = {/* MAC DA */
553 			0xD6, 0x09, 0xB1, 0xF0, 0x56, 0x63,
554 			/* MAC SA */
555 			0x7A, 0x0D, 0x46, 0xDF, 0x99, 0x8D,
556 			/* MACsec EtherType */
557 			0x88, 0xE5,
558 			/* TCI and AN */
559 			0x2E,
560 			/* SL */
561 			0x00,
562 			/* PN */
563 			0xB2, 0xC2, 0x84, 0x65,
564 			/* SCI */
565 			0x12, 0x15, 0x35, 0x24, 0xC0, 0x89, 0x5E, 0x81,
566 			/* Secure Data */
567 			0x3E, 0xB0, 0x4A, 0x4B, 0xBF, 0x54, 0xC6, 0xEB,
568 			0x12, 0x22, 0xA9, 0xAE, 0xA0, 0x0C, 0x38, 0x68,
569 			0x7F, 0x6C, 0x35, 0x20, 0xD9, 0x76, 0xA3, 0xB6,
570 			0x94, 0x80, 0x06, 0x50, 0xCE, 0x65, 0x85, 0xE6,
571 			0x20, 0xA4, 0x19, 0x19, 0x17, 0xD2, 0xA6, 0x05,
572 			0xD8, 0x70, 0xC7, 0x8D, 0x27, 0x52, 0xCE, 0x49,
573 			/* ICV */
574 			0x3B, 0x44, 0x2A, 0xC0, 0xC8, 0x16, 0xD7, 0xAB,
575 			0xD7, 0x0A, 0xD6, 0x5C, 0x25, 0xD4, 0x64, 0x13,
576 		},
577 		.len = 92,
578 	},
579 },
580 /* gcm_128_61B_cipher */
581 {
582 	.test_idx = 9,
583 	.alg = RTE_SECURITY_MACSEC_ALG_GCM_128,
584 	.ssci = 0x0,
585 	.xpn = 0x0, /* Most significant 32 bits */
586 	.salt = {0},
587 	.sa_key = {
588 		.data = {
589 			0x01, 0x3F, 0xE0, 0x0B, 0x5F, 0x11, 0xBE, 0x7F,
590 			0x86, 0x6D, 0x0C, 0xBB, 0xC5, 0x5A, 0x7A, 0x90,
591 		},
592 		.len = 16,
593 	},
594 	.plain_pkt = {
595 		.data = {/* MAC DA */
596 			0x84, 0xC5, 0xD5, 0x13, 0xD2, 0xAA,
597 			/* MAC SA */
598 			0xF6, 0xE5, 0xBB, 0xD2, 0x72, 0x77,
599 			/* User Data */
600 			0x08, 0x00, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14,
601 			0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C,
602 			0x1D, 0x1E, 0x1F, 0x20, 0x21, 0x22, 0x23, 0x24,
603 			0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2B, 0x2C,
604 			0x2D, 0x2E, 0x2F, 0x30, 0x31, 0x32, 0x33, 0x34,
605 			0x35, 0x36, 0x37, 0x38, 0x39, 0x3A, 0x3B, 0x00,
606 			0x06,
607 		},
608 		.len = 61,
609 	},
610 	.secure_pkt = {
611 		.data = {/* MAC DA */
612 			0x84, 0xC5, 0xD5, 0x13, 0xD2, 0xAA,
613 			/* MAC SA */
614 			0xF6, 0xE5, 0xBB, 0xD2, 0x72, 0x77,
615 			/* MACsec EtherType */
616 			0x88, 0xE5,
617 			/* TCI and AN */
618 			0x2F,
619 			/* SL */
620 			0x00,
621 			/* PN */
622 			0x89, 0x32, 0xD6, 0x12,
623 			/* SCI */
624 			0x7C, 0xFD, 0xE9, 0xF9, 0xE3, 0x37, 0x24, 0xC6,
625 			/* Secure Data */
626 			0x3A, 0x4D, 0xE6, 0xFA, 0x32, 0x19, 0x10, 0x14,
627 			0xDB, 0xB3, 0x03, 0xD9, 0x2E, 0xE3, 0xA9, 0xE8,
628 			0xA1, 0xB5, 0x99, 0xC1, 0x4D, 0x22, 0xFB, 0x08,
629 			0x00, 0x96, 0xE1, 0x38, 0x11, 0x81, 0x6A, 0x3C,
630 			0x9C, 0x9B, 0xCF, 0x7C, 0x1B, 0x9B, 0x96, 0xDA,
631 			0x80, 0x92, 0x04, 0xE2, 0x9D, 0x0E, 0x2A, 0x76,
632 			0x42,
633 			/* ICV */
634 			0xBF, 0xD3, 0x10, 0xA4, 0x83, 0x7C, 0x81, 0x6C,
635 			0xCF, 0xA5, 0xAC, 0x23, 0xAB, 0x00, 0x39, 0x88,
636 		},
637 		.len = 93,
638 	},
639 },
640 /* gcm_256_61B_cipher */
641 {
642 	.test_idx = 10,
643 	.alg = RTE_SECURITY_MACSEC_ALG_GCM_256,
644 	.ssci = 0x0,
645 	.xpn = 0x0, /* Most significant 32 bits */
646 	.salt = {0},
647 	.sa_key = {
648 		.data = {
649 			0x83, 0xC0, 0x93, 0xB5, 0x8D, 0xE7, 0xFF, 0xE1,
650 			0xC0, 0xDA, 0x92, 0x6A, 0xC4, 0x3F, 0xB3, 0x60,
651 			0x9A, 0xC1, 0xC8, 0x0F, 0xEE, 0x1B, 0x62, 0x44,
652 			0x97, 0xEF, 0x94, 0x2E, 0x2F, 0x79, 0xA8, 0x23,
653 		},
654 		.len = 32,
655 	},
656 	.plain_pkt = {
657 		.data = {/* MAC DA */
658 			0x84, 0xC5, 0xD5, 0x13, 0xD2, 0xAA,
659 			/* MAC SA */
660 			0xF6, 0xE5, 0xBB, 0xD2, 0x72, 0x77,
661 			/* User Data */
662 			0x08, 0x00, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14,
663 			0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C,
664 			0x1D, 0x1E, 0x1F, 0x20, 0x21, 0x22, 0x23, 0x24,
665 			0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2B, 0x2C,
666 			0x2D, 0x2E, 0x2F, 0x30, 0x31, 0x32, 0x33, 0x34,
667 			0x35, 0x36, 0x37, 0x38, 0x39, 0x3A, 0x3B, 0x00,
668 			0x06,
669 		},
670 		.len = 61,
671 	},
672 	.secure_pkt = {
673 		.data = {/* MAC DA */
674 			0x84, 0xC5, 0xD5, 0x13, 0xD2, 0xAA,
675 			/* MAC SA */
676 			0xF6, 0xE5, 0xBB, 0xD2, 0x72, 0x77,
677 			/* MACsec EtherType */
678 			0x88, 0xE5,
679 			/* TCI and AN */
680 			0x2F,
681 			/* SL */
682 			0x00,
683 			/* PN */
684 			0x89, 0x32, 0xD6, 0x12,
685 			/* SCI */
686 			0x7C, 0xFD, 0xE9, 0xF9, 0xE3, 0x37, 0x24, 0xC6,
687 			/* Secure Data */
688 			0x11, 0x02, 0x22, 0xFF, 0x80, 0x50, 0xCB, 0xEC,
689 			0xE6, 0x6A, 0x81, 0x3A, 0xD0, 0x9A, 0x73, 0xED,
690 			0x7A, 0x9A, 0x08, 0x9C, 0x10, 0x6B, 0x95, 0x93,
691 			0x89, 0x16, 0x8E, 0xD6, 0xE8, 0x69, 0x8E, 0xA9,
692 			0x02, 0xEB, 0x12, 0x77, 0xDB, 0xEC, 0x2E, 0x68,
693 			0xE4, 0x73, 0x15, 0x5A, 0x15, 0xA7, 0xDA, 0xEE,
694 			0xD4,
695 			/* ICV */
696 			0xA1, 0x0F, 0x4E, 0x05, 0x13, 0x9C, 0x23, 0xDF,
697 			0x00, 0xB3, 0xAA, 0xDC, 0x71, 0xF0, 0x59, 0x6A,
698 		},
699 		.len = 93,
700 	},
701 },
702 /* gcm_128_xpn_61B_cipher */
703 {
704 	.test_idx = 11,
705 	.alg = RTE_SECURITY_MACSEC_ALG_GCM_XPN_128,
706 	.ssci = 0x7A30C118,
707 	.xpn = 0xB0DF459C, /* Most significant 32 bits */
708 	.salt = {
709 		0xE6, 0x30, 0xE8, 0x1A, 0x48, 0xDE,
710 		0x86, 0xA2, 0x1C, 0x66, 0xFA, 0x6D,
711 	},
712 	.sa_key = {
713 		.data = {
714 			0x01, 0x3F, 0xE0, 0x0B, 0x5F, 0x11, 0xBE, 0x7F,
715 			0x86, 0x6D, 0x0C, 0xBB, 0xC5, 0x5A, 0x7A, 0x90,
716 		},
717 		.len = 16,
718 	},
719 	.plain_pkt = {
720 		.data = {/* MAC DA */
721 			0x84, 0xC5, 0xD5, 0x13, 0xD2, 0xAA,
722 			/* MAC SA */
723 			0xF6, 0xE5, 0xBB, 0xD2, 0x72, 0x77,
724 			/* User Data */
725 			0x08, 0x00, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14,
726 			0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C,
727 			0x1D, 0x1E, 0x1F, 0x20, 0x21, 0x22, 0x23, 0x24,
728 			0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2B, 0x2C,
729 			0x2D, 0x2E, 0x2F, 0x30, 0x31, 0x32, 0x33, 0x34,
730 			0x35, 0x36, 0x37, 0x38, 0x39, 0x3A, 0x3B, 0x00,
731 			0x06,
732 		},
733 		.len = 61,
734 	},
735 	.secure_pkt = {
736 		.data = {/* MAC DA */
737 			0x84, 0xC5, 0xD5, 0x13, 0xD2, 0xAA,
738 			/* MAC SA */
739 			0xF6, 0xE5, 0xBB, 0xD2, 0x72, 0x77,
740 			/* MACsec EtherType */
741 			0x88, 0xE5,
742 			/* TCI and AN */
743 			0x2F,
744 			/* SL */
745 			0x00,
746 			/* PN */
747 			0x89, 0x32, 0xD6, 0x12,
748 			/* SCI */
749 			0x7C, 0xFD, 0xE9, 0xF9, 0xE3, 0x37, 0x24, 0xC6,
750 			/* Secure Data */
751 			0x14, 0xC1, 0x76, 0x93, 0xBC, 0x82, 0x97, 0xEE,
752 			0x6C, 0x47, 0xC5, 0x65, 0xCB, 0xE0, 0x67, 0x9E,
753 			0x80, 0xF0, 0x0F, 0xCA, 0xF5, 0x92, 0xC9, 0xAA,
754 			0x04, 0x73, 0x92, 0x8E, 0x7F, 0x2F, 0x21, 0x6F,
755 			0xF5, 0xA0, 0x33, 0xDE, 0xC7, 0x51, 0x3F, 0x45,
756 			0xD3, 0x4C, 0xBB, 0x98, 0x1C, 0x5B, 0xD6, 0x4E,
757 			0x8B,
758 			/* ICV */
759 			0xD8, 0x4B, 0x8E, 0x2A, 0x78, 0xE7, 0x4D, 0xAF,
760 			0xEA, 0xA0, 0x38, 0x46, 0xFE, 0x93, 0x0C, 0x0E,
761 		},
762 		.len = 93,
763 	},
764 },
765 /* gcm_256_xpn_61B_cipher */
766 {
767 	.test_idx = 12,
768 	.alg = RTE_SECURITY_MACSEC_ALG_GCM_XPN_256,
769 	.ssci = 0x7A30C118,
770 	.xpn = 0xB0DF459C, /* Most significant 32 bits */
771 	.salt = {
772 		0xE6, 0x30, 0xE8, 0x1A, 0x48, 0xDE,
773 		0x86, 0xA2, 0x1C, 0x66, 0xFA, 0x6D,
774 	},
775 	.sa_key = {
776 		.data = {
777 			0x83, 0xC0, 0x93, 0xB5, 0x8D, 0xE7, 0xFF, 0xE1,
778 			0xC0, 0xDA, 0x92, 0x6A, 0xC4, 0x3F, 0xB3, 0x60,
779 			0x9A, 0xC1, 0xC8, 0x0F, 0xEE, 0x1B, 0x62, 0x44,
780 			0x97, 0xEF, 0x94, 0x2E, 0x2F, 0x79, 0xA8, 0x23,
781 		},
782 		.len = 32,
783 	},
784 	.plain_pkt = {
785 		.data = {/* MAC DA */
786 			0x84, 0xC5, 0xD5, 0x13, 0xD2, 0xAA,
787 			/* MAC SA */
788 			0xF6, 0xE5, 0xBB, 0xD2, 0x72, 0x77,
789 			/* User Data */
790 			0x08, 0x00, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14,
791 			0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C,
792 			0x1D, 0x1E, 0x1F, 0x20, 0x21, 0x22, 0x23, 0x24,
793 			0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2B, 0x2C,
794 			0x2D, 0x2E, 0x2F, 0x30, 0x31, 0x32, 0x33, 0x34,
795 			0x35, 0x36, 0x37, 0x38, 0x39, 0x3A, 0x3B, 0x00,
796 			0x06,
797 		},
798 		.len = 61,
799 	},
800 	.secure_pkt = {
801 		.data = {/* MAC DA */
802 			0x84, 0xC5, 0xD5, 0x13, 0xD2, 0xAA,
803 			/* MAC SA */
804 			0xF6, 0xE5, 0xBB, 0xD2, 0x72, 0x77,
805 			/* MACsec EtherType */
806 			0x88, 0xE5,
807 			/* TCI and AN */
808 			0x2F,
809 			/* SL */
810 			0x00,
811 			/* PN */
812 			0x89, 0x32, 0xD6, 0x12,
813 			/* SCI */
814 			0x7C, 0xFD, 0xE9, 0xF9, 0xE3, 0x37, 0x24, 0xC6,
815 			/* Secure Data */
816 			0x09, 0x96, 0xE0, 0xC9, 0xA5, 0x57, 0x74, 0xE0,
817 			0xA7, 0x92, 0x30, 0x4E, 0x7D, 0xC1, 0x50, 0xBD,
818 			0x67, 0xFD, 0x74, 0x7D, 0xD1, 0xB9, 0x41, 0x95,
819 			0x94, 0xBF, 0x37, 0x3D, 0x4A, 0xCE, 0x8F, 0x87,
820 			0xF5, 0xC1, 0x34, 0x9A, 0xFA, 0xC4, 0x91, 0xAA,
821 			0x0A, 0x40, 0xD3, 0x19, 0x90, 0x87, 0xB2, 0x9F,
822 			0xDF,
823 			/* ICV */
824 			0x80, 0x2F, 0x05, 0x0E, 0x69, 0x1F, 0x11, 0xA2,
825 			0xD9, 0xB3, 0x58, 0xF6, 0x99, 0x41, 0x84, 0xF5,
826 		},
827 		.len = 93,
828 	},
829 },
830 /* gcm_128_75B_cipher */
831 {
832 	.test_idx = 13,
833 	.alg = RTE_SECURITY_MACSEC_ALG_GCM_128,
834 	.ssci = 0,
835 	.xpn = 0, /* Most significant 32 bits */
836 	.salt = {0},
837 	.sa_key = {
838 		.data = {
839 			0x88, 0xEE, 0x08, 0x7F, 0xD9, 0x5D, 0xA9, 0xFB,
840 			0xF6, 0x72, 0x5A, 0xA9, 0xD7, 0x57, 0xB0, 0xCD,
841 		},
842 		.len = 16,
843 	},
844 	.plain_pkt = {
845 		.data = {/* MAC DA */
846 			0x68, 0xF2, 0xE7, 0x76, 0x96, 0xCE,
847 			/* MAC SA */
848 			0x7A, 0xE8, 0xE2, 0xCA, 0x4E, 0xC5,
849 			/* User Data */
850 			0x08, 0x00, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14,
851 			0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C,
852 			0x1D, 0x1E, 0x1F, 0x20, 0x21, 0x22, 0x23, 0x24,
853 			0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2B, 0x2C,
854 			0x2D, 0x2E, 0x2F, 0x30, 0x31, 0x32, 0x33, 0x34,
855 			0x35, 0x36, 0x37, 0x38, 0x39, 0x3A, 0x3B, 0x3C,
856 			0x3D, 0x3E, 0x3F, 0x40, 0x41, 0x42, 0x43, 0x44,
857 			0x45, 0x46, 0x47, 0x48, 0x49, 0x00, 0x08,
858 		},
859 		.len = 75,
860 	},
861 	.secure_pkt = {
862 		.data = {/* MAC DA */
863 			0x68, 0xF2, 0xE7, 0x76, 0x96, 0xCE,
864 			/* MAC SA */
865 			0x7A, 0xE8, 0xE2, 0xCA, 0x4E, 0xC5,
866 			/* MACsec EtherType */
867 			0x88, 0xE5,
868 			/* TCI and AN */
869 			0x4D,
870 			/* SL */
871 			0x00,
872 			/* PN */
873 			0x2E, 0x58, 0x49, 0x5C,
874 			/* SCI */
875 			/* Secure Data */
876 			0xC3, 0x1F, 0x53, 0xD9, 0x9E, 0x56, 0x87, 0xF7,
877 			0x36, 0x51, 0x19, 0xB8, 0x32, 0xD2, 0xAA, 0xE7,
878 			0x07, 0x41, 0xD5, 0x93, 0xF1, 0xF9, 0xE2, 0xAB,
879 			0x34, 0x55, 0x77, 0x9B, 0x07, 0x8E, 0xB8, 0xFE,
880 			0xAC, 0xDF, 0xEC, 0x1F, 0x8E, 0x3E, 0x52, 0x77,
881 			0xF8, 0x18, 0x0B, 0x43, 0x36, 0x1F, 0x65, 0x12,
882 			0xAD, 0xB1, 0x6D, 0x2E, 0x38, 0x54, 0x8A, 0x2C,
883 			0x71, 0x9D, 0xBA, 0x72, 0x28, 0xD8, 0x40,
884 			/* ICV */
885 			0x88, 0xF8, 0x75, 0x7A, 0xDB, 0x8A, 0xA7, 0x88,
886 			0xD8, 0xF6, 0x5A, 0xD6, 0x68, 0xBE, 0x70, 0xE7,
887 		},
888 		.len = 99,
889 	},
890 },
891 /* gcm_256_75B_cipher */
892 {
893 	.test_idx = 14,
894 	.alg = RTE_SECURITY_MACSEC_ALG_GCM_256,
895 	.ssci = 0,
896 	.xpn = 0, /* Most significant 32 bits */
897 	.salt = {0},
898 	.sa_key = {
899 		.data = {
900 			0x4C, 0x97, 0x3D, 0xBC, 0x73, 0x64, 0x62, 0x16,
901 			0x74, 0xF8, 0xB5, 0xB8, 0x9E, 0x5C, 0x15, 0x51,
902 			0x1F, 0xCE, 0xD9, 0x21, 0x64, 0x90, 0xFB, 0x1C,
903 			0x1A, 0x2C, 0xAA, 0x0F, 0xFE, 0x04, 0x07, 0xE5,
904 		},
905 		.len = 32,
906 	},
907 	.plain_pkt = {
908 		.data = {/* MAC DA */
909 			0x68, 0xF2, 0xE7, 0x76, 0x96, 0xCE,
910 			/* MAC SA */
911 			0x7A, 0xE8, 0xE2, 0xCA, 0x4E, 0xC5,
912 			/* User Data */
913 			0x08, 0x00, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14,
914 			0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C,
915 			0x1D, 0x1E, 0x1F, 0x20, 0x21, 0x22, 0x23, 0x24,
916 			0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2B, 0x2C,
917 			0x2D, 0x2E, 0x2F, 0x30, 0x31, 0x32, 0x33, 0x34,
918 			0x35, 0x36, 0x37, 0x38, 0x39, 0x3A, 0x3B, 0x3C,
919 			0x3D, 0x3E, 0x3F, 0x40, 0x41, 0x42, 0x43, 0x44,
920 			0x45, 0x46, 0x47, 0x48, 0x49, 0x00, 0x08,
921 		},
922 		.len = 75,
923 	},
924 	.secure_pkt = {
925 		.data = {/* MAC DA */
926 			0x68, 0xF2, 0xE7, 0x76, 0x96, 0xCE,
927 			/* MAC SA */
928 			0x7A, 0xE8, 0xE2, 0xCA, 0x4E, 0xC5,
929 			/* MACsec EtherType */
930 			0x88, 0xE5,
931 			/* TCI and AN */
932 			0x4D,
933 			/* SL */
934 			0x00,
935 			/* PN */
936 			0x2E, 0x58, 0x49, 0x5C,
937 			/* SCI */
938 			/* Secure Data */
939 			0xBA, 0x8A, 0xE3, 0x1B, 0xC5, 0x06, 0x48, 0x6D,
940 			0x68, 0x73, 0xE4, 0xFC, 0xE4, 0x60, 0xE7, 0xDC,
941 			0x57, 0x59, 0x1F, 0xF0, 0x06, 0x11, 0xF3, 0x1C,
942 			0x38, 0x34, 0xFE, 0x1C, 0x04, 0xAD, 0x80, 0xB6,
943 			0x68, 0x03, 0xAF, 0xCF, 0x5B, 0x27, 0xE6, 0x33,
944 			0x3F, 0xA6, 0x7C, 0x99, 0xDA, 0x47, 0xC2, 0xF0,
945 			0xCE, 0xD6, 0x8D, 0x53, 0x1B, 0xD7, 0x41, 0xA9,
946 			0x43, 0xCF, 0xF7, 0xA6, 0x71, 0x3B, 0xD0,
947 			/* ICV */
948 			0x26, 0x11, 0xCD, 0x7D, 0xAA, 0x01, 0xD6, 0x1C,
949 			0x5C, 0x88, 0x6D, 0xC1, 0xA8, 0x17, 0x01, 0x07,
950 		},
951 		.len = 99,
952 	},
953 },
954 /* gcm_128_xpn_75B_cipher */
955 {
956 	.test_idx = 15,
957 	.alg = RTE_SECURITY_MACSEC_ALG_GCM_XPN_128,
958 	.ssci = 0x7A30C118,
959 	.xpn = 0xB0DF459C, /* Most significant 32 bits */
960 	.salt = {
961 		0xE6, 0x30, 0xE8, 0x1A, 0x48, 0xDE, 0x86, 0xA2,
962 		0x1C, 0x66, 0xFA, 0x6D,
963 	},
964 	.sa_key = {
965 		.data = {
966 			0x88, 0xEE, 0x08, 0x7F, 0xD9, 0x5D, 0xA9, 0xFB,
967 			0xF6, 0x72, 0x5A, 0xA9, 0xD7, 0x57, 0xB0, 0xCD,
968 		},
969 		.len = 16,
970 	},
971 	.plain_pkt = {
972 		.data = {/* MAC DA */
973 			0x68, 0xF2, 0xE7, 0x76, 0x96, 0xCE,
974 			/* MAC SA */
975 			0x7A, 0xE8, 0xE2, 0xCA, 0x4E, 0xC5,
976 			/* User Data */
977 			0x08, 0x00, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14,
978 			0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C,
979 			0x1D, 0x1E, 0x1F, 0x20, 0x21, 0x22, 0x23, 0x24,
980 			0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2B, 0x2C,
981 			0x2D, 0x2E, 0x2F, 0x30, 0x31, 0x32, 0x33, 0x34,
982 			0x35, 0x36, 0x37, 0x38, 0x39, 0x3A, 0x3B, 0x3C,
983 			0x3D, 0x3E, 0x3F, 0x40, 0x41, 0x42, 0x43, 0x44,
984 			0x45, 0x46, 0x47, 0x48, 0x49, 0x00, 0x08,
985 		},
986 		.len = 75,
987 	},
988 	.secure_pkt = {
989 		.data = {/* MAC DA */
990 			0x68, 0xF2, 0xE7, 0x76, 0x96, 0xCE,
991 			/* MAC SA */
992 			0x7A, 0xE8, 0xE2, 0xCA, 0x4E, 0xC5,
993 			/* MACsec EtherType */
994 			0x88, 0xE5,
995 			/* TCI and AN */
996 			0x4D,
997 			/* SL */
998 			0x00,
999 			/* PN */
1000 			0x2E, 0x58, 0x49, 0x5C,
1001 			/* SCI */
1002 			/* Secure Data */
1003 			0xEA, 0xEC, 0xC6, 0xAF, 0x65, 0x12, 0xFC, 0x8B,
1004 			0x6C, 0x8C, 0x43, 0xBC, 0x55, 0xB1, 0x90, 0xB2,
1005 			0x62, 0x6D, 0x07, 0xD3, 0xD2, 0x18, 0xFA, 0xF5,
1006 			0xDA, 0xA7, 0xD8, 0xF8, 0x00, 0xA5, 0x73, 0x31,
1007 			0xEB, 0x43, 0xB5, 0xA1, 0x7A, 0x37, 0xE5, 0xB1,
1008 			0xD6, 0x0D, 0x27, 0x5C, 0xCA, 0xF7, 0xAC, 0xD7,
1009 			0x04, 0xCC, 0x9A, 0xCE, 0x2B, 0xF8, 0xBC, 0x8B,
1010 			0x9B, 0x23, 0xB9, 0xAD, 0xF0, 0x2F, 0x87,
1011 			/* ICV */
1012 			0x34, 0x6B, 0x96, 0xD1, 0x13, 0x6A, 0x75, 0x4D,
1013 			0xF0, 0xA6, 0xCD, 0xE1, 0x26, 0xC1, 0x07, 0xF8,
1014 		},
1015 		.len = 99,
1016 	},
1017 },
1018 /* gcm_256_xpn_75B_cipher */
1019 {
1020 	.test_idx = 16,
1021 	.alg = RTE_SECURITY_MACSEC_ALG_GCM_XPN_256,
1022 	.ssci = 0x7A30C118,
1023 	.xpn = 0xB0DF459C, /* Most significant 32 bits */
1024 	.salt = {
1025 		0xE6, 0x30, 0xE8, 0x1A, 0x48, 0xDE, 0x86, 0xA2,
1026 		0x1C, 0x66, 0xFA, 0x6D,
1027 	},
1028 	.sa_key = {
1029 		.data = {
1030 			0x4C, 0x97, 0x3D, 0xBC, 0x73, 0x64, 0x62, 0x16,
1031 			0x74, 0xF8, 0xB5, 0xB8, 0x9E, 0x5C, 0x15, 0x51,
1032 			0x1F, 0xCE, 0xD9, 0x21, 0x64, 0x90, 0xFB, 0x1C,
1033 			0x1A, 0x2C, 0xAA, 0x0F, 0xFE, 0x04, 0x07, 0xE5,
1034 		},
1035 		.len = 32,
1036 	},
1037 	.plain_pkt = {
1038 		.data = {/* MAC DA */
1039 			0x68, 0xF2, 0xE7, 0x76, 0x96, 0xCE,
1040 			/* MAC SA */
1041 			0x7A, 0xE8, 0xE2, 0xCA, 0x4E, 0xC5,
1042 			/* User Data */
1043 			0x08, 0x00, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14,
1044 			0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C,
1045 			0x1D, 0x1E, 0x1F, 0x20, 0x21, 0x22, 0x23, 0x24,
1046 			0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2B, 0x2C,
1047 			0x2D, 0x2E, 0x2F, 0x30, 0x31, 0x32, 0x33, 0x34,
1048 			0x35, 0x36, 0x37, 0x38, 0x39, 0x3A, 0x3B, 0x3C,
1049 			0x3D, 0x3E, 0x3F, 0x40, 0x41, 0x42, 0x43, 0x44,
1050 			0x45, 0x46, 0x47, 0x48, 0x49, 0x00, 0x08,
1051 		},
1052 		.len = 75,
1053 	},
1054 	.secure_pkt = {
1055 		.data = {/* MAC DA */
1056 			0x68, 0xF2, 0xE7, 0x76, 0x96, 0xCE,
1057 			/* MAC SA */
1058 			0x7A, 0xE8, 0xE2, 0xCA, 0x4E, 0xC5,
1059 			/* MACsec EtherType */
1060 			0x88, 0xE5,
1061 			/* TCI and AN */
1062 			0x4D,
1063 			/* SL */
1064 			0x00,
1065 			/* PN */
1066 			0x2E, 0x58, 0x49, 0x5C,
1067 			/* SCI */
1068 			/* Secure Data */
1069 			0xB0, 0xFE, 0xA3, 0x63, 0x18, 0xB9, 0xB3, 0x64,
1070 			0x66, 0xC4, 0x6E, 0x9E, 0x1B, 0xDA, 0x1A, 0x26,
1071 			0x68, 0x58, 0x19, 0x6E, 0x7E, 0x70, 0xD8, 0x82,
1072 			0xAE, 0x70, 0x47, 0x56, 0x68, 0xCD, 0xE4, 0xEC,
1073 			0x88, 0x3F, 0x6A, 0xC2, 0x36, 0x9F, 0x28, 0x4B,
1074 			0xED, 0x1F, 0xE3, 0x2F, 0x42, 0x09, 0x2F, 0xDF,
1075 			0xF5, 0x86, 0x8A, 0x3C, 0x64, 0xE5, 0x61, 0x51,
1076 			0x92, 0xA7, 0xA3, 0x76, 0x0B, 0x34, 0xBC,
1077 			/* ICV */
1078 			0x85, 0x69, 0x2C, 0xD8, 0x15, 0xB6, 0x64, 0x71,
1079 			0x1A, 0xEF, 0x91, 0x1D, 0xF7, 0x8D, 0x7F, 0x46,
1080 		},
1081 		.len = 99,
1082 	},
1083 },
1084 };
1085 
1086 static const struct mcs_test_vector list_mcs_integrity_vectors[] = {
1087 /* gcm_128_54B_integrity */
1088 {
1089 	.test_idx = 1,
1090 	.alg = RTE_SECURITY_MACSEC_ALG_GCM_128,
1091 	.ssci = 0,
1092 	.xpn = 0, /* Most significant 32 bits */
1093 	.salt = {0},
1094 	.sa_key = {
1095 		.data = {
1096 			0xAD, 0x7A, 0x2B, 0xD0, 0x3E, 0xAC, 0x83, 0x5A,
1097 			0x6F, 0x62, 0x0F, 0xDC, 0xB5, 0x06, 0xB3, 0x45,
1098 		},
1099 		.len = 16,
1100 	},
1101 	.plain_pkt = {
1102 		.data = {/* MAC DA */
1103 			0xD6, 0x09, 0xB1, 0xF0, 0x56, 0x63,
1104 			/* MAC SA */
1105 			0x7A, 0x0D, 0x46, 0xDF, 0x99, 0x8D,
1106 			/* User Data */
1107 			0x08, 0x00, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14,
1108 			0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C,
1109 			0x1D, 0x1E, 0x1F, 0x20, 0x21, 0x22, 0x23, 0x24,
1110 			0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2B, 0x2C,
1111 			0x2D, 0x2E, 0x2F, 0x30, 0x31, 0x32, 0x33, 0x34,
1112 			0x00, 0x01,
1113 		},
1114 		.len = 54,
1115 	},
1116 	.secure_pkt = {
1117 		.data = {/* MAC DA */
1118 			0xD6, 0x09, 0xB1, 0xF0, 0x56, 0x63,
1119 			/* MAC SA */
1120 			0x7A, 0x0D, 0x46, 0xDF, 0x99, 0x8D,
1121 			/* MACsec EtherType */
1122 			0x88, 0xE5,
1123 			/* TCI and AN */
1124 			0x22,
1125 			/* SL */
1126 			0x2A,
1127 			/* PN */
1128 			0xB2, 0xC2, 0x84, 0x65,
1129 			/* SCI */
1130 			0x12, 0x15, 0x35, 0x24, 0xC0, 0x89, 0x5E, 0x81,
1131 			/* Secure Data */
1132 			0x08, 0x00, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14,
1133 			0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C,
1134 			0x1D, 0x1E, 0x1F, 0x20, 0x21, 0x22, 0x23, 0x24,
1135 			0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2B, 0x2C,
1136 			0x2D, 0x2E, 0x2F, 0x30, 0x31, 0x32, 0x33, 0x34,
1137 			0x00, 0x01,
1138 			/* ICV */
1139 			0xF0, 0x94, 0x78, 0xA9, 0xB0, 0x90, 0x07, 0xD0,
1140 			0x6F, 0x46, 0xE9, 0xB6, 0xA1, 0xDA, 0x25, 0xDD,
1141 		},
1142 		.len = 86,
1143 	},
1144 },
1145 /* gcm_256_54B_integrity */
1146 {
1147 	.test_idx = 2,
1148 	.alg = RTE_SECURITY_MACSEC_ALG_GCM_256,
1149 	.ssci = 0,
1150 	.xpn = 0, /* Most significant 32 bits */
1151 	.salt = {0},
1152 	.sa_key = {
1153 		.data = {
1154 			0xE3, 0xC0, 0x8A, 0x8F, 0x06, 0xC6, 0xE3, 0xAD,
1155 			0x95, 0xA7, 0x05, 0x57, 0xB2, 0x3F, 0x75, 0x48,
1156 			0x3C, 0xE3, 0x30, 0x21, 0xA9, 0xC7, 0x2B, 0x70,
1157 			0x25, 0x66, 0x62, 0x04, 0xC6, 0x9C, 0x0B, 0x72,
1158 		},
1159 		.len = 32,
1160 	},
1161 	.plain_pkt = {
1162 		.data = {/* MAC DA */
1163 			0xD6, 0x09, 0xB1, 0xF0, 0x56, 0x63,
1164 			/* MAC SA */
1165 			0x7A, 0x0D, 0x46, 0xDF, 0x99, 0x8D,
1166 			/* User Data */
1167 			0x08, 0x00, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14,
1168 			0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C,
1169 			0x1D, 0x1E, 0x1F, 0x20, 0x21, 0x22, 0x23, 0x24,
1170 			0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2B, 0x2C,
1171 			0x2D, 0x2E, 0x2F, 0x30, 0x31, 0x32, 0x33, 0x34,
1172 			0x00, 0x01,
1173 		},
1174 		.len = 54,
1175 	},
1176 	.secure_pkt = {
1177 		.data = {/* MAC DA */
1178 			0xD6, 0x09, 0xB1, 0xF0, 0x56, 0x63,
1179 			/* MAC SA */
1180 			0x7A, 0x0D, 0x46, 0xDF, 0x99, 0x8D,
1181 			/* MACsec EtherType */
1182 			0x88, 0xE5,
1183 			/* TCI and AN */
1184 			0x22,
1185 			/* SL */
1186 			0x2A,
1187 			/* PN */
1188 			0xB2, 0xC2, 0x84, 0x65,
1189 			/* SCI */
1190 			0x12, 0x15, 0x35, 0x24, 0xC0, 0x89, 0x5E, 0x81,
1191 			/* Secure Data */
1192 			0x08, 0x00, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14,
1193 			0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C,
1194 			0x1D, 0x1E, 0x1F, 0x20, 0x21, 0x22, 0x23, 0x24,
1195 			0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2B, 0x2C,
1196 			0x2D, 0x2E, 0x2F, 0x30, 0x31, 0x32, 0x33, 0x34,
1197 			0x00, 0x01,
1198 			/* ICV */
1199 			0x2F, 0x0B, 0xC5, 0xAF, 0x40, 0x9E, 0x06, 0xD6,
1200 			0x09, 0xEA, 0x8B, 0x7D, 0x0F, 0xA5, 0xEA, 0x50,
1201 		},
1202 		.len = 86,
1203 	},
1204 },
1205 /* gcm_128_xpn_54B_integrity */
1206 {
1207 	.test_idx = 3,
1208 	.alg = RTE_SECURITY_MACSEC_ALG_GCM_XPN_128,
1209 	.ssci = 0x7A30C118,
1210 	.xpn = 0xB0DF459C, /* Most significant 32 bits */
1211 	.salt = {
1212 		0xE6, 0x30, 0xE8, 0x1A, 0x48, 0xDE, 0x86, 0xA2,
1213 		0x1C, 0x66, 0xFA, 0x6D,
1214 	},
1215 	.sa_key = {
1216 		.data = {
1217 			0xAD, 0x7A, 0x2B, 0xD0, 0x3E, 0xAC, 0x83, 0x5A,
1218 			0x6F, 0x62, 0x0F, 0xDC, 0xB5, 0x06, 0xB3, 0x45,
1219 		},
1220 		.len = 16,
1221 	},
1222 	.plain_pkt = {
1223 		.data = {/* MAC DA */
1224 			0xD6, 0x09, 0xB1, 0xF0, 0x56, 0x63,
1225 			/* MAC SA */
1226 			0x7A, 0x0D, 0x46, 0xDF, 0x99, 0x8D,
1227 			/* User Data */
1228 			0x08, 0x00, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14,
1229 			0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C,
1230 			0x1D, 0x1E, 0x1F, 0x20, 0x21, 0x22, 0x23, 0x24,
1231 			0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2B, 0x2C,
1232 			0x2D, 0x2E, 0x2F, 0x30, 0x31, 0x32, 0x33, 0x34,
1233 			0x00, 0x01,
1234 		},
1235 		.len = 54,
1236 	},
1237 	.secure_pkt = {
1238 		.data = {/* MAC DA */
1239 			0xD6, 0x09, 0xB1, 0xF0, 0x56, 0x63,
1240 			/* MAC SA */
1241 			0x7A, 0x0D, 0x46, 0xDF, 0x99, 0x8D,
1242 			/* MACsec EtherType */
1243 			0x88, 0xE5,
1244 			/* TCI and AN */
1245 			0x22,
1246 			/* SL */
1247 			0x2A,
1248 			/* PN */
1249 			0xB2, 0xC2, 0x84, 0x65,
1250 			/* SCI */
1251 			0x12, 0x15, 0x35, 0x24, 0xC0, 0x89, 0x5E, 0x81,
1252 			/* Secure Data */
1253 			0x08, 0x00, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14,
1254 			0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C,
1255 			0x1D, 0x1E, 0x1F, 0x20, 0x21, 0x22, 0x23, 0x24,
1256 			0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2B, 0x2C,
1257 			0x2D, 0x2E, 0x2F, 0x30, 0x31, 0x32, 0x33, 0x34,
1258 			0x00, 0x01,
1259 			/* ICV */
1260 			0x17, 0xFE, 0x19, 0x81, 0xEB, 0xDD, 0x4A, 0xFC,
1261 			0x50, 0x62, 0x69, 0x7E, 0x8B, 0xAA, 0x0C, 0x23,
1262 		},
1263 		.len = 86,
1264 	},
1265 },
1266 /* gcm_256_xpn_54B_integrity */
1267 {
1268 	.test_idx = 4,
1269 	.alg = RTE_SECURITY_MACSEC_ALG_GCM_XPN_256,
1270 	.ssci = 0x7A30C118,
1271 	.xpn = 0xB0DF459C, /* Most significant 32 bits */
1272 	.salt = {
1273 		0xE6, 0x30, 0xE8, 0x1A, 0x48, 0xDE, 0x86, 0xA2,
1274 		0x1C, 0x66, 0xFA, 0x6D,
1275 	},
1276 	.sa_key = {
1277 		.data = {
1278 			0xE3, 0xC0, 0x8A, 0x8F, 0x06, 0xC6, 0xE3, 0xAD,
1279 			0x95, 0xA7, 0x05, 0x57, 0xB2, 0x3F, 0x75, 0x48,
1280 			0x3C, 0xE3, 0x30, 0x21, 0xA9, 0xC7, 0x2B, 0x70,
1281 			0x25, 0x66, 0x62, 0x04, 0xC6, 0x9C, 0x0B, 0x72,
1282 		},
1283 		.len = 32,
1284 	},
1285 	.plain_pkt = {
1286 		.data = {/* MAC DA */
1287 			0xD6, 0x09, 0xB1, 0xF0, 0x56, 0x63,
1288 			/* MAC SA */
1289 			0x7A, 0x0D, 0x46, 0xDF, 0x99, 0x8D,
1290 			/* User Data */
1291 			0x08, 0x00, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14,
1292 			0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C,
1293 			0x1D, 0x1E, 0x1F, 0x20, 0x21, 0x22, 0x23, 0x24,
1294 			0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2B, 0x2C,
1295 			0x2D, 0x2E, 0x2F, 0x30, 0x31, 0x32, 0x33, 0x34,
1296 			0x00, 0x01,
1297 		},
1298 		.len = 54,
1299 	},
1300 	.secure_pkt = {
1301 		.data = {/* MAC DA */
1302 			0xD6, 0x09, 0xB1, 0xF0, 0x56, 0x63,
1303 			/* MAC SA */
1304 			0x7A, 0x0D, 0x46, 0xDF, 0x99, 0x8D,
1305 			/* MACsec EtherType */
1306 			0x88, 0xE5,
1307 			/* TCI and AN */
1308 			0x22,
1309 			/* SL */
1310 			0x2A,
1311 			/* PN */
1312 			0xB2, 0xC2, 0x84, 0x65,
1313 			/* SCI */
1314 			0x12, 0x15, 0x35, 0x24, 0xC0, 0x89, 0x5E, 0x81,
1315 			/* Secure Data */
1316 			0x08, 0x00, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14,
1317 			0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C,
1318 			0x1D, 0x1E, 0x1F, 0x20, 0x21, 0x22, 0x23, 0x24,
1319 			0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2B, 0x2C,
1320 			0x2D, 0x2E, 0x2F, 0x30, 0x31, 0x32, 0x33, 0x34,
1321 			0x00, 0x01,
1322 			/* ICV */
1323 			0x4D, 0xBD, 0x2F, 0x6A, 0x75, 0x4A, 0x6C, 0xF7,
1324 			0x28, 0xCC, 0x12, 0x9B, 0xA6, 0x93, 0x15, 0x77,
1325 		},
1326 		.len = 86,
1327 	},
1328 },
1329 /* gcm_128_60B_integrity */
1330 {
1331 	.test_idx = 5,
1332 	.alg = RTE_SECURITY_MACSEC_ALG_GCM_128,
1333 	.ssci = 0,
1334 	.xpn = 0, /* Most significant 32 bits */
1335 	.salt = {0},
1336 	.sa_key = {
1337 		.data = {
1338 			0x07, 0x1B, 0x11, 0x3B, 0x0C, 0xA7, 0x43, 0xFE,
1339 			0xCC, 0xCF, 0x3D, 0x05, 0x1F, 0x73, 0x73, 0x82,
1340 		},
1341 		.len = 16,
1342 	},
1343 	.plain_pkt = {
1344 		.data = {/* MAC DA */
1345 			0xE2, 0x01, 0x06, 0xD7, 0xCD, 0x0D,
1346 			/* MAC SA */
1347 			0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,
1348 			/* User Data */
1349 			0x08, 0x00, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14,
1350 			0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C,
1351 			0x1D, 0x1E, 0x1F, 0x20, 0x21, 0x22, 0x23, 0x24,
1352 			0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2B, 0x2C,
1353 			0x2D, 0x2E, 0x2F, 0x30, 0x31, 0x32, 0x33, 0x34,
1354 			0x35, 0x36, 0x37, 0x38, 0x39, 0x3A, 0x00, 0x03,
1355 		},
1356 		.len = 60,
1357 	},
1358 	.secure_pkt = {
1359 		.data = {/* MAC DA */
1360 			0xE2, 0x01, 0x06, 0xD7, 0xCD, 0x0D,
1361 			/* MAC SA */
1362 			0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,
1363 			/* MACsec EtherType */
1364 			0x88, 0xE5,
1365 			/* TCI and AN */
1366 			0x40,
1367 			/* SL */
1368 			0x00,
1369 			/* PN */
1370 			0x76, 0xD4, 0x57, 0xED,
1371 			/* SCI */
1372 			/* Secure Data */
1373 			0x08, 0x00, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14,
1374 			0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C,
1375 			0x1D, 0x1E, 0x1F, 0x20, 0x21, 0x22, 0x23, 0x24,
1376 			0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2B, 0x2C,
1377 			0x2D, 0x2E, 0x2F, 0x30, 0x31, 0x32, 0x33, 0x34,
1378 			0x35, 0x36, 0x37, 0x38, 0x39, 0x3A, 0x00, 0x03,
1379 			/* ICV */
1380 			0x0C, 0x01, 0x7B, 0xC7, 0x3B, 0x22, 0x7D, 0xFC,
1381 			0xC9, 0xBA, 0xFA, 0x1C, 0x41, 0xAC, 0xC3, 0x53,
1382 		},
1383 		.len = 84,
1384 	},
1385 },
1386 /* gcm_256_60B_integrity */
1387 {
1388 	.test_idx = 6,
1389 	.alg = RTE_SECURITY_MACSEC_ALG_GCM_256,
1390 	.ssci = 0,
1391 	.xpn = 0, /* Most significant 32 bits */
1392 	.salt = {0},
1393 	.sa_key = {
1394 		.data = {
1395 			0x69, 0x1D, 0x3E, 0xE9, 0x09, 0xD7, 0xF5, 0x41,
1396 			0x67, 0xFD, 0x1C, 0xA0, 0xB5, 0xD7, 0x69, 0x08,
1397 			0x1F, 0x2B, 0xDE, 0x1A, 0xEE, 0x65, 0x5F, 0xDB,
1398 			0xAB, 0x80, 0xBD, 0x52, 0x95, 0xAE, 0x6B, 0xE7,
1399 		},
1400 		.len = 32,
1401 	},
1402 	.plain_pkt = {
1403 		.data = {/* MAC DA */
1404 			0xE2, 0x01, 0x06, 0xD7, 0xCD, 0x0D,
1405 			/* MAC SA */
1406 			0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,
1407 			/* User Data */
1408 			0x08, 0x00, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14,
1409 			0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C,
1410 			0x1D, 0x1E, 0x1F, 0x20, 0x21, 0x22, 0x23, 0x24,
1411 			0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2B, 0x2C,
1412 			0x2D, 0x2E, 0x2F, 0x30, 0x31, 0x32, 0x33, 0x34,
1413 			0x35, 0x36, 0x37, 0x38, 0x39, 0x3A, 0x00, 0x03,
1414 		},
1415 		.len = 60,
1416 	},
1417 	.secure_pkt = {
1418 		.data = {/* MAC DA */
1419 			0xE2, 0x01, 0x06, 0xD7, 0xCD, 0x0D,
1420 			/* MAC SA */
1421 			0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,
1422 			/* MACsec EtherType */
1423 			0x88, 0xE5,
1424 			/* TCI and AN */
1425 			0x40,
1426 			/* SL */
1427 			0x00,
1428 			/* PN */
1429 			0x76, 0xD4, 0x57, 0xED,
1430 			/* SCI */
1431 			/* Secure Data */
1432 			0x08, 0x00, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14,
1433 			0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C,
1434 			0x1D, 0x1E, 0x1F, 0x20, 0x21, 0x22, 0x23, 0x24,
1435 			0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2B, 0x2C,
1436 			0x2D, 0x2E, 0x2F, 0x30, 0x31, 0x32, 0x33, 0x34,
1437 			0x35, 0x36, 0x37, 0x38, 0x39, 0x3A, 0x00, 0x03,
1438 			/* ICV */
1439 			0x35, 0x21, 0x7C, 0x77, 0x4B, 0xBC, 0x31, 0xB6,
1440 			0x31, 0x66, 0xBC, 0xF9, 0xD4, 0xAB, 0xED, 0x07,
1441 		},
1442 		.len = 84,
1443 	},
1444 },
1445 /* gcm_128_xpn_60B_integrity */
1446 {
1447 	.test_idx = 7,
1448 	.alg = RTE_SECURITY_MACSEC_ALG_GCM_XPN_128,
1449 	.ssci = 0x7A30C118,
1450 	.xpn = 0xB0DF459C, /* Most significant 32 bits */
1451 	.salt = {
1452 		0xE6, 0x30, 0xE8, 0x1A, 0x48, 0xDE, 0x86, 0xA2,
1453 		0x1C, 0x66, 0xFA, 0x6D,
1454 	},
1455 	.sa_key = {
1456 		.data = {
1457 			0x07, 0x1B, 0x11, 0x3B, 0x0C, 0xA7, 0x43, 0xFE,
1458 			0xCC, 0xCF, 0x3D, 0x05, 0x1F, 0x73, 0x73, 0x82,
1459 		},
1460 		.len = 16,
1461 	},
1462 	.plain_pkt = {
1463 		.data = {/* MAC DA */
1464 			0xE2, 0x01, 0x06, 0xD7, 0xCD, 0x0D,
1465 			/* MAC SA */
1466 			0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,
1467 			/* User Data */
1468 			0x08, 0x00, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14,
1469 			0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C,
1470 			0x1D, 0x1E, 0x1F, 0x20, 0x21, 0x22, 0x23, 0x24,
1471 			0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2B, 0x2C,
1472 			0x2D, 0x2E, 0x2F, 0x30, 0x31, 0x32, 0x33, 0x34,
1473 			0x35, 0x36, 0x37, 0x38, 0x39, 0x3A, 0x00, 0x03,
1474 		},
1475 		.len = 60,
1476 	},
1477 	.secure_pkt = {
1478 		.data = {/* MAC DA */
1479 			0xE2, 0x01, 0x06, 0xD7, 0xCD, 0x0D,
1480 			/* MAC SA */
1481 			0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,
1482 			/* MACsec EtherType */
1483 			0x88, 0xE5,
1484 			/* TCI and AN */
1485 			0x40,
1486 			/* SL */
1487 			0x00,
1488 			/* PN */
1489 			0x76, 0xD4, 0x57, 0xED,
1490 			/* SCI */
1491 			/* Secure Data */
1492 			0x08, 0x00, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14,
1493 			0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C,
1494 			0x1D, 0x1E, 0x1F, 0x20, 0x21, 0x22, 0x23, 0x24,
1495 			0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2B, 0x2C,
1496 			0x2D, 0x2E, 0x2F, 0x30, 0x31, 0x32, 0x33, 0x34,
1497 			0x35, 0x36, 0x37, 0x38, 0x39, 0x3A, 0x00, 0x03,
1498 			/* ICV */
1499 			0xAB, 0xC4, 0x06, 0x85, 0xA3, 0xCF, 0x91, 0x1D,
1500 			0x37, 0x87, 0xE4, 0x9D, 0xB6, 0xA7, 0x26, 0x5E,
1501 		},
1502 		.len = 84,
1503 	},
1504 },
1505 /* gcm_256_xpn_60B_integrity */
1506 {
1507 	.test_idx = 8,
1508 	.alg = RTE_SECURITY_MACSEC_ALG_GCM_XPN_256,
1509 	.ssci = 0x7A30C118,
1510 	.xpn = 0xB0DF459C, /* Most significant 32 bits */
1511 	.salt = {
1512 		0xE6, 0x30, 0xE8, 0x1A, 0x48, 0xDE, 0x86, 0xA2,
1513 		0x1C, 0x66, 0xFA, 0x6D,
1514 	},
1515 	.sa_key = {
1516 		.data = {
1517 			0x69, 0x1D, 0x3E, 0xE9, 0x09, 0xD7, 0xF5, 0x41,
1518 			0x67, 0xFD, 0x1C, 0xA0, 0xB5, 0xD7, 0x69, 0x08,
1519 			0x1F, 0x2B, 0xDE, 0x1A, 0xEE, 0x65, 0x5F, 0xDB,
1520 			0xAB, 0x80, 0xBD, 0x52, 0x95, 0xAE, 0x6B, 0xE7,
1521 		},
1522 		.len = 32,
1523 	},
1524 	.plain_pkt = {
1525 		.data = {/* MAC DA */
1526 			0xE2, 0x01, 0x06, 0xD7, 0xCD, 0x0D,
1527 			/* MAC SA */
1528 			0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,
1529 			/* User Data */
1530 			0x08, 0x00, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14,
1531 			0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C,
1532 			0x1D, 0x1E, 0x1F, 0x20, 0x21, 0x22, 0x23, 0x24,
1533 			0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2B, 0x2C,
1534 			0x2D, 0x2E, 0x2F, 0x30, 0x31, 0x32, 0x33, 0x34,
1535 			0x35, 0x36, 0x37, 0x38, 0x39, 0x3A, 0x00, 0x03,
1536 		},
1537 		.len = 60,
1538 	},
1539 	.secure_pkt = {
1540 		.data = {/* MAC DA */
1541 			0xE2, 0x01, 0x06, 0xD7, 0xCD, 0x0D,
1542 			/* MAC SA */
1543 			0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,
1544 			/* MACsec EtherType */
1545 			0x88, 0xE5,
1546 			/* TCI and AN */
1547 			0x40,
1548 			/* SL */
1549 			0x00,
1550 			/* PN */
1551 			0x76, 0xD4, 0x57, 0xED,
1552 			/* SCI */
1553 			/* Secure Data */
1554 			0x08, 0x00, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14,
1555 			0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C,
1556 			0x1D, 0x1E, 0x1F, 0x20, 0x21, 0x22, 0x23, 0x24,
1557 			0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2B, 0x2C,
1558 			0x2D, 0x2E, 0x2F, 0x30, 0x31, 0x32, 0x33, 0x34,
1559 			0x35, 0x36, 0x37, 0x38, 0x39, 0x3A, 0x00, 0x03,
1560 			/* ICV */
1561 			0xAC, 0x21, 0x95, 0x7B, 0x83, 0x12, 0xAB, 0x3C,
1562 			0x99, 0xAB, 0x46, 0x84, 0x98, 0x79, 0xC3, 0xF3,
1563 		},
1564 		.len = 84,
1565 	},
1566 },
1567 /* gcm_128_65B_integrity */
1568 {
1569 	.test_idx = 9,
1570 	.alg = RTE_SECURITY_MACSEC_ALG_GCM_128,
1571 	.ssci = 0,
1572 	.xpn = 0, /* Most significant 32 bits */
1573 	.salt = {0},
1574 	.sa_key = {
1575 		.data = {
1576 			0x01, 0x3F, 0xE0, 0x0B, 0x5F, 0x11, 0xBE, 0x7F,
1577 			0x86, 0x6D, 0x0C, 0xBB, 0xC5, 0x5A, 0x7A, 0x90,
1578 		},
1579 		.len = 16,
1580 	},
1581 	.plain_pkt = {
1582 		.data = {/* MAC DA */
1583 			0x84, 0xC5, 0xD5, 0x13, 0xD2, 0xAA,
1584 			/* MAC SA */
1585 			0xF6, 0xE5, 0xBB, 0xD2, 0x72, 0x77,
1586 			/* User Data */
1587 			0x08, 0x00, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14,
1588 			0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C,
1589 			0x1D, 0x1E, 0x1F, 0x20, 0x21, 0x22, 0x23, 0x24,
1590 			0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2B, 0x2C,
1591 			0x2D, 0x2E, 0x2F, 0x30, 0x31, 0x32, 0x33, 0x34,
1592 			0x35, 0x36, 0x37, 0x38, 0x39, 0x3A, 0x3B, 0x3C,
1593 			0x3D, 0x3E, 0x3F, 0x00, 0x05,
1594 		},
1595 		.len = 65,
1596 	},
1597 	.secure_pkt = {
1598 		.data = {/* MAC DA */
1599 			0x84, 0xC5, 0xD5, 0x13, 0xD2, 0xAA,
1600 			/* MAC SA */
1601 			0xF6, 0xE5, 0xBB, 0xD2, 0x72, 0x77,
1602 			/* MACsec EtherType */
1603 			0x88, 0xE5,
1604 			/* TCI and AN */
1605 			0x23,
1606 			/* SL */
1607 			0x00,
1608 			/* PN */
1609 			0x89, 0x32, 0xD6, 0x12,
1610 			/* SCI */
1611 			0x7C, 0xFD, 0xE9, 0xF9, 0xE3, 0x37, 0x24, 0xC6,
1612 			/* Secure Data */
1613 			0x08, 0x00, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14,
1614 			0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C,
1615 			0x1D, 0x1E, 0x1F, 0x20, 0x21, 0x22, 0x23, 0x24,
1616 			0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2B, 0x2C,
1617 			0x2D, 0x2E, 0x2F, 0x30, 0x31, 0x32, 0x33, 0x34,
1618 			0x35, 0x36, 0x37, 0x38, 0x39, 0x3A, 0x3B, 0x3C,
1619 			0x3D, 0x3E, 0x3F, 0x00, 0x05,
1620 			/* ICV */
1621 			0x21, 0x78, 0x67, 0xE5, 0x0C, 0x2D, 0xAD, 0x74,
1622 			0xC2, 0x8C, 0x3B, 0x50, 0xAB, 0xDF, 0x69, 0x5A,
1623 		},
1624 		.len = 97,
1625 	},
1626 },
1627 /* gcm_256_65B_integrity */
1628 {
1629 	.test_idx = 10,
1630 	.alg = RTE_SECURITY_MACSEC_ALG_GCM_256,
1631 	.ssci = 0,
1632 	.xpn = 0, /* Most significant 32 bits */
1633 	.salt = {0},
1634 	.sa_key = {
1635 		.data = {
1636 			0x83, 0xC0, 0x93, 0xB5, 0x8D, 0xE7, 0xFF, 0xE1,
1637 			0xC0, 0xDA, 0x92, 0x6A, 0xC4, 0x3F, 0xB3, 0x60,
1638 			0x9A, 0xC1, 0xC8, 0x0F, 0xEE, 0x1B, 0x62, 0x44,
1639 			0x97, 0xEF, 0x94, 0x2E, 0x2F, 0x79, 0xA8, 0x23,
1640 		},
1641 		.len = 32,
1642 	},
1643 	.plain_pkt = {
1644 		.data = {/* MAC DA */
1645 			0x84, 0xC5, 0xD5, 0x13, 0xD2, 0xAA,
1646 			/* MAC SA */
1647 			0xF6, 0xE5, 0xBB, 0xD2, 0x72, 0x77,
1648 			/* User Data */
1649 			0x08, 0x00, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14,
1650 			0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C,
1651 			0x1D, 0x1E, 0x1F, 0x20, 0x21, 0x22, 0x23, 0x24,
1652 			0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2B, 0x2C,
1653 			0x2D, 0x2E, 0x2F, 0x30, 0x31, 0x32, 0x33, 0x34,
1654 			0x35, 0x36, 0x37, 0x38, 0x39, 0x3A, 0x3B, 0x3C,
1655 			0x3D, 0x3E, 0x3F, 0x00, 0x05,
1656 		},
1657 		.len = 65,
1658 	},
1659 	.secure_pkt = {
1660 		.data = {/* MAC DA */
1661 			0x84, 0xC5, 0xD5, 0x13, 0xD2, 0xAA,
1662 			/* MAC SA */
1663 			0xF6, 0xE5, 0xBB, 0xD2, 0x72, 0x77,
1664 			/* MACsec EtherType */
1665 			0x88, 0xE5,
1666 			/* TCI and AN */
1667 			0x23,
1668 			/* SL */
1669 			0x00,
1670 			/* PN */
1671 			0x89, 0x32, 0xD6, 0x12,
1672 			/* SCI */
1673 			0x7C, 0xFD, 0xE9, 0xF9, 0xE3, 0x37, 0x24, 0xC6,
1674 			/* Secure Data */
1675 			0x08, 0x00, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14,
1676 			0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C,
1677 			0x1D, 0x1E, 0x1F, 0x20, 0x21, 0x22, 0x23, 0x24,
1678 			0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2B, 0x2C,
1679 			0x2D, 0x2E, 0x2F, 0x30, 0x31, 0x32, 0x33, 0x34,
1680 			0x35, 0x36, 0x37, 0x38, 0x39, 0x3A, 0x3B, 0x3C,
1681 			0x3D, 0x3E, 0x3F, 0x00, 0x05,
1682 			/* ICV */
1683 			0x6E, 0xE1, 0x60, 0xE8, 0xFA, 0xEC, 0xA4, 0xB3,
1684 			0x6C, 0x86, 0xB2, 0x34, 0x92, 0x0C, 0xA9, 0x75,
1685 		},
1686 		.len = 97,
1687 	},
1688 },
1689 /* gcm_128_xpn_65B_integrity */
1690 {
1691 	.test_idx = 11,
1692 	.alg = RTE_SECURITY_MACSEC_ALG_GCM_XPN_128,
1693 	.ssci = 0x7A30C118,
1694 	.xpn = 0xB0DF459C, /* Most significant 32 bits */
1695 	.salt = {
1696 		0xE6, 0x30, 0xE8, 0x1A, 0x48, 0xDE, 0x86, 0xA2,
1697 		0x1C, 0x66, 0xFA, 0x6D,
1698 	},
1699 	.sa_key = {
1700 		.data = {
1701 			0x01, 0x3F, 0xE0, 0x0B, 0x5F, 0x11, 0xBE, 0x7F,
1702 			0x86, 0x6D, 0x0C, 0xBB, 0xC5, 0x5A, 0x7A, 0x90,
1703 		},
1704 		.len = 16,
1705 	},
1706 	.plain_pkt = {
1707 		.data = {/* MAC DA */
1708 			0x84, 0xC5, 0xD5, 0x13, 0xD2, 0xAA,
1709 			/* MAC SA */
1710 			0xF6, 0xE5, 0xBB, 0xD2, 0x72, 0x77,
1711 			/* User Data */
1712 			0x08, 0x00, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14,
1713 			0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C,
1714 			0x1D, 0x1E, 0x1F, 0x20, 0x21, 0x22, 0x23, 0x24,
1715 			0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2B, 0x2C,
1716 			0x2D, 0x2E, 0x2F, 0x30, 0x31, 0x32, 0x33, 0x34,
1717 			0x35, 0x36, 0x37, 0x38, 0x39, 0x3A, 0x3B, 0x3C,
1718 			0x3D, 0x3E, 0x3F, 0x00, 0x05,
1719 		},
1720 		.len = 65,
1721 	},
1722 	.secure_pkt = {
1723 		.data = {/* MAC DA */
1724 			0x84, 0xC5, 0xD5, 0x13, 0xD2, 0xAA,
1725 			/* MAC SA */
1726 			0xF6, 0xE5, 0xBB, 0xD2, 0x72, 0x77,
1727 			/* MACsec EtherType */
1728 			0x88, 0xE5,
1729 			/* TCI and AN */
1730 			0x23,
1731 			/* SL */
1732 			0x00,
1733 			/* PN */
1734 			0x89, 0x32, 0xD6, 0x12,
1735 			/* SCI */
1736 			0x7C, 0xFD, 0xE9, 0xF9, 0xE3, 0x37, 0x24, 0xC6,
1737 			/* Secure Data */
1738 			0x08, 0x00, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14,
1739 			0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C,
1740 			0x1D, 0x1E, 0x1F, 0x20, 0x21, 0x22, 0x23, 0x24,
1741 			0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2B, 0x2C,
1742 			0x2D, 0x2E, 0x2F, 0x30, 0x31, 0x32, 0x33, 0x34,
1743 			0x35, 0x36, 0x37, 0x38, 0x39, 0x3A, 0x3B, 0x3C,
1744 			0x3D, 0x3E, 0x3F, 0x00, 0x05,
1745 			/* ICV */
1746 			0x67, 0x85, 0x59, 0xB7, 0xE5, 0x2D, 0xB0, 0x06,
1747 			0x82, 0xE3, 0xB8, 0x30, 0x34, 0xCE, 0xBE, 0x59,
1748 		},
1749 		.len = 97,
1750 	},
1751 },
1752 /* gcm_256_xpn_65B_integrity */
1753 {
1754 	.test_idx = 12,
1755 	.alg = RTE_SECURITY_MACSEC_ALG_GCM_XPN_256,
1756 	.ssci = 0x7A30C118,
1757 	.xpn = 0xB0DF459C, /* Most significant 32 bits */
1758 	.salt = {
1759 		0xE6, 0x30, 0xE8, 0x1A, 0x48, 0xDE, 0x86, 0xA2,
1760 		0x1C, 0x66, 0xFA, 0x6D,
1761 	},
1762 	.sa_key = {
1763 		.data = {
1764 			0x83, 0xC0, 0x93, 0xB5, 0x8D, 0xE7, 0xFF, 0xE1,
1765 			0xC0, 0xDA, 0x92, 0x6A, 0xC4, 0x3F, 0xB3, 0x60,
1766 			0x9A, 0xC1, 0xC8, 0x0F, 0xEE, 0x1B, 0x62, 0x44,
1767 			0x97, 0xEF, 0x94, 0x2E, 0x2F, 0x79, 0xA8, 0x23,
1768 		},
1769 		.len = 32,
1770 	},
1771 	.plain_pkt = {
1772 		.data = {/* MAC DA */
1773 			0x84, 0xC5, 0xD5, 0x13, 0xD2, 0xAA,
1774 			/* MAC SA */
1775 			0xF6, 0xE5, 0xBB, 0xD2, 0x72, 0x77,
1776 			/* User Data */
1777 			0x08, 0x00, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14,
1778 			0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C,
1779 			0x1D, 0x1E, 0x1F, 0x20, 0x21, 0x22, 0x23, 0x24,
1780 			0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2B, 0x2C,
1781 			0x2D, 0x2E, 0x2F, 0x30, 0x31, 0x32, 0x33, 0x34,
1782 			0x35, 0x36, 0x37, 0x38, 0x39, 0x3A, 0x3B, 0x3C,
1783 			0x3D, 0x3E, 0x3F, 0x00, 0x05,
1784 		},
1785 		.len = 65,
1786 	},
1787 	.secure_pkt = {
1788 		.data = {/* MAC DA */
1789 			0x84, 0xC5, 0xD5, 0x13, 0xD2, 0xAA,
1790 			/* MAC SA */
1791 			0xF6, 0xE5, 0xBB, 0xD2, 0x72, 0x77,
1792 			/* MACsec EtherType */
1793 			0x88, 0xE5,
1794 			/* TCI and AN */
1795 			0x23,
1796 			/* SL */
1797 			0x00,
1798 			/* PN */
1799 			0x89, 0x32, 0xD6, 0x12,
1800 			/* SCI */
1801 			0x7C, 0xFD, 0xE9, 0xF9, 0xE3, 0x37, 0x24, 0xC6,
1802 			/* Secure Data */
1803 			0x08, 0x00, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14,
1804 			0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C,
1805 			0x1D, 0x1E, 0x1F, 0x20, 0x21, 0x22, 0x23, 0x24,
1806 			0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2B, 0x2C,
1807 			0x2D, 0x2E, 0x2F, 0x30, 0x31, 0x32, 0x33, 0x34,
1808 			0x35, 0x36, 0x37, 0x38, 0x39, 0x3A, 0x3B, 0x3C,
1809 			0x3D, 0x3E, 0x3F, 0x00, 0x05,
1810 			/* ICV */
1811 			0x84, 0xBA, 0xC8, 0xE5, 0x3D, 0x1E, 0xA3, 0x55,
1812 			0xA5, 0xC7, 0xD3, 0x34, 0x84, 0x0A, 0xE9, 0x62,
1813 		},
1814 		.len = 97,
1815 	},
1816 },
1817 /* gcm_128_79B_integrity */
1818 {
1819 	.test_idx = 13,
1820 	.alg = RTE_SECURITY_MACSEC_ALG_GCM_128,
1821 	.ssci = 0,
1822 	.xpn = 0, /* Most significant 32 bits */
1823 	.salt = {0},
1824 	.sa_key = {
1825 		.data = {
1826 			0x88, 0xEE, 0x08, 0x7F, 0xD9, 0x5D, 0xA9, 0xFB,
1827 			0xF6, 0x72, 0x5A, 0xA9, 0xD7, 0x57, 0xB0, 0xCD,
1828 		},
1829 		.len = 16,
1830 	},
1831 	.plain_pkt = {
1832 		.data = {/* MAC DA */
1833 			0x68, 0xF2, 0xE7, 0x76, 0x96, 0xCE,
1834 			/* MAC SA */
1835 			0x7A, 0xE8, 0xE2, 0xCA, 0x4E, 0xC5,
1836 			/* User Data */
1837 			0x08, 0x00, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14,
1838 			0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C,
1839 			0x1D, 0x1E, 0x1F, 0x20, 0x21, 0x22, 0x23, 0x24,
1840 			0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2B, 0x2C,
1841 			0x2D, 0x2E, 0x2F, 0x30, 0x31, 0x32, 0x33, 0x34,
1842 			0x35, 0x36, 0x37, 0x38, 0x39, 0x3A, 0x3B, 0x3C,
1843 			0x3D, 0x3E, 0x3F, 0x40, 0x41, 0x42, 0x43, 0x44,
1844 			0x45, 0x46, 0x47, 0x48, 0x49, 0x4A, 0x4B, 0x4C,
1845 			0x4D, 0x00, 0x07,
1846 		},
1847 		.len = 79,
1848 	},
1849 	.secure_pkt = {
1850 		.data = {/* MAC DA */
1851 			0x68, 0xF2, 0xE7, 0x76, 0x96, 0xCE,
1852 			/* MAC SA */
1853 			0x7A, 0xE8, 0xE2, 0xCA, 0x4E, 0xC5,
1854 			/* MACsec EtherType */
1855 			0x88, 0xE5,
1856 			/* TCI and AN */
1857 			0x41,
1858 			/* SL */
1859 			0x00,
1860 			/* PN */
1861 			0x2E, 0x58, 0x49, 0x5C,
1862 			/* SCI */
1863 			/* Secure Data */
1864 			0x08, 0x00, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14,
1865 			0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C,
1866 			0x1D, 0x1E, 0x1F, 0x20, 0x21, 0x22, 0x23, 0x24,
1867 			0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2B, 0x2C,
1868 			0x2D, 0x2E, 0x2F, 0x30, 0x31, 0x32, 0x33, 0x34,
1869 			0x35, 0x36, 0x37, 0x38, 0x39, 0x3A, 0x3B, 0x3C,
1870 			0x3D, 0x3E, 0x3F, 0x40, 0x41, 0x42, 0x43, 0x44,
1871 			0x45, 0x46, 0x47, 0x48, 0x49, 0x4A, 0x4B, 0x4C,
1872 			0x4D, 0x00, 0x07,
1873 			/* ICV */
1874 			0x07, 0x92, 0x2B, 0x8E, 0xBC, 0xF1, 0x0B, 0xB2,
1875 			0x29, 0x75, 0x88, 0xCA, 0x4C, 0x61, 0x45, 0x23,
1876 		},
1877 		.len = 103,
1878 	},
1879 },
1880 /* gcm_256_79B_integrity */
1881 {
1882 	.test_idx = 14,
1883 	.alg = RTE_SECURITY_MACSEC_ALG_GCM_256,
1884 	.ssci = 0,
1885 	.xpn = 0, /* Most significant 32 bits */
1886 	.salt = {0},
1887 	.sa_key = {
1888 		.data = {
1889 			0x4C, 0x97, 0x3D, 0xBC, 0x73, 0x64, 0x62, 0x16,
1890 			0x74, 0xF8, 0xB5, 0xB8, 0x9E, 0x5C, 0x15, 0x51,
1891 			0x1F, 0xCE, 0xD9, 0x21, 0x64, 0x90, 0xFB, 0x1C,
1892 			0x1A, 0x2C, 0xAA, 0x0F, 0xFE, 0x04, 0x07, 0xE5,
1893 		},
1894 		.len = 32,
1895 	},
1896 	.plain_pkt = {
1897 		.data = {/* MAC DA */
1898 			0x68, 0xF2, 0xE7, 0x76, 0x96, 0xCE,
1899 			/* MAC SA */
1900 			0x7A, 0xE8, 0xE2, 0xCA, 0x4E, 0xC5,
1901 			/* User Data */
1902 			0x08, 0x00, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14,
1903 			0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C,
1904 			0x1D, 0x1E, 0x1F, 0x20, 0x21, 0x22, 0x23, 0x24,
1905 			0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2B, 0x2C,
1906 			0x2D, 0x2E, 0x2F, 0x30, 0x31, 0x32, 0x33, 0x34,
1907 			0x35, 0x36, 0x37, 0x38, 0x39, 0x3A, 0x3B, 0x3C,
1908 			0x3D, 0x3E, 0x3F, 0x40, 0x41, 0x42, 0x43, 0x44,
1909 			0x45, 0x46, 0x47, 0x48, 0x49, 0x4A, 0x4B, 0x4C,
1910 			0x4D, 0x00, 0x07,
1911 		},
1912 		.len = 79,
1913 	},
1914 	.secure_pkt = {
1915 		.data = {/* MAC DA */
1916 			0x68, 0xF2, 0xE7, 0x76, 0x96, 0xCE,
1917 			/* MAC SA */
1918 			0x7A, 0xE8, 0xE2, 0xCA, 0x4E, 0xC5,
1919 			/* MACsec EtherType */
1920 			0x88, 0xE5,
1921 			/* TCI and AN */
1922 			0x41,
1923 			/* SL */
1924 			0x00,
1925 			/* PN */
1926 			0x2E, 0x58, 0x49, 0x5C,
1927 			/* SCI */
1928 			/* Secure Data */
1929 			0x08, 0x00, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14,
1930 			0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C,
1931 			0x1D, 0x1E, 0x1F, 0x20, 0x21, 0x22, 0x23, 0x24,
1932 			0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2B, 0x2C,
1933 			0x2D, 0x2E, 0x2F, 0x30, 0x31, 0x32, 0x33, 0x34,
1934 			0x35, 0x36, 0x37, 0x38, 0x39, 0x3A, 0x3B, 0x3C,
1935 			0x3D, 0x3E, 0x3F, 0x40, 0x41, 0x42, 0x43, 0x44,
1936 			0x45, 0x46, 0x47, 0x48, 0x49, 0x4A, 0x4B, 0x4C,
1937 			0x4D, 0x00, 0x07,
1938 			/* ICV */
1939 			0x00, 0xBD, 0xA1, 0xB7, 0xE8, 0x76, 0x08, 0xBC,
1940 			0xBF, 0x47, 0x0F, 0x12, 0x15, 0x7F, 0x4C, 0x07,
1941 		},
1942 		.len = 103,
1943 	},
1944 },
1945 /* gcm_128_xpn_79B_integrity */
1946 {
1947 	.test_idx = 15,
1948 	.alg = RTE_SECURITY_MACSEC_ALG_GCM_XPN_128,
1949 	.ssci = 0x7A30C118,
1950 	.xpn = 0xB0DF459C, /* Most significant 32 bits */
1951 	.salt = {
1952 		0xE6, 0x30, 0xE8, 0x1A, 0x48, 0xDE, 0x86, 0xA2,
1953 		0x1C, 0x66, 0xFA, 0x6D,
1954 	},
1955 	.sa_key = {
1956 		.data = {
1957 			0x88, 0xEE, 0x08, 0x7F, 0xD9, 0x5D, 0xA9, 0xFB,
1958 			0xF6, 0x72, 0x5A, 0xA9, 0xD7, 0x57, 0xB0, 0xCD,
1959 		},
1960 		.len = 16,
1961 	},
1962 	.plain_pkt = {
1963 		.data = {/* MAC DA */
1964 			0x68, 0xF2, 0xE7, 0x76, 0x96, 0xCE,
1965 			/* MAC SA */
1966 			0x7A, 0xE8, 0xE2, 0xCA, 0x4E, 0xC5,
1967 			/* User Data */
1968 			0x08, 0x00, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14,
1969 			0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C,
1970 			0x1D, 0x1E, 0x1F, 0x20, 0x21, 0x22, 0x23, 0x24,
1971 			0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2B, 0x2C,
1972 			0x2D, 0x2E, 0x2F, 0x30, 0x31, 0x32, 0x33, 0x34,
1973 			0x35, 0x36, 0x37, 0x38, 0x39, 0x3A, 0x3B, 0x3C,
1974 			0x3D, 0x3E, 0x3F, 0x40, 0x41, 0x42, 0x43, 0x44,
1975 			0x45, 0x46, 0x47, 0x48, 0x49, 0x4A, 0x4B, 0x4C,
1976 			0x4D, 0x00, 0x07,
1977 		},
1978 		.len = 79,
1979 	},
1980 	.secure_pkt = {
1981 		.data = {/* MAC DA */
1982 			0x68, 0xF2, 0xE7, 0x76, 0x96, 0xCE,
1983 			/* MAC SA */
1984 			0x7A, 0xE8, 0xE2, 0xCA, 0x4E, 0xC5,
1985 			/* MACsec EtherType */
1986 			0x88, 0xE5,
1987 			/* TCI and AN */
1988 			0x41,
1989 			/* SL */
1990 			0x00,
1991 			/* PN */
1992 			0x2E, 0x58, 0x49, 0x5C,
1993 			/* SCI */
1994 			/* Secure Data */
1995 			0x08, 0x00, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14,
1996 			0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C,
1997 			0x1D, 0x1E, 0x1F, 0x20, 0x21, 0x22, 0x23, 0x24,
1998 			0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2B, 0x2C,
1999 			0x2D, 0x2E, 0x2F, 0x30, 0x31, 0x32, 0x33, 0x34,
2000 			0x35, 0x36, 0x37, 0x38, 0x39, 0x3A, 0x3B, 0x3C,
2001 			0x3D, 0x3E, 0x3F, 0x40, 0x41, 0x42, 0x43, 0x44,
2002 			0x45, 0x46, 0x47, 0x48, 0x49, 0x4A, 0x4B, 0x4C,
2003 			0x4D, 0x00, 0x07,
2004 			/* ICV */
2005 			0xD0, 0xDC, 0x89, 0x6D, 0xC8, 0x37, 0x98, 0xA7,
2006 			0x9F, 0x3C, 0x5A, 0x95, 0xBA, 0x3C, 0xDF, 0x9A,
2007 		},
2008 		.len = 103,
2009 	},
2010 },
2011 /* gcm_256_xpn_79B_integrity */
2012 {
2013 	.test_idx = 16,
2014 	.alg = RTE_SECURITY_MACSEC_ALG_GCM_XPN_256,
2015 	.ssci = 0x7A30C118,
2016 	.xpn = 0xB0DF459C, /* Most significant 32 bits */
2017 	.salt = {
2018 		0xE6, 0x30, 0xE8, 0x1A, 0x48, 0xDE, 0x86, 0xA2,
2019 		0x1C, 0x66, 0xFA, 0x6D,
2020 	},
2021 	.sa_key = {
2022 		.data = {
2023 			0x4C, 0x97, 0x3D, 0xBC, 0x73, 0x64, 0x62, 0x16,
2024 			0x74, 0xF8, 0xB5, 0xB8, 0x9E, 0x5C, 0x15, 0x51,
2025 			0x1F, 0xCE, 0xD9, 0x21, 0x64, 0x90, 0xFB, 0x1C,
2026 			0x1A, 0x2C, 0xAA, 0x0F, 0xFE, 0x04, 0x07, 0xE5,
2027 		},
2028 		.len = 32,
2029 	},
2030 	.plain_pkt = {
2031 		.data = {/* MAC DA */
2032 			0x68, 0xF2, 0xE7, 0x76, 0x96, 0xCE,
2033 			/* MAC SA */
2034 			0x7A, 0xE8, 0xE2, 0xCA, 0x4E, 0xC5,
2035 			/* User Data */
2036 			0x08, 0x00, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14,
2037 			0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C,
2038 			0x1D, 0x1E, 0x1F, 0x20, 0x21, 0x22, 0x23, 0x24,
2039 			0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2B, 0x2C,
2040 			0x2D, 0x2E, 0x2F, 0x30, 0x31, 0x32, 0x33, 0x34,
2041 			0x35, 0x36, 0x37, 0x38, 0x39, 0x3A, 0x3B, 0x3C,
2042 			0x3D, 0x3E, 0x3F, 0x40, 0x41, 0x42, 0x43, 0x44,
2043 			0x45, 0x46, 0x47, 0x48, 0x49, 0x4A, 0x4B, 0x4C,
2044 			0x4D, 0x00, 0x07,
2045 		},
2046 		.len = 79,
2047 	},
2048 	.secure_pkt = {
2049 		.data = {/* MAC DA */
2050 			0x68, 0xF2, 0xE7, 0x76, 0x96, 0xCE,
2051 			/* MAC SA */
2052 			0x7A, 0xE8, 0xE2, 0xCA, 0x4E, 0xC5,
2053 			/* MACsec EtherType */
2054 			0x88, 0xE5,
2055 			/* TCI and AN */
2056 			0x41,
2057 			/* SL */
2058 			0x00,
2059 			/* PN */
2060 			0x2E, 0x58, 0x49, 0x5C,
2061 			/* SCI */
2062 			/* Secure Data */
2063 			0x08, 0x00, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14,
2064 			0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C,
2065 			0x1D, 0x1E, 0x1F, 0x20, 0x21, 0x22, 0x23, 0x24,
2066 			0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2B, 0x2C,
2067 			0x2D, 0x2E, 0x2F, 0x30, 0x31, 0x32, 0x33, 0x34,
2068 			0x35, 0x36, 0x37, 0x38, 0x39, 0x3A, 0x3B, 0x3C,
2069 			0x3D, 0x3E, 0x3F, 0x40, 0x41, 0x42, 0x43, 0x44,
2070 			0x45, 0x46, 0x47, 0x48, 0x49, 0x4A, 0x4B, 0x4C,
2071 			0x4D, 0x00, 0x07,
2072 			/* ICV */
2073 			0x04, 0x24, 0x9A, 0x20, 0x8A, 0x65, 0xB9, 0x6B,
2074 			0x3F, 0x32, 0x63, 0x00, 0x4C, 0xFD, 0x86, 0x7D,
2075 		},
2076 		.len = 103,
2077 	},
2078 },
2079 };
2080 
2081 #define MCS_MULTI_FLOW_TD_KEY_SZ		16
2082 #define MCS_MULTI_FLOW_TD_PLAIN_DATA_SZ		42
2083 #define MCS_MULTI_FLOW_TD_SECURE_DATA_SZ	66
2084 #define MCS_MULTI_FLOW_TD_KEY_SZ		16
2085 #define MCS_MAX_FLOWS				63
2086 
2087 uint8_t sa_key[MCS_MULTI_FLOW_TD_KEY_SZ] = {
2088 		0x07, 0x1B, 0x11, 0x3B, 0x0C, 0xA7, 0x43, 0xFE,
2089 		0xCC, 0xCF, 0x3D, 0x05, 0x1F, 0x73, 0x73, 0x82,
2090 };
2091 
2092 uint8_t eth_addrs[MCS_MAX_FLOWS][2 * RTE_ETHER_ADDR_LEN] = {
2093 		{0xE2, 0x00, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2094 		{0xE2, 0x01, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2095 		{0xE2, 0x02, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2096 		{0xE2, 0x03, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2097 		{0xE2, 0x04, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2098 		{0xE2, 0x05, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2099 		{0xE2, 0x06, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2100 		{0xE2, 0x07, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2101 		{0xE2, 0x08, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2102 		{0xE2, 0x09, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2103 		{0xE2, 0x0A, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2104 		{0xE2, 0x0B, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2105 		{0xE2, 0x0C, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2106 		{0xE2, 0x0D, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2107 		{0xE2, 0x0E, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2108 		{0xE2, 0x0F, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2109 		{0xE2, 0x10, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2110 		{0xE2, 0x11, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2111 		{0xE2, 0x12, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2112 		{0xE2, 0x13, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2113 		{0xE2, 0x14, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2114 		{0xE2, 0x15, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2115 		{0xE2, 0x16, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2116 		{0xE2, 0x17, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2117 		{0xE2, 0x18, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2118 		{0xE2, 0x19, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2119 		{0xE2, 0x1A, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2120 		{0xE2, 0x1B, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2121 		{0xE2, 0x1C, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2122 		{0xE2, 0x1D, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2123 		{0xE2, 0x1E, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2124 		{0xE2, 0x1F, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2125 		{0xE2, 0x20, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2126 		{0xE2, 0x21, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2127 		{0xE2, 0x22, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2128 		{0xE2, 0x23, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2129 		{0xE2, 0x24, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2130 		{0xE2, 0x25, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2131 		{0xE2, 0x26, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2132 		{0xE2, 0x27, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2133 		{0xE2, 0x28, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2134 		{0xE2, 0x29, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2135 		{0xE2, 0x2A, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2136 		{0xE2, 0x2B, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2137 		{0xE2, 0x2C, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2138 		{0xE2, 0x2D, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2139 		{0xE2, 0x2E, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2140 		{0xE2, 0x2F, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2141 		{0xE2, 0x30, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2142 		{0xE2, 0x31, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2143 		{0xE2, 0x32, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2144 		{0xE2, 0x33, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2145 		{0xE2, 0x34, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2146 		{0xE2, 0x35, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2147 		{0xE2, 0x36, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2148 		{0xE2, 0x37, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2149 		{0xE2, 0x38, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2150 		{0xE2, 0x39, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2151 		{0xE2, 0x3A, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2152 		{0xE2, 0x3B, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2153 		{0xE2, 0x3C, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2154 		{0xE2, 0x3D, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2155 		{0xE2, 0x3E, 0x06, 0xD7, 0xCD, 0x0D, 0xF0, 0x76, 0x1E, 0x8D, 0xCD, 0x3D,},
2156 };
2157 
2158 uint8_t plain_user_data[MCS_MULTI_FLOW_TD_PLAIN_DATA_SZ] = {
2159 		/* User Data with Ethertype */
2160 		0x08, 0x00, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14,
2161 		0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C,
2162 		0x1D, 0x1E, 0x1F, 0x20, 0x21, 0x22, 0x23, 0x24,
2163 		0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2B, 0x2C,
2164 		0x2D, 0x2E, 0x2F, 0x30, 0x31, 0x32, 0x33, 0x34,
2165 		0x00, 0x04,
2166 };
2167 
2168 uint8_t secure_user_data[MCS_MULTI_FLOW_TD_SECURE_DATA_SZ] = {
2169 		/* MACsec EtherType */
2170 		0x88, 0xE5,
2171 		/* TCI and AN */
2172 		0x4C,
2173 		/* SL */
2174 		0x2A,
2175 		/* PN */
2176 		0x76, 0xD4, 0x57, 0xED,
2177 		/* Secure Data */
2178 		0x13, 0xB4, 0xC7, 0x2B, 0x38, 0x9D, 0xC5, 0x01,
2179 		0x8E, 0x72, 0xA1, 0x71, 0xDD, 0x85, 0xA5, 0xD3,
2180 		0x75, 0x22, 0x74, 0xD3, 0xA0, 0x19, 0xFB, 0xCA,
2181 		0xED, 0x09, 0xA4, 0x25, 0xCD, 0x9B, 0x2E, 0x1C,
2182 		0x9B, 0x72, 0xEE, 0xE7, 0xC9, 0xDE, 0x7D, 0x52,
2183 		0xB3, 0xF3,
2184 		/* ICV */
2185 		0xD6, 0xA5, 0x28, 0x4F, 0x4A, 0x6D, 0x3F, 0xE2,
2186 		0x2A, 0x5D, 0x6C, 0x2B, 0x96, 0x04, 0x94, 0xC3,
2187 };
2188 
2189 #endif /* TEST_INLINE_MACSEC_VECTORS_H */
2190