cryptodev: use single mempool for asymmetric session
[dpdk.git] / app / test / test_cryptodev_zuc_test_vectors.h
1 /* SPDX-License-Identifier: BSD-3-Clause
2  * Copyright(c) 2016-2017 Intel Corporation
3  */
4
5 #ifndef TEST_CRYPTODEV_ZUC_TEST_VECTORS_H_
6 #define TEST_CRYPTODEV_ZUC_TEST_VECTORS_H_
7
8 struct wireless_test_data {
9         struct {
10                 uint8_t data[64];
11                 unsigned len;
12         } key;
13
14         struct {
15                 uint8_t data[64] __rte_aligned(16);
16                 unsigned len;
17         } cipher_iv;
18
19         struct {
20                 uint8_t data[2048];
21                 unsigned len; /* length must be in Bits */
22         } plaintext;
23
24         struct {
25                 uint8_t data[2048];
26                 unsigned len; /* length must be in Bits */
27         } ciphertext;
28
29         struct {
30                 unsigned len;
31         } validDataLenInBits;
32
33         struct {
34                 unsigned len;
35         } validCipherLenInBits;
36
37         struct {
38                 unsigned int len;
39         } validCipherOffsetInBits;
40
41
42         struct {
43                 unsigned len;
44         } validAuthLenInBits;
45
46         struct {
47                 uint8_t data[64];
48                 unsigned len;
49         } auth_iv;
50
51         struct {
52                 uint8_t data[64];
53                 unsigned len;
54                 unsigned int offset_bytes; /* offset must be in Bytes */
55         } digest;
56 };
57 static struct wireless_test_data zuc_test_case_cipher_193b = {
58         .key = {
59                 .data = {
60                         0x17, 0x3D, 0x14, 0xBA, 0x50, 0x03, 0x73, 0x1D,
61                         0x7A, 0x60, 0x04, 0x94, 0x70, 0xF0, 0x0A, 0x29
62                 },
63                 .len = 16
64         },
65         .cipher_iv = {
66                 .data = {
67                         0x66, 0x03, 0x54, 0x92, 0x78, 0x00, 0x00, 0x00,
68                         0x66, 0x03, 0x54, 0x92, 0x78, 0x00, 0x00, 0x00
69                 },
70                 .len = 16
71         },
72         .plaintext = {
73                 .data = {
74                         0x6C, 0xF6, 0x53, 0x40, 0x73, 0x55, 0x52, 0xAB,
75                         0x0C, 0x97, 0x52, 0xFA, 0x6F, 0x90, 0x25, 0xFE,
76                         0x0B, 0xD6, 0x75, 0xD9, 0x00, 0x58, 0x75, 0xB2,
77                         0x00
78                 },
79                 .len = 200
80         },
81         .ciphertext = {
82                 .data = {
83                         0xA6, 0xC8, 0x5F, 0xC6, 0x6A, 0xFB, 0x85, 0x33,
84                         0xAA, 0xFC, 0x25, 0x18, 0xDF, 0xE7, 0x84, 0x94,
85                         0x0E, 0xE1, 0xE4, 0xB0, 0x30, 0x23, 0x8C, 0xC8,
86                         0x00
87                 },
88                 .len = 200
89         },
90         .validDataLenInBits = {
91                 .len = 193
92         },
93         .validCipherLenInBits = {
94                 .len = 193
95         }
96 };
97
98 static struct wireless_test_data zuc_test_case_cipher_800b = {
99         .key = {
100                 .data = {
101                         0xE5, 0xBD, 0x3E, 0xA0, 0xEB, 0x55, 0xAD, 0xE8,
102                         0x66, 0xC6, 0xAC, 0x58, 0xBD, 0x54, 0x30, 0x2A
103                 },
104                 .len = 16
105         },
106         .cipher_iv = {
107                 .data = {
108                         0x00, 0x05, 0x68, 0x23, 0xC4, 0x00, 0x00, 0x00,
109                         0x00, 0x05, 0x68, 0x23, 0xC4, 0x00, 0x00, 0x00
110                 },
111                 .len = 16
112         },
113         .plaintext = {
114                 .data = {
115                         0x14, 0xA8, 0xEF, 0x69, 0x3D, 0x67, 0x85, 0x07,
116                         0xBB, 0xE7, 0x27, 0x0A, 0x7F, 0x67, 0xFF, 0x50,
117                         0x06, 0xC3, 0x52, 0x5B, 0x98, 0x07, 0xE4, 0x67,
118                         0xC4, 0xE5, 0x60, 0x00, 0xBA, 0x33, 0x8F, 0x5D,
119                         0x42, 0x95, 0x59, 0x03, 0x67, 0x51, 0x82, 0x22,
120                         0x46, 0xC8, 0x0D, 0x3B, 0x38, 0xF0, 0x7F, 0x4B,
121                         0xE2, 0xD8, 0xFF, 0x58, 0x05, 0xF5, 0x13, 0x22,
122                         0x29, 0xBD, 0xE9, 0x3B, 0xBB, 0xDC, 0xAF, 0x38,
123                         0x2B, 0xF1, 0xEE, 0x97, 0x2F, 0xBF, 0x99, 0x77,
124                         0xBA, 0xDA, 0x89, 0x45, 0x84, 0x7A, 0x2A, 0x6C,
125                         0x9A, 0xD3, 0x4A, 0x66, 0x75, 0x54, 0xE0, 0x4D,
126                         0x1F, 0x7F, 0xA2, 0xC3, 0x32, 0x41, 0xBD, 0x8F,
127                         0x01, 0xBA, 0x22, 0x0D
128                 },
129                 .len = 800
130         },
131         .ciphertext = {
132                 .data = {
133                         0x13, 0x1D, 0x43, 0xE0, 0xDE, 0xA1, 0xBE, 0x5C,
134                         0x5A, 0x1B, 0xFD, 0x97, 0x1D, 0x85, 0x2C, 0xBF,
135                         0x71, 0x2D, 0x7B, 0x4F, 0x57, 0x96, 0x1F, 0xEA,
136                         0x32, 0x08, 0xAF, 0xA8, 0xBC, 0xA4, 0x33, 0xF4,
137                         0x56, 0xAD, 0x09, 0xC7, 0x41, 0x7E, 0x58, 0xBC,
138                         0x69, 0xCF, 0x88, 0x66, 0xD1, 0x35, 0x3F, 0x74,
139                         0x86, 0x5E, 0x80, 0x78, 0x1D, 0x20, 0x2D, 0xFB,
140                         0x3E, 0xCF, 0xF7, 0xFC, 0xBC, 0x3B, 0x19, 0x0F,
141                         0xE8, 0x2A, 0x20, 0x4E, 0xD0, 0xE3, 0x50, 0xFC,
142                         0x0F, 0x6F, 0x26, 0x13, 0xB2, 0xF2, 0xBC, 0xA6,
143                         0xDF, 0x5A, 0x47, 0x3A, 0x57, 0xA4, 0xA0, 0x0D,
144                         0x98, 0x5E, 0xBA, 0xD8, 0x80, 0xD6, 0xF2, 0x38,
145                         0x64, 0xA0, 0x7B, 0x01
146                 },
147                 .len = 800
148         },
149         .validDataLenInBits = {
150                 .len = 800
151         },
152         .validCipherLenInBits = {
153                 .len = 800
154         }
155 };
156
157 static struct wireless_test_data zuc_test_case_cipher_1570b = {
158         .key = {
159                 .data = {
160                         0xD4, 0x55, 0x2A, 0x8F, 0xD6, 0xE6, 0x1C, 0xC8,
161                         0x1A, 0x20, 0x09, 0x14, 0x1A, 0x29, 0xC1, 0x0B
162                 },
163                 .len = 16
164         },
165         .cipher_iv = {
166                 .data = {
167                         0x76, 0x45, 0x2E, 0xC1, 0x14, 0x00, 0x00, 0x00,
168                         0x76, 0x45, 0x2E, 0xC1, 0x14, 0x00, 0x00, 0x00
169                 },
170                 .len = 16
171         },
172         .plaintext = {
173                 .data = {
174                         0x38, 0xF0, 0x7F, 0x4B, 0xE2, 0xD8, 0xFF, 0x58,
175                         0x05, 0xF5, 0x13, 0x22, 0x29, 0xBD, 0xE9, 0x3B,
176                         0xBB, 0xDC, 0xAF, 0x38, 0x2B, 0xF1, 0xEE, 0x97,
177                         0x2F, 0xBF, 0x99, 0x77, 0xBA, 0xDA, 0x89, 0x45,
178                         0x84, 0x7A, 0x2A, 0x6C, 0x9A, 0xD3, 0x4A, 0x66,
179                         0x75, 0x54, 0xE0, 0x4D, 0x1F, 0x7F, 0xA2, 0xC3,
180                         0x32, 0x41, 0xBD, 0x8F, 0x01, 0xBA, 0x22, 0x0D,
181                         0x3C, 0xA4, 0xEC, 0x41, 0xE0, 0x74, 0x59, 0x5F,
182                         0x54, 0xAE, 0x2B, 0x45, 0x4F, 0xD9, 0x71, 0x43,
183                         0x20, 0x43, 0x60, 0x19, 0x65, 0xCC, 0xA8, 0x5C,
184                         0x24, 0x17, 0xED, 0x6C, 0xBE, 0xC3, 0xBA, 0xDA,
185                         0x84, 0xFC, 0x8A, 0x57, 0x9A, 0xEA, 0x78, 0x37,
186                         0xB0, 0x27, 0x11, 0x77, 0x24, 0x2A, 0x64, 0xDC,
187                         0x0A, 0x9D, 0xE7, 0x1A, 0x8E, 0xDE, 0xE8, 0x6C,
188                         0xA3, 0xD4, 0x7D, 0x03, 0x3D, 0x6B, 0xF5, 0x39,
189                         0x80, 0x4E, 0xCA, 0x86, 0xC5, 0x84, 0xA9, 0x05,
190                         0x2D, 0xE4, 0x6A, 0xD3, 0xFC, 0xED, 0x65, 0x54,
191                         0x3B, 0xD9, 0x02, 0x07, 0x37, 0x2B, 0x27, 0xAF,
192                         0xB7, 0x92, 0x34, 0xF5, 0xFF, 0x43, 0xEA, 0x87,
193                         0x08, 0x20, 0xE2, 0xC2, 0xB7, 0x8A, 0x8A, 0xAE,
194                         0x61, 0xCC, 0xE5, 0x2A, 0x05, 0x15, 0xE3, 0x48,
195                         0xD1, 0x96, 0x66, 0x4A, 0x34, 0x56, 0xB1, 0x82,
196                         0xA0, 0x7C, 0x40, 0x6E, 0x4A, 0x20, 0x79, 0x12,
197                         0x71, 0xCF, 0xED, 0xA1, 0x65, 0xD5, 0x35, 0xEC,
198                         0x5E, 0xA2, 0xD4, 0xDF, 0x40
199                 },
200                 .len = 1576
201         },
202         .ciphertext = {
203                 .data = {
204                         0x83, 0x83, 0xB0, 0x22, 0x9F, 0xCC, 0x0B, 0x9D,
205                         0x22, 0x95, 0xEC, 0x41, 0xC9, 0x77, 0xE9, 0xC2,
206                         0xBB, 0x72, 0xE2, 0x20, 0x37, 0x81, 0x41, 0xF9,
207                         0xC8, 0x31, 0x8F, 0x3A, 0x27, 0x0D, 0xFB, 0xCD,
208                         0xEE, 0x64, 0x11, 0xC2, 0xB3, 0x04, 0x4F, 0x17,
209                         0x6D, 0xC6, 0xE0, 0x0F, 0x89, 0x60, 0xF9, 0x7A,
210                         0xFA, 0xCD, 0x13, 0x1A, 0xD6, 0xA3, 0xB4, 0x9B,
211                         0x16, 0xB7, 0xBA, 0xBC, 0xF2, 0xA5, 0x09, 0xEB,
212                         0xB1, 0x6A, 0x75, 0xDC, 0xAB, 0x14, 0xFF, 0x27,
213                         0x5D, 0xBE, 0xEE, 0xA1, 0xA2, 0xB1, 0x55, 0xF9,
214                         0xD5, 0x2C, 0x26, 0x45, 0x2D, 0x01, 0x87, 0xC3,
215                         0x10, 0xA4, 0xEE, 0x55, 0xBE, 0xAA, 0x78, 0xAB,
216                         0x40, 0x24, 0x61, 0x5B, 0xA9, 0xF5, 0xD5, 0xAD,
217                         0xC7, 0x72, 0x8F, 0x73, 0x56, 0x06, 0x71, 0xF0,
218                         0x13, 0xE5, 0xE5, 0x50, 0x08, 0x5D, 0x32, 0x91,
219                         0xDF, 0x7D, 0x5F, 0xEC, 0xED, 0xDE, 0xD5, 0x59,
220                         0x64, 0x1B, 0x6C, 0x2F, 0x58, 0x52, 0x33, 0xBC,
221                         0x71, 0xE9, 0x60, 0x2B, 0xD2, 0x30, 0x58, 0x55,
222                         0xBB, 0xD2, 0x5F, 0xFA, 0x7F, 0x17, 0xEC, 0xBC,
223                         0x04, 0x2D, 0xAA, 0xE3, 0x8C, 0x1F, 0x57, 0xAD,
224                         0x8E, 0x8E, 0xBD, 0x37, 0x34, 0x6F, 0x71, 0xBE,
225                         0xFD, 0xBB, 0x74, 0x32, 0xE0, 0xE0, 0xBB, 0x2C,
226                         0xFC, 0x09, 0xBC, 0xD9, 0x65, 0x70, 0xCB, 0x0C,
227                         0x0C, 0x39, 0xDF, 0x5E, 0x29, 0x29, 0x4E, 0x82,
228                         0x70, 0x3A, 0x63, 0x7F, 0x80
229                 },
230                 .len = 1576
231         },
232         .validDataLenInBits = {
233                 .len = 1570
234         },
235         .validCipherLenInBits = {
236                 .len = 1570
237         }
238 };
239
240 static struct wireless_test_data zuc_test_case_cipher_2798b = {
241         .key = {
242                 .data = {
243                         0xDB, 0x84, 0xB4, 0xFB, 0xCC, 0xDA, 0x56, 0x3B,
244                         0x66, 0x22, 0x7B, 0xFE, 0x45, 0x6F, 0x0F, 0x77
245                 },
246                 .len = 16
247         },
248         .cipher_iv = {
249                 .data = {
250                         0xE4, 0x85, 0x0F, 0xE1, 0x84, 0x00, 0x00, 0x00,
251                         0xE4, 0x85, 0x0F, 0xE1, 0x84, 0x00, 0x00, 0x00
252                 },
253                 .len = 16
254         },
255         .plaintext = {
256                 .data = {
257                         0xE5, 0x39, 0xF3, 0xB8, 0x97, 0x32, 0x40, 0xDA,
258                         0x03, 0xF2, 0xB8, 0xAA, 0x05, 0xEE, 0x0A, 0x00,
259                         0xDB, 0xAF, 0xC0, 0xE1, 0x82, 0x05, 0x5D, 0xFE,
260                         0x3D, 0x73, 0x83, 0xD9, 0x2C, 0xEF, 0x40, 0xE9,
261                         0x29, 0x28, 0x60, 0x5D, 0x52, 0xD0, 0x5F, 0x4F,
262                         0x90, 0x18, 0xA1, 0xF1, 0x89, 0xAE, 0x39, 0x97,
263                         0xCE, 0x19, 0x15, 0x5F, 0xB1, 0x22, 0x1D, 0xB8,
264                         0xBB, 0x09, 0x51, 0xA8, 0x53, 0xAD, 0x85, 0x2C,
265                         0xE1, 0x6C, 0xFF, 0x07, 0x38, 0x2C, 0x93, 0xA1,
266                         0x57, 0xDE, 0x00, 0xDD, 0xB1, 0x25, 0xC7, 0x53,
267                         0x9F, 0xD8, 0x50, 0x45, 0xE4, 0xEE, 0x07, 0xE0,
268                         0xC4, 0x3F, 0x9E, 0x9D, 0x6F, 0x41, 0x4F, 0xC4,
269                         0xD1, 0xC6, 0x29, 0x17, 0x81, 0x3F, 0x74, 0xC0,
270                         0x0F, 0xC8, 0x3F, 0x3E, 0x2E, 0xD7, 0xC4, 0x5B,
271                         0xA5, 0x83, 0x52, 0x64, 0xB4, 0x3E, 0x0B, 0x20,
272                         0xAF, 0xDA, 0x6B, 0x30, 0x53, 0xBF, 0xB6, 0x42,
273                         0x3B, 0x7F, 0xCE, 0x25, 0x47, 0x9F, 0xF5, 0xF1,
274                         0x39, 0xDD, 0x9B, 0x5B, 0x99, 0x55, 0x58, 0xE2,
275                         0xA5, 0x6B, 0xE1, 0x8D, 0xD5, 0x81, 0xCD, 0x01,
276                         0x7C, 0x73, 0x5E, 0x6F, 0x0D, 0x0D, 0x97, 0xC4,
277                         0xDD, 0xC1, 0xD1, 0xDA, 0x70, 0xC6, 0xDB, 0x4A,
278                         0x12, 0xCC, 0x92, 0x77, 0x8E, 0x2F, 0xBB, 0xD6,
279                         0xF3, 0xBA, 0x52, 0xAF, 0x91, 0xC9, 0xC6, 0xB6,
280                         0x4E, 0x8D, 0xA4, 0xF7, 0xA2, 0xC2, 0x66, 0xD0,
281                         0x2D, 0x00, 0x17, 0x53, 0xDF, 0x08, 0x96, 0x03,
282                         0x93, 0xC5, 0xD5, 0x68, 0x88, 0xBF, 0x49, 0xEB,
283                         0x5C, 0x16, 0xD9, 0xA8, 0x04, 0x27, 0xA4, 0x16,
284                         0xBC, 0xB5, 0x97, 0xDF, 0x5B, 0xFE, 0x6F, 0x13,
285                         0x89, 0x0A, 0x07, 0xEE, 0x13, 0x40, 0xE6, 0x47,
286                         0x6B, 0x0D, 0x9A, 0xA8, 0xF8, 0x22, 0xAB, 0x0F,
287                         0xD1, 0xAB, 0x0D, 0x20, 0x4F, 0x40, 0xB7, 0xCE,
288                         0x6F, 0x2E, 0x13, 0x6E, 0xB6, 0x74, 0x85, 0xE5,
289                         0x07, 0x80, 0x4D, 0x50, 0x45, 0x88, 0xAD, 0x37,
290                         0xFF, 0xD8, 0x16, 0x56, 0x8B, 0x2D, 0xC4, 0x03,
291                         0x11, 0xDF, 0xB6, 0x54, 0xCD, 0xEA, 0xD4, 0x7E,
292                         0x23, 0x85, 0xC3, 0x43, 0x62, 0x03, 0xDD, 0x83,
293                         0x6F, 0x9C, 0x64, 0xD9, 0x74, 0x62, 0xAD, 0x5D,
294                         0xFA, 0x63, 0xB5, 0xCF, 0xE0, 0x8A, 0xCB, 0x95,
295                         0x32, 0x86, 0x6F, 0x5C, 0xA7, 0x87, 0x56, 0x6F,
296                         0xCA, 0x93, 0xE6, 0xB1, 0x69, 0x3E, 0xE1, 0x5C,
297                         0xF6, 0xF7, 0xA2, 0xD6, 0x89, 0xD9, 0x74, 0x17,
298                         0x98, 0xDC, 0x1C, 0x23, 0x8E, 0x1B, 0xE6, 0x50,
299                         0x73, 0x3B, 0x18, 0xFB, 0x34, 0xFF, 0x88, 0x0E,
300                         0x16, 0xBB, 0xD2, 0x1B, 0x47, 0xAC
301                 },
302                 .len = 2800
303         },
304         .ciphertext = {
305                 .data = {
306                         0x4B, 0xBF, 0xA9, 0x1B, 0xA2, 0x5D, 0x47, 0xDB,
307                         0x9A, 0x9F, 0x19, 0x0D, 0x96, 0x2A, 0x19, 0xAB,
308                         0x32, 0x39, 0x26, 0xB3, 0x51, 0xFB, 0xD3, 0x9E,
309                         0x35, 0x1E, 0x05, 0xDA, 0x8B, 0x89, 0x25, 0xE3,
310                         0x0B, 0x1C, 0xCE, 0x0D, 0x12, 0x21, 0x10, 0x10,
311                         0x95, 0x81, 0x5C, 0xC7, 0xCB, 0x63, 0x19, 0x50,
312                         0x9E, 0xC0, 0xD6, 0x79, 0x40, 0x49, 0x19, 0x87,
313                         0xE1, 0x3F, 0x0A, 0xFF, 0xAC, 0x33, 0x2A, 0xA6,
314                         0xAA, 0x64, 0x62, 0x6D, 0x3E, 0x9A, 0x19, 0x17,
315                         0x51, 0x9E, 0x0B, 0x97, 0xB6, 0x55, 0xC6, 0xA1,
316                         0x65, 0xE4, 0x4C, 0xA9, 0xFE, 0xAC, 0x07, 0x90,
317                         0xD2, 0xA3, 0x21, 0xAD, 0x3D, 0x86, 0xB7, 0x9C,
318                         0x51, 0x38, 0x73, 0x9F, 0xA3, 0x8D, 0x88, 0x7E,
319                         0xC7, 0xDE, 0xF4, 0x49, 0xCE, 0x8A, 0xBD, 0xD3,
320                         0xE7, 0xF8, 0xDC, 0x4C, 0xA9, 0xE7, 0xB7, 0x33,
321                         0x14, 0xAD, 0x31, 0x0F, 0x90, 0x25, 0xE6, 0x19,
322                         0x46, 0xB3, 0xA5, 0x6D, 0xC6, 0x49, 0xEC, 0x0D,
323                         0xA0, 0xD6, 0x39, 0x43, 0xDF, 0xF5, 0x92, 0xCF,
324                         0x96, 0x2A, 0x7E, 0xFB, 0x2C, 0x85, 0x24, 0xE3,
325                         0x5A, 0x2A, 0x6E, 0x78, 0x79, 0xD6, 0x26, 0x04,
326                         0xEF, 0x26, 0x86, 0x95, 0xFA, 0x40, 0x03, 0x02,
327                         0x7E, 0x22, 0xE6, 0x08, 0x30, 0x77, 0x52, 0x20,
328                         0x64, 0xBD, 0x4A, 0x5B, 0x90, 0x6B, 0x5F, 0x53,
329                         0x12, 0x74, 0xF2, 0x35, 0xED, 0x50, 0x6C, 0xFF,
330                         0x01, 0x54, 0xC7, 0x54, 0x92, 0x8A, 0x0C, 0xE5,
331                         0x47, 0x6F, 0x2C, 0xB1, 0x02, 0x0A, 0x12, 0x22,
332                         0xD3, 0x2C, 0x14, 0x55, 0xEC, 0xAE, 0xF1, 0xE3,
333                         0x68, 0xFB, 0x34, 0x4D, 0x17, 0x35, 0xBF, 0xBE,
334                         0xDE, 0xB7, 0x1D, 0x0A, 0x33, 0xA2, 0xA5, 0x4B,
335                         0x1D, 0xA5, 0xA2, 0x94, 0xE6, 0x79, 0x14, 0x4D,
336                         0xDF, 0x11, 0xEB, 0x1A, 0x3D, 0xE8, 0xCF, 0x0C,
337                         0xC0, 0x61, 0x91, 0x79, 0x74, 0xF3, 0x5C, 0x1D,
338                         0x9C, 0xA0, 0xAC, 0x81, 0x80, 0x7F, 0x8F, 0xCC,
339                         0xE6, 0x19, 0x9A, 0x6C, 0x77, 0x12, 0xDA, 0x86,
340                         0x50, 0x21, 0xB0, 0x4C, 0xE0, 0x43, 0x95, 0x16,
341                         0xF1, 0xA5, 0x26, 0xCC, 0xDA, 0x9F, 0xD9, 0xAB,
342                         0xBD, 0x53, 0xC3, 0xA6, 0x84, 0xF9, 0xAE, 0x1E,
343                         0x7E, 0xE6, 0xB1, 0x1D, 0xA1, 0x38, 0xEA, 0x82,
344                         0x6C, 0x55, 0x16, 0xB5, 0xAA, 0xDF, 0x1A, 0xBB,
345                         0xE3, 0x6F, 0xA7, 0xFF, 0xF9, 0x2E, 0x3A, 0x11,
346                         0x76, 0x06, 0x4E, 0x8D, 0x95, 0xF2, 0xE4, 0x88,
347                         0x2B, 0x55, 0x00, 0xB9, 0x32, 0x28, 0xB2, 0x19,
348                         0x4A, 0x47, 0x5C, 0x1A, 0x27, 0xF6, 0x3F, 0x9F,
349                         0xFD, 0x26, 0x49, 0x89, 0xA1, 0xBC
350                 },
351                 .len = 2800
352         },
353         .validDataLenInBits = {
354                 .len = 2798
355         },
356         .validCipherLenInBits = {
357                 .len = 2798
358         }
359 };
360
361 static struct wireless_test_data zuc_test_case_cipher_4019b = {
362         .key = {
363                 .data = {
364                         0xE1, 0x3F, 0xED, 0x21, 0xB4, 0x6E, 0x4E, 0x7E,
365                         0xC3, 0x12, 0x53, 0xB2, 0xBB, 0x17, 0xB3, 0xE0
366                 },
367                 .len = 16
368         },
369         .cipher_iv = {
370                 .data = {
371                         0x27, 0x38, 0xCD, 0xAA, 0xD0, 0x00, 0x00, 0x00,
372                         0x27, 0x38, 0xCD, 0xAA, 0xD0, 0x00, 0x00, 0x00
373                 },
374                 .len = 16
375         },
376         .plaintext = {
377                 .data = {
378                         0x8D, 0x74, 0xE2, 0x0D, 0x54, 0x89, 0x4E, 0x06,
379                         0xD3, 0xCB, 0x13, 0xCB, 0x39, 0x33, 0x06, 0x5E,
380                         0x86, 0x74, 0xBE, 0x62, 0xAD, 0xB1, 0xC7, 0x2B,
381                         0x3A, 0x64, 0x69, 0x65, 0xAB, 0x63, 0xCB, 0x7B,
382                         0x78, 0x54, 0xDF, 0xDC, 0x27, 0xE8, 0x49, 0x29,
383                         0xF4, 0x9C, 0x64, 0xB8, 0x72, 0xA4, 0x90, 0xB1,
384                         0x3F, 0x95, 0x7B, 0x64, 0x82, 0x7E, 0x71, 0xF4,
385                         0x1F, 0xBD, 0x42, 0x69, 0xA4, 0x2C, 0x97, 0xF8,
386                         0x24, 0x53, 0x70, 0x27, 0xF8, 0x6E, 0x9F, 0x4A,
387                         0xD8, 0x2D, 0x1D, 0xF4, 0x51, 0x69, 0x0F, 0xDD,
388                         0x98, 0xB6, 0xD0, 0x3F, 0x3A, 0x0E, 0xBE, 0x3A,
389                         0x31, 0x2D, 0x6B, 0x84, 0x0B, 0xA5, 0xA1, 0x82,
390                         0x0B, 0x2A, 0x2C, 0x97, 0x09, 0xC0, 0x90, 0xD2,
391                         0x45, 0xED, 0x26, 0x7C, 0xF8, 0x45, 0xAE, 0x41,
392                         0xFA, 0x97, 0x5D, 0x33, 0x33, 0xAC, 0x30, 0x09,
393                         0xFD, 0x40, 0xEB, 0xA9, 0xEB, 0x5B, 0x88, 0x57,
394                         0x14, 0xB7, 0x68, 0xB6, 0x97, 0x13, 0x8B, 0xAF,
395                         0x21, 0x38, 0x0E, 0xCA, 0x49, 0xF6, 0x44, 0xD4,
396                         0x86, 0x89, 0xE4, 0x21, 0x57, 0x60, 0xB9, 0x06,
397                         0x73, 0x9F, 0x0D, 0x2B, 0x3F, 0x09, 0x11, 0x33,
398                         0xCA, 0x15, 0xD9, 0x81, 0xCB, 0xE4, 0x01, 0xBA,
399                         0xF7, 0x2D, 0x05, 0xAC, 0xE0, 0x5C, 0xCC, 0xB2,
400                         0xD2, 0x97, 0xF4, 0xEF, 0x6A, 0x5F, 0x58, 0xD9,
401                         0x12, 0x46, 0xCF, 0xA7, 0x72, 0x15, 0xB8, 0x92,
402                         0xAB, 0x44, 0x1D, 0x52, 0x78, 0x45, 0x27, 0x95,
403                         0xCC, 0xB7, 0xF5, 0xD7, 0x90, 0x57, 0xA1, 0xC4,
404                         0xF7, 0x7F, 0x80, 0xD4, 0x6D, 0xB2, 0x03, 0x3C,
405                         0xB7, 0x9B, 0xED, 0xF8, 0xE6, 0x05, 0x51, 0xCE,
406                         0x10, 0xC6, 0x67, 0xF6, 0x2A, 0x97, 0xAB, 0xAF,
407                         0xAB, 0xBC, 0xD6, 0x77, 0x20, 0x18, 0xDF, 0x96,
408                         0xA2, 0x82, 0xEA, 0x73, 0x7C, 0xE2, 0xCB, 0x33,
409                         0x12, 0x11, 0xF6, 0x0D, 0x53, 0x54, 0xCE, 0x78,
410                         0xF9, 0x91, 0x8D, 0x9C, 0x20, 0x6C, 0xA0, 0x42,
411                         0xC9, 0xB6, 0x23, 0x87, 0xDD, 0x70, 0x96, 0x04,
412                         0xA5, 0x0A, 0xF1, 0x6D, 0x8D, 0x35, 0xA8, 0x90,
413                         0x6B, 0xE4, 0x84, 0xCF, 0x2E, 0x74, 0xA9, 0x28,
414                         0x99, 0x40, 0x36, 0x43, 0x53, 0x24, 0x9B, 0x27,
415                         0xB4, 0xC9, 0xAE, 0x29, 0xED, 0xDF, 0xC7, 0xDA,
416                         0x64, 0x18, 0x79, 0x1A, 0x4E, 0x7B, 0xAA, 0x06,
417                         0x60, 0xFA, 0x64, 0x51, 0x1F, 0x2D, 0x68, 0x5C,
418                         0xC3, 0xA5, 0xFF, 0x70, 0xE0, 0xD2, 0xB7, 0x42,
419                         0x92, 0xE3, 0xB8, 0xA0, 0xCD, 0x6B, 0x04, 0xB1,
420                         0xC7, 0x90, 0xB8, 0xEA, 0xD2, 0x70, 0x37, 0x08,
421                         0x54, 0x0D, 0xEA, 0x2F, 0xC0, 0x9C, 0x3D, 0xA7,
422                         0x70, 0xF6, 0x54, 0x49, 0xE8, 0x4D, 0x81, 0x7A,
423                         0x4F, 0x55, 0x10, 0x55, 0xE1, 0x9A, 0xB8, 0x50,
424                         0x18, 0xA0, 0x02, 0x8B, 0x71, 0xA1, 0x44, 0xD9,
425                         0x67, 0x91, 0xE9, 0xA3, 0x57, 0x79, 0x33, 0x50,
426                         0x4E, 0xEE, 0x00, 0x60, 0x34, 0x0C, 0x69, 0xD2,
427                         0x74, 0xE1, 0xBF, 0x9D, 0x80, 0x5D, 0xCB, 0xCC,
428                         0x1A, 0x6F, 0xAA, 0x97, 0x68, 0x00, 0xB6, 0xFF,
429                         0x2B, 0x67, 0x1D, 0xC4, 0x63, 0x65, 0x2F, 0xA8,
430                         0xA3, 0x3E, 0xE5, 0x09, 0x74, 0xC1, 0xC2, 0x1B,
431                         0xE0, 0x1E, 0xAB, 0xB2, 0x16, 0x74, 0x30, 0x26,
432                         0x9D, 0x72, 0xEE, 0x51, 0x1C, 0x9D, 0xDE, 0x30,
433                         0x79, 0x7C, 0x9A, 0x25, 0xD8, 0x6C, 0xE7, 0x4F,
434                         0x5B, 0x96, 0x1B, 0xE5, 0xFD, 0xFB, 0x68, 0x07,
435                         0x81, 0x40, 0x39, 0xE7, 0x13, 0x76, 0x36, 0xBD,
436                         0x1D, 0x7F, 0xA9, 0xE0, 0x9E, 0xFD, 0x20, 0x07,
437                         0x50, 0x59, 0x06, 0xA5, 0xAC, 0x45, 0xDF, 0xDE,
438                         0xED, 0x77, 0x57, 0xBB, 0xEE, 0x74, 0x57, 0x49,
439                         0xC2, 0x96, 0x33, 0x35, 0x0B, 0xEE, 0x0E, 0xA6,
440                         0xF4, 0x09, 0xDF, 0x45, 0x80, 0x16, 0x00
441                 },
442                 .len = 4024
443         },
444         .ciphertext = {
445                 .data = {
446                         0x94, 0xEA, 0xA4, 0xAA, 0x30, 0xA5, 0x71, 0x37,
447                         0xDD, 0xF0, 0x9B, 0x97, 0xB2, 0x56, 0x18, 0xA2,
448                         0x0A, 0x13, 0xE2, 0xF1, 0x0F, 0xA5, 0xBF, 0x81,
449                         0x61, 0xA8, 0x79, 0xCC, 0x2A, 0xE7, 0x97, 0xA6,
450                         0xB4, 0xCF, 0x2D, 0x9D, 0xF3, 0x1D, 0xEB, 0xB9,
451                         0x90, 0x5C, 0xCF, 0xEC, 0x97, 0xDE, 0x60, 0x5D,
452                         0x21, 0xC6, 0x1A, 0xB8, 0x53, 0x1B, 0x7F, 0x3C,
453                         0x9D, 0xA5, 0xF0, 0x39, 0x31, 0xF8, 0xA0, 0x64,
454                         0x2D, 0xE4, 0x82, 0x11, 0xF5, 0xF5, 0x2F, 0xFE,
455                         0xA1, 0x0F, 0x39, 0x2A, 0x04, 0x76, 0x69, 0x98,
456                         0x5D, 0xA4, 0x54, 0xA2, 0x8F, 0x08, 0x09, 0x61,
457                         0xA6, 0xC2, 0xB6, 0x2D, 0xAA, 0x17, 0xF3, 0x3C,
458                         0xD6, 0x0A, 0x49, 0x71, 0xF4, 0x8D, 0x2D, 0x90,
459                         0x93, 0x94, 0xA5, 0x5F, 0x48, 0x11, 0x7A, 0xCE,
460                         0x43, 0xD7, 0x08, 0xE6, 0xB7, 0x7D, 0x3D, 0xC4,
461                         0x6D, 0x8B, 0xC0, 0x17, 0xD4, 0xD1, 0xAB, 0xB7,
462                         0x7B, 0x74, 0x28, 0xC0, 0x42, 0xB0, 0x6F, 0x2F,
463                         0x99, 0xD8, 0xD0, 0x7C, 0x98, 0x79, 0xD9, 0x96,
464                         0x00, 0x12, 0x7A, 0x31, 0x98, 0x5F, 0x10, 0x99,
465                         0xBB, 0xD7, 0xD6, 0xC1, 0x51, 0x9E, 0xDE, 0x8F,
466                         0x5E, 0xEB, 0x4A, 0x61, 0x0B, 0x34, 0x9A, 0xC0,
467                         0x1E, 0xA2, 0x35, 0x06, 0x91, 0x75, 0x6B, 0xD1,
468                         0x05, 0xC9, 0x74, 0xA5, 0x3E, 0xDD, 0xB3, 0x5D,
469                         0x1D, 0x41, 0x00, 0xB0, 0x12, 0xE5, 0x22, 0xAB,
470                         0x41, 0xF4, 0xC5, 0xF2, 0xFD, 0xE7, 0x6B, 0x59,
471                         0xCB, 0x8B, 0x96, 0xD8, 0x85, 0xCF, 0xE4, 0x08,
472                         0x0D, 0x13, 0x28, 0xA0, 0xD6, 0x36, 0xCC, 0x0E,
473                         0xDC, 0x05, 0x80, 0x0B, 0x76, 0xAC, 0xCA, 0x8F,
474                         0xEF, 0x67, 0x20, 0x84, 0xD1, 0xF5, 0x2A, 0x8B,
475                         0xBD, 0x8E, 0x09, 0x93, 0x32, 0x09, 0x92, 0xC7,
476                         0xFF, 0xBA, 0xE1, 0x7C, 0x40, 0x84, 0x41, 0xE0,
477                         0xEE, 0x88, 0x3F, 0xC8, 0xA8, 0xB0, 0x5E, 0x22,
478                         0xF5, 0xFF, 0x7F, 0x8D, 0x1B, 0x48, 0xC7, 0x4C,
479                         0x46, 0x8C, 0x46, 0x7A, 0x02, 0x8F, 0x09, 0xFD,
480                         0x7C, 0xE9, 0x11, 0x09, 0xA5, 0x70, 0xA2, 0xD5,
481                         0xC4, 0xD5, 0xF4, 0xFA, 0x18, 0xC5, 0xDD, 0x3E,
482                         0x45, 0x62, 0xAF, 0xE2, 0x4E, 0xF7, 0x71, 0x90,
483                         0x1F, 0x59, 0xAF, 0x64, 0x58, 0x98, 0xAC, 0xEF,
484                         0x08, 0x8A, 0xBA, 0xE0, 0x7E, 0x92, 0xD5, 0x2E,
485                         0xB2, 0xDE, 0x55, 0x04, 0x5B, 0xB1, 0xB7, 0xC4,
486                         0x16, 0x4E, 0xF2, 0xD7, 0xA6, 0xCA, 0xC1, 0x5E,
487                         0xEB, 0x92, 0x6D, 0x7E, 0xA2, 0xF0, 0x8B, 0x66,
488                         0xE1, 0xF7, 0x59, 0xF3, 0xAE, 0xE4, 0x46, 0x14,
489                         0x72, 0x5A, 0xA3, 0xC7, 0x48, 0x2B, 0x30, 0x84,
490                         0x4C, 0x14, 0x3F, 0xF8, 0x5B, 0x53, 0xF1, 0xE5,
491                         0x83, 0xC5, 0x01, 0x25, 0x7D, 0xDD, 0xD0, 0x96,
492                         0xB8, 0x12, 0x68, 0xDA, 0xA3, 0x03, 0xF1, 0x72,
493                         0x34, 0xC2, 0x33, 0x35, 0x41, 0xF0, 0xBB, 0x8E,
494                         0x19, 0x06, 0x48, 0xC5, 0x80, 0x7C, 0x86, 0x6D,
495                         0x71, 0x93, 0x22, 0x86, 0x09, 0xAD, 0xB9, 0x48,
496                         0x68, 0x6F, 0x7D, 0xE2, 0x94, 0xA8, 0x02, 0xCC,
497                         0x38, 0xF7, 0xFE, 0x52, 0x08, 0xF5, 0xEA, 0x31,
498                         0x96, 0xD0, 0x16, 0x7B, 0x9B, 0xDD, 0x02, 0xF0,
499                         0xD2, 0xA5, 0x22, 0x1C, 0xA5, 0x08, 0xF8, 0x93,
500                         0xAF, 0x5C, 0x4B, 0x4B, 0xB9, 0xF4, 0xF5, 0x20,
501                         0xFD, 0x84, 0x28, 0x9B, 0x3D, 0xBE, 0x7E, 0x61,
502                         0x49, 0x7A, 0x7E, 0x2A, 0x58, 0x40, 0x37, 0xEA,
503                         0x63, 0x7B, 0x69, 0x81, 0x12, 0x71, 0x74, 0xAF,
504                         0x57, 0xB4, 0x71, 0xDF, 0x4B, 0x27, 0x68, 0xFD,
505                         0x79, 0xC1, 0x54, 0x0F, 0xB3, 0xED, 0xF2, 0xEA,
506                         0x22, 0xCB, 0x69, 0xBE, 0xC0, 0xCF, 0x8D, 0x93,
507                         0x3D, 0x9C, 0x6F, 0xDD, 0x64, 0x5E, 0x85, 0x05,
508                         0x91, 0xCC, 0xA3, 0xD6, 0x2C, 0x0C, 0xC0
509                 },
510                 .len = 4024
511         },
512         .validDataLenInBits = {
513                 .len = 4019
514         },
515         .validCipherLenInBits = {
516                 .len = 4019
517         }
518 };
519
520 static struct wireless_test_data zuc_test_case_cipher_200b_auth_200b = {
521         .key = {
522                 .data = {
523                         0x17, 0x3D, 0x14, 0xBA, 0x50, 0x03, 0x73, 0x1D,
524                         0x7A, 0x60, 0x04, 0x94, 0x70, 0xF0, 0x0A, 0x29
525                 },
526                 .len = 16
527         },
528         .cipher_iv = {
529                 .data = {
530                         0x66, 0x03, 0x54, 0x92, 0x78, 0x00, 0x00, 0x00,
531                         0x66, 0x03, 0x54, 0x92, 0x78, 0x00, 0x00, 0x00
532                 },
533                 .len = 16
534         },
535         .plaintext = {
536                 .data = {
537                         0x6C, 0xF6, 0x53, 0x40, 0x73, 0x55, 0x52, 0xAB,
538                         0x0C, 0x97, 0x52, 0xFA, 0x6F, 0x90, 0x25, 0xFE,
539                         0x0B, 0xD6, 0x75, 0xD9, 0x00, 0x58, 0x75, 0xB2,
540                         0x00
541                 },
542                 .len = 200
543         },
544         .ciphertext = {
545                 .data = {
546                         0xA6, 0xC8, 0x5F, 0xC6, 0x6A, 0xFB, 0x85, 0x33,
547                         0xAA, 0xFC, 0x25, 0x18, 0xDF, 0xE7, 0x84, 0x94,
548                         0x0E, 0xE1, 0xE4, 0xB0, 0x30, 0x23, 0x8C, 0xC8,
549                         0x10
550                 },
551                 .len = 200
552         },
553         .validDataLenInBits = {
554                 .len = 200
555         },
556         .validCipherLenInBits = {
557                 .len = 200
558         },
559         .auth_iv = {
560                 .data = {
561                         0xFA, 0x55, 0x6B, 0x26, 0x1C, 0x00, 0x00, 0x00,
562                         0xFA, 0x55, 0x6B, 0x26, 0x1C, 0x00, 0x00, 0x00
563                 },
564                 .len = 16
565         },
566         .digest = {
567                 .data = {0x01, 0xFE, 0x5E, 0x38},
568                 .len  = 4
569         },
570         .validAuthLenInBits = {
571                 .len = 200
572         }
573 };
574
575 static struct wireless_test_data zuc_test_case_cipher_800b_auth_120b = {
576         .key = {
577                 .data = {
578                         0xE5, 0xBD, 0x3E, 0xA0, 0xEB, 0x55, 0xAD, 0xE8,
579                         0x66, 0xC6, 0xAC, 0x58, 0xBD, 0x54, 0x30, 0x2A
580                 },
581                 .len = 16
582         },
583         .cipher_iv = {
584                 .data = {
585                         0x00, 0x05, 0x68, 0x23, 0xC4, 0x00, 0x00, 0x00,
586                         0x00, 0x05, 0x68, 0x23, 0xC4, 0x00, 0x00, 0x00
587                 },
588                 .len = 16
589         },
590         .plaintext = {
591                 .data = {
592                         0x14, 0xA8, 0xEF, 0x69, 0x3D, 0x67, 0x85, 0x07,
593                         0xBB, 0xE7, 0x27, 0x0A, 0x7F, 0x67, 0xFF, 0x50,
594                         0x06, 0xC3, 0x52, 0x5B, 0x98, 0x07, 0xE4, 0x67,
595                         0xC4, 0xE5, 0x60, 0x00, 0xBA, 0x33, 0x8F, 0x5D,
596                         0x42, 0x95, 0x59, 0x03, 0x67, 0x51, 0x82, 0x22,
597                         0x46, 0xC8, 0x0D, 0x3B, 0x38, 0xF0, 0x7F, 0x4B,
598                         0xE2, 0xD8, 0xFF, 0x58, 0x05, 0xF5, 0x13, 0x22,
599                         0x29, 0xBD, 0xE9, 0x3B, 0xBB, 0xDC, 0xAF, 0x38,
600                         0x2B, 0xF1, 0xEE, 0x97, 0x2F, 0xBF, 0x99, 0x77,
601                         0xBA, 0xDA, 0x89, 0x45, 0x84, 0x7A, 0x2A, 0x6C,
602                         0x9A, 0xD3, 0x4A, 0x66, 0x75, 0x54, 0xE0, 0x4D,
603                         0x1F, 0x7F, 0xA2, 0xC3, 0x32, 0x41, 0xBD, 0x8F,
604                         0x01, 0xBA, 0x22, 0x0D
605                 },
606                 .len = 800
607         },
608         .ciphertext = {
609                 .data = {
610                         0x13, 0x1D, 0x43, 0xE0, 0xDE, 0xA1, 0xBE, 0x5C,
611                         0x5A, 0x1B, 0xFD, 0x97, 0x1D, 0x85, 0x2C, 0xBF,
612                         0x71, 0x2D, 0x7B, 0x4F, 0x57, 0x96, 0x1F, 0xEA,
613                         0x32, 0x08, 0xAF, 0xA8, 0xBC, 0xA4, 0x33, 0xF4,
614                         0x56, 0xAD, 0x09, 0xC7, 0x41, 0x7E, 0x58, 0xBC,
615                         0x69, 0xCF, 0x88, 0x66, 0xD1, 0x35, 0x3F, 0x74,
616                         0x86, 0x5E, 0x80, 0x78, 0x1D, 0x20, 0x2D, 0xFB,
617                         0x3E, 0xCF, 0xF7, 0xFC, 0xBC, 0x3B, 0x19, 0x0F,
618                         0xE8, 0x2A, 0x20, 0x4E, 0xD0, 0xE3, 0x50, 0xFC,
619                         0x0F, 0x6F, 0x26, 0x13, 0xB2, 0xF2, 0xBC, 0xA6,
620                         0xDF, 0x5A, 0x47, 0x3A, 0x57, 0xA4, 0xA0, 0x0D,
621                         0x98, 0x5E, 0xBA, 0xD8, 0x80, 0xD6, 0xF2, 0x38,
622                         0x64, 0xA0, 0x7B, 0x01
623                 },
624                 .len = 800
625         },
626         .validDataLenInBits = {
627                 .len = 800
628         },
629         .validCipherLenInBits = {
630                 .len = 800
631         },
632         .auth_iv = {
633                 .data = {
634                         0xFA, 0x55, 0x6B, 0x26, 0x1C, 0x00, 0x00, 0x00,
635                         0xFA, 0x55, 0x6B, 0x26, 0x1C, 0x00, 0x00, 0x00
636                 },
637                 .len = 16
638         },
639         .digest = {
640                 .data = {0x9D, 0x42, 0x1C, 0xEA},
641                 .len  = 4
642         },
643         .validAuthLenInBits = {
644                 .len = 120
645         }
646 };
647
648 struct wireless_test_data zuc_test_case_auth_1b = {
649         .key = {
650                 .data = {
651                         0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
652                         0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
653                 },
654                 .len = 16
655         },
656         .auth_iv = {
657                 .data = {
658                         0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
659                         0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
660                 },
661                 .len = 16
662         },
663         .plaintext = {
664                 .data = {0x00},
665                 .len = 8
666         },
667         .validAuthLenInBits = {
668                 .len = 1
669         },
670         .digest = {
671                 .data = {0xC8, 0xA9, 0x59, 0x5E},
672                 .len  = 4
673         }
674 };
675
676 struct wireless_test_data zuc_test_case_auth_90b = {
677         .key = {
678                 .data = {
679                         0x47, 0x05, 0x41, 0x25, 0x56, 0x1E, 0xB2, 0xDD,
680                         0xA9, 0x40, 0x59, 0xDA, 0x05, 0x09, 0x78, 0x50
681                 },
682                 .len = 16
683         },
684         .auth_iv = {
685                 .data = {
686                         0x56, 0x1E, 0xB2, 0xDD, 0xA0, 0x00, 0x00, 0x00,
687                         0x56, 0x1E, 0xB2, 0xDD, 0xA0, 0x00, 0x00, 0x00
688                 },
689                 .len = 16
690         },
691         .plaintext = {
692                 .data = {
693                         0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
694                         0x00, 0x00, 0x00, 0x00
695                 },
696                 .len = 96
697         },
698         .validAuthLenInBits = {
699                 .len = 90
700         },
701         .digest = {
702                 .data = {0x67, 0x19, 0xA0, 0x88},
703                 .len  = 4
704         }
705 };
706
707 struct wireless_test_data zuc_test_case_auth_577b = {
708         .key = {
709                 .data = {
710                         0xC9, 0xE6, 0xCE, 0xC4, 0x60, 0x7C, 0x72, 0xDB,
711                         0x00, 0x0A, 0xEF, 0xA8, 0x83, 0x85, 0xAB, 0x0A
712                 },
713                 .len = 16
714         },
715         .auth_iv = {
716                 .data = {
717                         0xA9, 0x40, 0x59, 0xDA, 0x50, 0x00, 0x00, 0x00,
718                         0x29, 0x40, 0x59, 0xDA, 0x50, 0x00, 0x80, 0x00
719                 },
720                 .len = 16
721         },
722         .plaintext = {
723                 .data = {
724                         0x98, 0x3B, 0x41, 0xD4, 0x7D, 0x78, 0x0C, 0x9E,
725                         0x1A, 0xD1, 0x1D, 0x7E, 0xB7, 0x03, 0x91, 0xB1,
726                         0xDE, 0x0B, 0x35, 0xDA, 0x2D, 0xC6, 0x2F, 0x83,
727                         0xE7, 0xB7, 0x8D, 0x63, 0x06, 0xCA, 0x0E, 0xA0,
728                         0x7E, 0x94, 0x1B, 0x7B, 0xE9, 0x13, 0x48, 0xF9,
729                         0xFC, 0xB1, 0x70, 0xE2, 0x21, 0x7F, 0xEC, 0xD9,
730                         0x7F, 0x9F, 0x68, 0xAD, 0xB1, 0x6E, 0x5D, 0x7D,
731                         0x21, 0xE5, 0x69, 0xD2, 0x80, 0xED, 0x77, 0x5C,
732                         0xEB, 0xDE, 0x3F, 0x40, 0x93, 0xC5, 0x38, 0x81,
733                         0x00
734                 },
735                 .len = 584
736         },
737         .validAuthLenInBits = {
738                 .len = 577
739         },
740         .digest = {
741                 .data = {0xFA, 0xE8, 0xFF, 0x0B},
742                 .len  = 4
743         }
744 };
745
746 struct wireless_test_data zuc_test_case_auth_2079b = {
747         .key = {
748                 .data = {
749                         0xC8, 0xA4, 0x82, 0x62, 0xD0, 0xC2, 0xE2, 0xBA,
750                         0xC4, 0xB9, 0x6E, 0xF7, 0x7E, 0x80, 0xCA, 0x59
751                 },
752                 .len = 16
753         },
754         .auth_iv = {
755                 .data = {
756                         0x05, 0x09, 0x78, 0x50, 0x80, 0x00, 0x00, 0x00,
757                         0x85, 0x09, 0x78, 0x50, 0x80, 0x00, 0x80, 0x00
758                 },
759                 .len = 16
760         },
761         .plaintext = {
762                 .data = {
763                         0xB5, 0x46, 0x43, 0x0B, 0xF8, 0x7B, 0x4F, 0x1E,
764                         0xE8, 0x34, 0x70, 0x4C, 0xD6, 0x95, 0x1C, 0x36,
765                         0xE2, 0x6F, 0x10, 0x8C, 0xF7, 0x31, 0x78, 0x8F,
766                         0x48, 0xDC, 0x34, 0xF1, 0x67, 0x8C, 0x05, 0x22,
767                         0x1C, 0x8F, 0xA7, 0xFF, 0x2F, 0x39, 0xF4, 0x77,
768                         0xE7, 0xE4, 0x9E, 0xF6, 0x0A, 0x4E, 0xC2, 0xC3,
769                         0xDE, 0x24, 0x31, 0x2A, 0x96, 0xAA, 0x26, 0xE1,
770                         0xCF, 0xBA, 0x57, 0x56, 0x38, 0x38, 0xB2, 0x97,
771                         0xF4, 0x7E, 0x85, 0x10, 0xC7, 0x79, 0xFD, 0x66,
772                         0x54, 0xB1, 0x43, 0x38, 0x6F, 0xA6, 0x39, 0xD3,
773                         0x1E, 0xDB, 0xD6, 0xC0, 0x6E, 0x47, 0xD1, 0x59,
774                         0xD9, 0x43, 0x62, 0xF2, 0x6A, 0xEE, 0xED, 0xEE,
775                         0x0E, 0x4F, 0x49, 0xD9, 0xBF, 0x84, 0x12, 0x99,
776                         0x54, 0x15, 0xBF, 0xAD, 0x56, 0xEE, 0x82, 0xD1,
777                         0xCA, 0x74, 0x63, 0xAB, 0xF0, 0x85, 0xB0, 0x82,
778                         0xB0, 0x99, 0x04, 0xD6, 0xD9, 0x90, 0xD4, 0x3C,
779                         0xF2, 0xE0, 0x62, 0xF4, 0x08, 0x39, 0xD9, 0x32,
780                         0x48, 0xB1, 0xEB, 0x92, 0xCD, 0xFE, 0xD5, 0x30,
781                         0x0B, 0xC1, 0x48, 0x28, 0x04, 0x30, 0xB6, 0xD0,
782                         0xCA, 0xA0, 0x94, 0xB6, 0xEC, 0x89, 0x11, 0xAB,
783                         0x7D, 0xC3, 0x68, 0x24, 0xB8, 0x24, 0xDC, 0x0A,
784                         0xF6, 0x68, 0x2B, 0x09, 0x35, 0xFD, 0xE7, 0xB4,
785                         0x92, 0xA1, 0x4D, 0xC2, 0xF4, 0x36, 0x48, 0x03,
786                         0x8D, 0xA2, 0xCF, 0x79, 0x17, 0x0D, 0x2D, 0x50,
787                         0x13, 0x3F, 0xD4, 0x94, 0x16, 0xCB, 0x6E, 0x33,
788                         0xBE, 0xA9, 0x0B, 0x8B, 0xF4, 0x55, 0x9B, 0x03,
789                         0x73, 0x2A, 0x01, 0xEA, 0x29, 0x0E, 0x6D, 0x07,
790                         0x4F, 0x79, 0xBB, 0x83, 0xC1, 0x0E, 0x58, 0x00,
791                         0x15, 0xCC, 0x1A, 0x85, 0xB3, 0x6B, 0x55, 0x01,
792                         0x04, 0x6E, 0x9C, 0x4B, 0xDC, 0xAE, 0x51, 0x35,
793                         0x69, 0x0B, 0x86, 0x66, 0xBD, 0x54, 0xB7, 0xA7,
794                         0x03, 0xEA, 0x7B, 0x6F, 0x22, 0x0A, 0x54, 0x69,
795                         0xA5, 0x68, 0x02, 0x7E
796                 },
797                 .len = 2080
798         },
799         .validAuthLenInBits = {
800                 .len = 2079
801         },
802         .digest = {
803                 .data = {0x00, 0x4A, 0xC4, 0xD6},
804                 .len  = 4
805         }
806 };
807
808 struct wireless_test_data zuc_test_auth_5670b = {
809         .key = {
810                 .data = {
811                         0x6B, 0x8B, 0x08, 0xEE, 0x79, 0xE0, 0xB5, 0x98,
812                         0x2D, 0x6D, 0x12, 0x8E, 0xA9, 0xF2, 0x20, 0xCB
813                 },
814                 .len = 16
815         },
816         .auth_iv = {
817                 .data = {
818                         0x56, 0x1E, 0xB2, 0xDD, 0xE0, 0x00, 0x00, 0x00,
819                         0x56, 0x1E, 0xB2, 0xDD, 0xE0, 0x00, 0x00, 0x00
820                 },
821                 .len = 16
822         },
823         .plaintext = {
824                 .data = {
825                         0x5B, 0xAD, 0x72, 0x47, 0x10, 0xBA, 0x1C, 0x56,
826                         0xD5, 0xA3, 0x15, 0xF8, 0xD4, 0x0F, 0x6E, 0x09,
827                         0x37, 0x80, 0xBE, 0x8E, 0x8D, 0xE0, 0x7B, 0x69,
828                         0x92, 0x43, 0x20, 0x18, 0xE0, 0x8E, 0xD9, 0x6A,
829                         0x57, 0x34, 0xAF, 0x8B, 0xAD, 0x8A, 0x57, 0x5D,
830                         0x3A, 0x1F, 0x16, 0x2F, 0x85, 0x04, 0x5C, 0xC7,
831                         0x70, 0x92, 0x55, 0x71, 0xD9, 0xF5, 0xB9, 0x4E,
832                         0x45, 0x4A, 0x77, 0xC1, 0x6E, 0x72, 0x93, 0x6B,
833                         0xF0, 0x16, 0xAE, 0x15, 0x74, 0x99, 0xF0, 0x54,
834                         0x3B, 0x5D, 0x52, 0xCA, 0xA6, 0xDB, 0xEA, 0xB6,
835                         0x97, 0xD2, 0xBB, 0x73, 0xE4, 0x1B, 0x80, 0x75,
836                         0xDC, 0xE7, 0x9B, 0x4B, 0x86, 0x04, 0x4F, 0x66,
837                         0x1D, 0x44, 0x85, 0xA5, 0x43, 0xDD, 0x78, 0x60,
838                         0x6E, 0x04, 0x19, 0xE8, 0x05, 0x98, 0x59, 0xD3,
839                         0xCB, 0x2B, 0x67, 0xCE, 0x09, 0x77, 0x60, 0x3F,
840                         0x81, 0xFF, 0x83, 0x9E, 0x33, 0x18, 0x59, 0x54,
841                         0x4C, 0xFB, 0xC8, 0xD0, 0x0F, 0xEF, 0x1A, 0x4C,
842                         0x85, 0x10, 0xFB, 0x54, 0x7D, 0x6B, 0x06, 0xC6,
843                         0x11, 0xEF, 0x44, 0xF1, 0xBC, 0xE1, 0x07, 0xCF,
844                         0xA4, 0x5A, 0x06, 0xAA, 0xB3, 0x60, 0x15, 0x2B,
845                         0x28, 0xDC, 0x1E, 0xBE, 0x6F, 0x7F, 0xE0, 0x9B,
846                         0x05, 0x16, 0xF9, 0xA5, 0xB0, 0x2A, 0x1B, 0xD8,
847                         0x4B, 0xB0, 0x18, 0x1E, 0x2E, 0x89, 0xE1, 0x9B,
848                         0xD8, 0x12, 0x59, 0x30, 0xD1, 0x78, 0x68, 0x2F,
849                         0x38, 0x62, 0xDC, 0x51, 0xB6, 0x36, 0xF0, 0x4E,
850                         0x72, 0x0C, 0x47, 0xC3, 0xCE, 0x51, 0xAD, 0x70,
851                         0xD9, 0x4B, 0x9B, 0x22, 0x55, 0xFB, 0xAE, 0x90,
852                         0x65, 0x49, 0xF4, 0x99, 0xF8, 0xC6, 0xD3, 0x99,
853                         0x47, 0xED, 0x5E, 0x5D, 0xF8, 0xE2, 0xDE, 0xF1,
854                         0x13, 0x25, 0x3E, 0x7B, 0x08, 0xD0, 0xA7, 0x6B,
855                         0x6B, 0xFC, 0x68, 0xC8, 0x12, 0xF3, 0x75, 0xC7,
856                         0x9B, 0x8F, 0xE5, 0xFD, 0x85, 0x97, 0x6A, 0xA6,
857                         0xD4, 0x6B, 0x4A, 0x23, 0x39, 0xD8, 0xAE, 0x51,
858                         0x47, 0xF6, 0x80, 0xFB, 0xE7, 0x0F, 0x97, 0x8B,
859                         0x38, 0xEF, 0xFD, 0x7B, 0x2F, 0x78, 0x66, 0xA2,
860                         0x25, 0x54, 0xE1, 0x93, 0xA9, 0x4E, 0x98, 0xA6,
861                         0x8B, 0x74, 0xBD, 0x25, 0xBB, 0x2B, 0x3F, 0x5F,
862                         0xB0, 0xA5, 0xFD, 0x59, 0x88, 0x7F, 0x9A, 0xB6,
863                         0x81, 0x59, 0xB7, 0x17, 0x8D, 0x5B, 0x7B, 0x67,
864                         0x7C, 0xB5, 0x46, 0xBF, 0x41, 0xEA, 0xDC, 0xA2,
865                         0x16, 0xFC, 0x10, 0x85, 0x01, 0x28, 0xF8, 0xBD,
866                         0xEF, 0x5C, 0x8D, 0x89, 0xF9, 0x6A, 0xFA, 0x4F,
867                         0xA8, 0xB5, 0x48, 0x85, 0x56, 0x5E, 0xD8, 0x38,
868                         0xA9, 0x50, 0xFE, 0xE5, 0xF1, 0xC3, 0xB0, 0xA4,
869                         0xF6, 0xFB, 0x71, 0xE5, 0x4D, 0xFD, 0x16, 0x9E,
870                         0x82, 0xCE, 0xCC, 0x72, 0x66, 0xC8, 0x50, 0xE6,
871                         0x7C, 0x5E, 0xF0, 0xBA, 0x96, 0x0F, 0x52, 0x14,
872                         0x06, 0x0E, 0x71, 0xEB, 0x17, 0x2A, 0x75, 0xFC,
873                         0x14, 0x86, 0x83, 0x5C, 0xBE, 0xA6, 0x53, 0x44,
874                         0x65, 0xB0, 0x55, 0xC9, 0x6A, 0x72, 0xE4, 0x10,
875                         0x52, 0x24, 0x18, 0x23, 0x25, 0xD8, 0x30, 0x41,
876                         0x4B, 0x40, 0x21, 0x4D, 0xAA, 0x80, 0x91, 0xD2,
877                         0xE0, 0xFB, 0x01, 0x0A, 0xE1, 0x5C, 0x6D, 0xE9,
878                         0x08, 0x50, 0x97, 0x3B, 0xDF, 0x1E, 0x42, 0x3B,
879                         0xE1, 0x48, 0xA2, 0x37, 0xB8, 0x7A, 0x0C, 0x9F,
880                         0x34, 0xD4, 0xB4, 0x76, 0x05, 0xB8, 0x03, 0xD7,
881                         0x43, 0xA8, 0x6A, 0x90, 0x39, 0x9A, 0x4A, 0xF3,
882                         0x96, 0xD3, 0xA1, 0x20, 0x0A, 0x62, 0xF3, 0xD9,
883                         0x50, 0x79, 0x62, 0xE8, 0xE5, 0xBE, 0xE6, 0xD3,
884                         0xDA, 0x2B, 0xB3, 0xF7, 0x23, 0x76, 0x64, 0xAC,
885                         0x7A, 0x29, 0x28, 0x23, 0x90, 0x0B, 0xC6, 0x35,
886                         0x03, 0xB2, 0x9E, 0x80, 0xD6, 0x3F, 0x60, 0x67,
887                         0xBF, 0x8E, 0x17, 0x16, 0xAC, 0x25, 0xBE, 0xBA,
888                         0x35, 0x0D, 0xEB, 0x62, 0xA9, 0x9F, 0xE0, 0x31,
889                         0x85, 0xEB, 0x4F, 0x69, 0x93, 0x7E, 0xCD, 0x38,
890                         0x79, 0x41, 0xFD, 0xA5, 0x44, 0xBA, 0x67, 0xDB,
891                         0x09, 0x11, 0x77, 0x49, 0x38, 0xB0, 0x18, 0x27,
892                         0xBC, 0xC6, 0x9C, 0x92, 0xB3, 0xF7, 0x72, 0xA9,
893                         0xD2, 0x85, 0x9E, 0xF0, 0x03, 0x39, 0x8B, 0x1F,
894                         0x6B, 0xBA, 0xD7, 0xB5, 0x74, 0xF7, 0x98, 0x9A,
895                         0x1D, 0x10, 0xB2, 0xDF, 0x79, 0x8E, 0x0D, 0xBF,
896                         0x30, 0xD6, 0x58, 0x74, 0x64, 0xD2, 0x48, 0x78,
897                         0xCD, 0x00, 0xC0, 0xEA, 0xEE, 0x8A, 0x1A, 0x0C,
898                         0xC7, 0x53, 0xA2, 0x79, 0x79, 0xE1, 0x1B, 0x41,
899                         0xDB, 0x1D, 0xE3, 0xD5, 0x03, 0x8A, 0xFA, 0xF4,
900                         0x9F, 0x5C, 0x68, 0x2C, 0x37, 0x48, 0xD8, 0xA3,
901                         0xA9, 0xEC, 0x54, 0xE6, 0xA3, 0x71, 0x27, 0x5F,
902                         0x16, 0x83, 0x51, 0x0F, 0x8E, 0x4F, 0x90, 0x93,
903                         0x8F, 0x9A, 0xB6, 0xE1, 0x34, 0xC2, 0xCF, 0xDF,
904                         0x48, 0x41, 0xCB, 0xA8, 0x8E, 0x0C, 0xFF, 0x2B,
905                         0x0B, 0xCC, 0x8E, 0x6A, 0xDC, 0xB7, 0x11, 0x09,
906                         0xB5, 0x19, 0x8F, 0xEC, 0xF1, 0xBB, 0x7E, 0x5C,
907                         0x53, 0x1A, 0xCA, 0x50, 0xA5, 0x6A, 0x8A, 0x3B,
908                         0x6D, 0xE5, 0x98, 0x62, 0xD4, 0x1F, 0xA1, 0x13,
909                         0xD9, 0xCD, 0x95, 0x78, 0x08, 0xF0, 0x85, 0x71,
910                         0xD9, 0xA4, 0xBB, 0x79, 0x2A, 0xF2, 0x71, 0xF6,
911                         0xCC, 0x6D, 0xBB, 0x8D, 0xC7, 0xEC, 0x36, 0xE3,
912                         0x6B, 0xE1, 0xED, 0x30, 0x81, 0x64, 0xC3, 0x1C,
913                         0x7C, 0x0A, 0xFC, 0x54, 0x1C
914                 },
915                 .len = 5672
916         },
917         .validAuthLenInBits = {
918                 .len = 5670
919         },
920         .digest = {
921                 .data = {0x0C, 0xA1, 0x27, 0x92},
922                 .len  = 4
923         }
924 };
925
926 static struct wireless_test_data zuc_test_case_auth_128b = {
927         .key = {
928                 .data = { 0x0 },
929                 .len = 16
930         },
931         .auth_iv = {
932                 .data = { 0x0 },
933                 .len = 16
934         },
935         .plaintext = {
936                 .data = { 0x0 },
937                 .len = 8
938         },
939         .validAuthLenInBits = {
940                 .len = 8
941         },
942         .digest = {
943                 .data = { 0x39, 0x0a, 0x91, 0xb7 },
944                 .len  = 4
945         }
946 };
947
948 static struct wireless_test_data zuc_test_case_auth_2080b = {
949         .key = {
950                 .data = {
951                         0xC8, 0xA4, 0x82, 0x62, 0xD0, 0xC2, 0xE2, 0xBA,
952                         0xC4, 0xB9, 0x6E, 0xF7, 0x7E, 0x80, 0xCA, 0x59
953                 },
954                 .len = 16
955         },
956         .auth_iv = {
957                 .data = {
958                         0x05, 0x09, 0x78, 0x50, 0x80, 0x00, 0x00, 0x00,
959                         0x85, 0x09, 0x78, 0x50, 0x80, 0x00, 0x80, 0x00
960                 },
961                 .len = 16
962         },
963         .plaintext = {
964                 .data = {
965                         0xB5, 0x46, 0x43, 0x0B, 0xF8, 0x7B, 0x4F, 0x1E,
966                         0xE8, 0x34, 0x70, 0x4C, 0xD6, 0x95, 0x1C, 0x36,
967                         0xE2, 0x6F, 0x10, 0x8C, 0xF7, 0x31, 0x78, 0x8F,
968                         0x48, 0xDC, 0x34, 0xF1, 0x67, 0x8C, 0x05, 0x22,
969                         0x1C, 0x8F, 0xA7, 0xFF, 0x2F, 0x39, 0xF4, 0x77,
970                         0xE7, 0xE4, 0x9E, 0xF6, 0x0A, 0x4E, 0xC2, 0xC3,
971                         0xDE, 0x24, 0x31, 0x2A, 0x96, 0xAA, 0x26, 0xE1,
972                         0xCF, 0xBA, 0x57, 0x56, 0x38, 0x38, 0xB2, 0x97,
973                         0xF4, 0x7E, 0x85, 0x10, 0xC7, 0x79, 0xFD, 0x66,
974                         0x54, 0xB1, 0x43, 0x38, 0x6F, 0xA6, 0x39, 0xD3,
975                         0x1E, 0xDB, 0xD6, 0xC0, 0x6E, 0x47, 0xD1, 0x59,
976                         0xD9, 0x43, 0x62, 0xF2, 0x6A, 0xEE, 0xED, 0xEE,
977                         0x0E, 0x4F, 0x49, 0xD9, 0xBF, 0x84, 0x12, 0x99,
978                         0x54, 0x15, 0xBF, 0xAD, 0x56, 0xEE, 0x82, 0xD1,
979                         0xCA, 0x74, 0x63, 0xAB, 0xF0, 0x85, 0xB0, 0x82,
980                         0xB0, 0x99, 0x04, 0xD6, 0xD9, 0x90, 0xD4, 0x3C,
981                         0xF2, 0xE0, 0x62, 0xF4, 0x08, 0x39, 0xD9, 0x32,
982                         0x48, 0xB1, 0xEB, 0x92, 0xCD, 0xFE, 0xD5, 0x30,
983                         0x0B, 0xC1, 0x48, 0x28, 0x04, 0x30, 0xB6, 0xD0,
984                         0xCA, 0xA0, 0x94, 0xB6, 0xEC, 0x89, 0x11, 0xAB,
985                         0x7D, 0xC3, 0x68, 0x24, 0xB8, 0x24, 0xDC, 0x0A,
986                         0xF6, 0x68, 0x2B, 0x09, 0x35, 0xFD, 0xE7, 0xB4,
987                         0x92, 0xA1, 0x4D, 0xC2, 0xF4, 0x36, 0x48, 0x03,
988                         0x8D, 0xA2, 0xCF, 0x79, 0x17, 0x0D, 0x2D, 0x50,
989                         0x13, 0x3F, 0xD4, 0x94, 0x16, 0xCB, 0x6E, 0x33,
990                         0xBE, 0xA9, 0x0B, 0x8B, 0xF4, 0x55, 0x9B, 0x03,
991                         0x73, 0x2A, 0x01, 0xEA, 0x29, 0x0E, 0x6D, 0x07,
992                         0x4F, 0x79, 0xBB, 0x83, 0xC1, 0x0E, 0x58, 0x00,
993                         0x15, 0xCC, 0x1A, 0x85, 0xB3, 0x6B, 0x55, 0x01,
994                         0x04, 0x6E, 0x9C, 0x4B, 0xDC, 0xAE, 0x51, 0x35,
995                         0x69, 0x0B, 0x86, 0x66, 0xBD, 0x54, 0xB7, 0xA7,
996                         0x03, 0xEA, 0x7B, 0x6F, 0x22, 0x0A, 0x54, 0x69,
997                         0xA5, 0x68, 0x02, 0x7E
998                 },
999                 .len = 2080
1000         },
1001         .validAuthLenInBits = {
1002                 .len = 2080
1003         },
1004         .digest = {
1005                 .data = {0x03, 0x95, 0x32, 0xe1},
1006                 .len  = 4
1007         }
1008 };
1009
1010 static struct wireless_test_data zuc_test_case_auth_584b = {
1011         .key = {
1012                 .data = {
1013                         0xc9, 0xe6, 0xce, 0xc4, 0x60, 0x7c, 0x72, 0xdb,
1014                         0x00, 0x0a, 0xef, 0xa8, 0x83, 0x85, 0xab, 0x0a
1015                 },
1016                 .len = 16
1017         },
1018         .auth_iv = {
1019                 .data = {
1020                         0xa9, 0x40, 0x59, 0xda, 0x50, 0x0, 0x0, 0x0,
1021                         0x29, 0x40, 0x59, 0xda, 0x50, 0x0, 0x80, 0x0
1022                 },
1023                 .len = 16
1024         },
1025         .plaintext = {
1026                 .data = {
1027                         0x98, 0x3b, 0x41, 0xd4, 0x7d, 0x78, 0x0c, 0x9e,
1028                         0x1a, 0xd1, 0x1d, 0x7e, 0xb7, 0x03, 0x91, 0xb1,
1029                         0xde, 0x0b, 0x35, 0xda, 0x2d, 0xc6, 0x2f, 0x83,
1030                         0xe7, 0xb7, 0x8d, 0x63, 0x06, 0xca, 0x0e, 0xa0,
1031                         0x7e, 0x94, 0x1b, 0x7b, 0xe9, 0x13, 0x48, 0xf9,
1032                         0xfc, 0xb1, 0x70, 0xe2, 0x21, 0x7f, 0xec, 0xd9,
1033                         0x7f, 0x9f, 0x68, 0xad, 0xb1, 0x6e, 0x5d, 0x7d,
1034                         0x21, 0xe5, 0x69, 0xd2, 0x80, 0xed, 0x77, 0x5c,
1035                         0xeb, 0xde, 0x3f, 0x40, 0x93, 0xc5, 0x38, 0x81,
1036                         0x00, 0x00, 0x00, 0x00
1037                 },
1038                 .len = 584
1039         },
1040         .validAuthLenInBits = {
1041                 .len = 584
1042         },
1043         .digest = {
1044                 .data = {0x24, 0xa8, 0x42, 0xb3},
1045                 .len  = 4
1046         }
1047 };
1048
1049 static struct wireless_test_data zuc_test_case_auth_4000b_mac_128b = {
1050         .key = {
1051                 .data = {
1052                         0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1053                         0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1054                         0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1055                         0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1056                 },
1057                 .len = 32
1058         },
1059         .auth_iv = {
1060                 .data = {
1061                         0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1062                         0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1063                         0xff, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
1064                         0x3f
1065                         },
1066                 .len = 25
1067         },
1068         .plaintext = {
1069                 .data = {
1070                         [0 ... 499] = 0x11,
1071                 },
1072                 .len = 4000
1073         },
1074         .validAuthLenInBits = {
1075                 .len = 4000
1076         },
1077         .digest = {
1078                 .data = {
1079                         0x3a, 0x83, 0xb5, 0x54, 0xbe, 0x40, 0x8c, 0xa5,
1080                         0x49, 0x41, 0x24, 0xed, 0x9d, 0x47, 0x32, 0x05
1081                 },
1082                 .len  = 16
1083         }
1084 };
1085
1086 static struct wireless_test_data zuc_test_case_auth_4000b_mac_64b = {
1087         .key = {
1088                 .data = {
1089                         0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1090                         0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1091                         0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1092                         0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1093                 },
1094                 .len = 32
1095         },
1096         .auth_iv = {
1097                 .data = {
1098                         0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1099                         0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1100                         0xff, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
1101                         0x3f
1102                         },
1103                 .len = 25
1104         },
1105         .plaintext = {
1106                 .data = {
1107                         [0 ... 499] = 0x11,
1108                 },
1109                 .len = 4000
1110         },
1111         .validAuthLenInBits = {
1112                 .len = 4000
1113         },
1114         .digest = {
1115                 .data = {
1116                         0xea, 0x1d, 0xee, 0x54, 0x4b, 0xb6, 0x22, 0x3b
1117                 },
1118                 .len  = 8
1119         }
1120 };
1121
1122 static struct wireless_test_data zuc_test_case_auth_4000b_mac_32b = {
1123         .key = {
1124                 .data = {
1125                         0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1126                         0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1127                         0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1128                         0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1129                 },
1130                 .len = 32
1131         },
1132         .auth_iv = {
1133                 .data = {
1134                         0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1135                         0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
1136                         0xff, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
1137                         0x3f
1138                         },
1139                 .len = 25
1140         },
1141         .plaintext = {
1142                 .data = {
1143                         [0 ... 499] = 0x11,
1144                 },
1145                 .len = 4000
1146         },
1147         .validAuthLenInBits = {
1148                 .len = 4000
1149         },
1150         .digest = {
1151                 .data = {
1152                         0x5c, 0x7c, 0x8b, 0x88
1153                 },
1154                 .len  = 4
1155         }
1156 };
1157
1158
1159 struct wireless_test_data zuc_auth_cipher_test_case_1 = {
1160         .key = {
1161                 .data = {
1162                         0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08,
1163                         0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, 0x10
1164                 },
1165                 .len = 16
1166         },
1167         .cipher_iv = {
1168                 .data = {
1169                         0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08,
1170                         0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
1171                 },
1172                 .len = 16
1173         },
1174         .auth_iv = {
1175                 .data = {
1176                         0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08,
1177                         0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
1178                 },
1179                 .len = 16
1180         },
1181         .plaintext = {
1182                 .data = {
1183                         0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A,
1184                         0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A,
1185                         0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A,
1186                         0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A,
1187                         0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A,
1188                         0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A,
1189                         0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A,
1190                         0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A,
1191                         0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A,
1192                         0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A,
1193                         0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A,
1194                         0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A,
1195                         0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A,
1196                         0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A,
1197                         0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A,
1198                         0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A
1199                 },
1200                 .len = 128 << 3
1201         },
1202         .ciphertext = {
1203                 .data = {
1204                         0x5A, 0x5A, 0xDB, 0x3D, 0xD5, 0xB7, 0xB9, 0x58,
1205                         0xA5, 0xD3, 0xE3, 0xF9, 0x18, 0x73, 0xB4, 0x74,
1206                         0x05, 0xF0, 0xE9, 0xB6, 0x5D, 0x9A, 0xE3, 0xFA,
1207                         0x5D, 0xFD, 0x24, 0x51, 0xAD, 0x73, 0xCA, 0x64,
1208                         0x91, 0xD5, 0xB3, 0x94, 0x10, 0x91, 0x89, 0xEA,
1209                         0x73, 0x6F, 0xB0, 0x2A, 0x0A, 0x63, 0x0F, 0x8D,
1210                         0x64, 0x87, 0xA3, 0x14, 0x6B, 0x93, 0x31, 0x0F,
1211                         0x14, 0xAD, 0xEA, 0x62, 0x80, 0x3F, 0x44, 0xDD,
1212                         0x4E, 0x30, 0xFA, 0xC8, 0x0E, 0x5F, 0x46, 0xE7,
1213                         0x60, 0xEC, 0xDF, 0x8B, 0x94, 0x7D, 0x2E, 0x63,
1214                         0x48, 0xD9, 0x69, 0x06, 0x13, 0xF2, 0x20, 0x49,
1215                         0x54, 0xA6, 0xD4, 0x98, 0xF4, 0xF6, 0x1D, 0x4A,
1216                         0xC9, 0xA5, 0xDA, 0x46, 0x3D, 0xD9, 0x02, 0x47,
1217                         0x1C, 0x20, 0x73, 0x35, 0x17, 0x1D, 0x81, 0x8D,
1218                         0x2E, 0xCD, 0x70, 0x37, 0x22, 0x55, 0x3C, 0xF3,
1219                         0xDA, 0x70, 0x42, 0x12, 0x0E, 0xAA, 0xC4, 0xAB
1220                 },
1221                 .len = 128 << 3
1222         },
1223         .validDataLenInBits = {
1224                 .len = 128 << 3
1225         },
1226         .validCipherLenInBits = {
1227                 .len = 126 << 3
1228         },
1229         .validAuthLenInBits = {
1230                 .len = 124 << 3
1231         },
1232         .validCipherOffsetInBits = {
1233                 .len = 2 << 3
1234         },
1235         .digest = {
1236                 .data = {0x0E, 0xAA, 0xC4, 0xAB},
1237                 .len  = 4,
1238                 .offset_bytes = 124
1239         }
1240 };
1241
1242 /** ZUC-256 vectors **/
1243 static struct wireless_test_data zuc256_test_case_cipher_1 = {
1244         .key = {
1245                 .data = {
1246                         0xf7, 0xb4, 0x04, 0x5a, 0x81, 0x5c, 0x1b, 0x01,
1247                         0x82, 0xf9, 0xf4, 0x26, 0x80, 0xd4, 0x56, 0x26,
1248                         0xd5, 0xf7, 0x4b, 0x68, 0x48, 0x6b, 0x92, 0x6a,
1249                         0x34, 0x1f, 0x86, 0x66, 0x60, 0x0a, 0xfc, 0x57
1250                 },
1251                 .len = 32
1252         },
1253         .cipher_iv = {
1254                 .data = {
1255                         0x8e, 0x5d, 0xbc, 0x3f, 0xb9, 0xae, 0x66, 0xa3,
1256                         0xb9, 0x5c, 0x12, 0x14, 0xdb, 0xc5, 0xbc, 0x18,
1257                         0x48, 0x12, 0x09, 0x06, 0x25, 0x33, 0x2e, 0x12,
1258                         0x12
1259                 },
1260                 .len = 25
1261         },
1262         .plaintext = {
1263                 .data = {
1264                         0x36, 0xdb, 0x63, 0x68, 0xb5, 0x1f, 0x4e, 0x92,
1265                         0x46, 0x1f, 0xde, 0xdb, 0xc2, 0xec, 0xfa, 0x7e,
1266                         0x49, 0x85, 0x77, 0xaa, 0x46, 0x98, 0x30, 0x2d,
1267                         0x3b, 0xc4, 0x11, 0x24, 0x98, 0x20, 0xa9, 0xce,
1268                         0xfb, 0x0d, 0x36, 0xb0, 0x2c, 0x85, 0x42, 0x72,
1269                         0xa4, 0x21, 0x4e, 0x66, 0x0d, 0x48, 0xe4, 0x57,
1270                         0xce, 0x5b, 0x01, 0x14, 0xf3, 0x31, 0x42, 0x2e,
1271                         0xf5, 0x53, 0x52, 0x8d, 0x73, 0xfc, 0x5c, 0x6e,
1272                         0x09, 0x92, 0x1e, 0x35, 0x17, 0x60, 0xa8, 0xbb,
1273                         0x81, 0xf6, 0x21, 0x8f, 0x3e, 0x05, 0xe6, 0x0c,
1274                         0x60, 0xe7, 0x21, 0x53, 0x18, 0x63, 0x81, 0x0d,
1275                         0xb6, 0xd4, 0x9a, 0x29, 0xd0, 0xf6, 0x97, 0xd9,
1276                         0x89, 0xb5, 0x0e, 0xa0, 0x15, 0xb6, 0x5c, 0x97,
1277                         0xac, 0x7d, 0x26, 0xeb, 0x83, 0x0c, 0xf7, 0xe3,
1278                         0xf3, 0x18, 0x37, 0x0b, 0x7b, 0xb8, 0x18, 0x31,
1279                         0x8c, 0xb2, 0x5a, 0x5c, 0xa9, 0xf1, 0x35, 0x32
1280                 },
1281                 .len = 1024
1282         },
1283         .ciphertext = {
1284                 .data = {
1285                         0xa6, 0xe5, 0x71, 0x58, 0x5c, 0xcf, 0x5d, 0x0d,
1286                         0x59, 0xb5, 0x51, 0xab, 0xf5, 0xfa, 0x31, 0xf9,
1287                         0x8d, 0x4f, 0xf0, 0x3c, 0x7d, 0x61, 0x8d, 0x7a,
1288                         0x6b, 0xcb, 0x2c, 0x79, 0xca, 0x99, 0x06, 0x6f,
1289                         0xff, 0x5d, 0x12, 0x5f, 0x0e, 0x7a, 0x33, 0x6b,
1290                         0x51, 0xbc, 0x58, 0x53, 0xff, 0xbd, 0x85, 0xc9,
1291                         0xac, 0x5f, 0x33, 0xc2, 0xa2, 0xf1, 0x17, 0x7a,
1292                         0xd9, 0x3f, 0x81, 0x82, 0x2f, 0x0a, 0xb0, 0xaf,
1293                         0xb9, 0x19, 0x3b, 0xfa, 0xcd, 0xa4, 0x06, 0x81,
1294                         0x2a, 0x7a, 0xbf, 0x2c, 0x07, 0xde, 0xc1, 0xa4,
1295                         0x8c, 0x15, 0x85, 0x81, 0xa6, 0xd3, 0x73, 0x1c,
1296                         0x29, 0x0b, 0xee, 0x3c, 0x57, 0xfa, 0x82, 0xad,
1297                         0x6f, 0xe0, 0xa1, 0x54, 0x8d, 0xa4, 0x92, 0x29,
1298                         0xf4, 0xfa, 0x6d, 0x01, 0xe3, 0x6c, 0xb9, 0x76,
1299                         0x80, 0x53, 0xbb, 0x27, 0xb8, 0x18, 0x47, 0x6c,
1300                         0xae, 0xb5, 0x44, 0x60, 0x43, 0x9d, 0xa7, 0x3f
1301                 },
1302                 .len = 1024
1303         },
1304         .validDataLenInBits = {
1305                 .len = 1024
1306         },
1307         .validCipherLenInBits = {
1308                 .len = 1024
1309         }
1310 };
1311
1312 static struct wireless_test_data zuc256_test_case_cipher_2 = {
1313         .key = {
1314                 .data = {
1315                         0x1d, 0x0f, 0x0e, 0x75, 0x86, 0xb3, 0xfc, 0x65,
1316                         0x94, 0xbf, 0xaa, 0xa8, 0xf5, 0xd0, 0x0f, 0xe8,
1317                         0x14, 0x7a, 0x96, 0x61, 0x15, 0x49, 0x79, 0x71,
1318                         0x13, 0x82, 0xb4, 0xae, 0x34, 0x04, 0x75, 0x51
1319                 },
1320                 .len = 32
1321         },
1322         .cipher_iv = {
1323                 .data = {
1324                         0x98, 0xcc, 0x89, 0x9f, 0xaf, 0x6d, 0x64, 0xb6,
1325                         0xb1, 0xe8, 0x21, 0x72, 0xee, 0xb6, 0xcc, 0xe3,
1326                         0xcf, 0x32, 0x28, 0x21, 0x21, 0x0d, 0x1e, 0x1c,
1327                         0x34
1328                 },
1329                 .len = 25
1330         },
1331         .plaintext = {
1332                 .data = {
1333                         0xa4, 0xcb, 0x6e, 0x76, 0x99, 0xfb, 0x0c, 0xab,
1334                         0x6d, 0x57, 0xb1, 0x69, 0xc0, 0x47, 0x80, 0x63,
1335                         0x00, 0xe1, 0xf9, 0x51, 0x10, 0xbe, 0xc0, 0x0f,
1336                         0x99, 0x62, 0x2d, 0x71, 0xca, 0x75, 0xa0, 0x6e,
1337                         0x41, 0x0e, 0xe4, 0xda, 0x09, 0xf1, 0x86, 0x76,
1338                         0x48, 0x37, 0xe0, 0x08, 0x7e, 0x60, 0x6c, 0x7f,
1339                         0x41, 0x65, 0xd0, 0x51, 0x24, 0x91, 0x61, 0xbd,
1340                         0xf3, 0x8e, 0x2e, 0xbd, 0x04, 0xce, 0x2b, 0x45,
1341                         0xdc, 0x0f, 0x1f, 0xe5, 0x00, 0xa5, 0x5c, 0x48,
1342                         0xdd, 0x3c, 0x51, 0x5b, 0x9c, 0xbd, 0xda, 0xde,
1343                         0x22, 0xab, 0x2f, 0x46, 0x3c, 0x90, 0x03, 0x2f,
1344                         0x1f, 0x31, 0xec, 0x23, 0xff, 0x17, 0x68, 0xdb,
1345                         0x26, 0x87, 0xc1, 0x27, 0x2d, 0x1d, 0x6f, 0x0a,
1346                         0x59, 0xc0, 0x65, 0xf5, 0x7d, 0x40, 0xd3, 0xa0,
1347                         0xeb, 0x03, 0xe6, 0x27, 0x93, 0xea, 0x56, 0xb2,
1348                         0x1b, 0x42, 0xd5, 0x1b, 0x59, 0x3d, 0xf6, 0x7f,
1349                         0xc5, 0xb7, 0xa6, 0xf2, 0xd4, 0x16, 0xfc, 0x2d,
1350                         0xd6, 0x61, 0x23, 0x54, 0xa1, 0xf6, 0xf4, 0x8c,
1351                         0xf9, 0xda, 0xb3, 0x8d, 0xc4, 0x09, 0x3f, 0xe0,
1352                         0x4b, 0x15, 0xfb, 0xa4, 0x52, 0xf1, 0x24, 0x17,
1353                         0xa9, 0xca, 0x09, 0x7d, 0xe0, 0x05, 0xab, 0xb7,
1354                         0x67, 0xce, 0x0b, 0x08, 0xc4, 0xff, 0x95, 0xbe,
1355                         0xd9, 0x48, 0x4b, 0x9e, 0x52, 0x8a, 0x7e, 0x9d,
1356                         0x9f, 0x79, 0x42, 0xf2, 0x6a, 0x66, 0x09, 0x13,
1357                         0x30, 0x13, 0x91, 0x11, 0x18, 0x3c, 0xc8, 0x7f,
1358                         0x0a, 0xd3, 0x88, 0xce, 0xd2, 0x1d, 0x8c, 0xab,
1359                         0x65, 0xd7, 0x49, 0xb7, 0x62, 0xc7, 0x55, 0x01,
1360                         0x40, 0x97, 0xf3, 0xab, 0xfd, 0xfd, 0xbe, 0x2d,
1361                         0x10, 0x4f, 0x3e, 0x28, 0x8b, 0x06, 0xa8, 0x95,
1362                         0xd9, 0x30, 0x64, 0xab, 0x4d, 0xf0, 0x57, 0xb2,
1363                         0xc8
1364                 },
1365                 .len = 1928
1366         },
1367         .ciphertext = {
1368                 .data = {
1369                         0xd0, 0xf9, 0xff, 0xce, 0x03, 0x81, 0x14, 0x9c,
1370                         0xd5, 0xf2, 0xbf, 0xe5, 0xff, 0xc8, 0x15, 0x4a,
1371                         0x9c, 0x06, 0x2b, 0x17, 0x99, 0xe3, 0x48, 0x70,
1372                         0x37, 0x01, 0x5e, 0x24, 0x80, 0x9a, 0x46, 0x4e,
1373                         0xa8, 0xc0, 0x59, 0xd7, 0x03, 0x74, 0x28, 0x91,
1374                         0x79, 0xb4, 0xb5, 0xd6, 0x52, 0x92, 0x04, 0x77,
1375                         0x5b, 0x4f, 0x34, 0xd1, 0xbe, 0xaa, 0x74, 0xd9,
1376                         0x01, 0x40, 0x24, 0xc7, 0x8c, 0x62, 0x2a, 0x51,
1377                         0x5a, 0x58, 0x0e, 0xc8, 0x70, 0x12, 0x06, 0x1c,
1378                         0x62, 0x7f, 0xf5, 0x23, 0xcb, 0x3c, 0xc1, 0xbe,
1379                         0x8b, 0x7f, 0x9d, 0x12, 0xb8, 0x26, 0xc8, 0xa3,
1380                         0x77, 0x7e, 0x83, 0xda, 0x83, 0xe1, 0x9f, 0xef,
1381                         0x33, 0x62, 0x17, 0xa7, 0x74, 0x68, 0x34, 0x5e,
1382                         0x16, 0xcc, 0xbc, 0x6c, 0x33, 0x2f, 0x73, 0xf0,
1383                         0xfc, 0xe5, 0x2c, 0x2d, 0xfb, 0x81, 0xbe, 0x1e,
1384                         0x6e, 0x4f, 0xf4, 0x14, 0x37, 0x7c, 0x97, 0xac,
1385                         0xa9, 0xac, 0x68, 0x95, 0xf3, 0x55, 0xb3, 0xfb,
1386                         0xf6, 0x64, 0xd9, 0x1b, 0xe1, 0x54, 0x79, 0x6e,
1387                         0xfa, 0x21, 0xa4, 0x19, 0x9f, 0xb4, 0x4b, 0xb7,
1388                         0xef, 0x52, 0xd8, 0x44, 0x75, 0x99, 0x07, 0x6d,
1389                         0xa9, 0xcf, 0x32, 0xc5, 0xc1, 0x31, 0x0c, 0xa8,
1390                         0x86, 0x40, 0x75, 0xeb, 0x12, 0xcf, 0x26, 0x5c,
1391                         0x5f, 0xa3, 0x3c, 0xb6, 0x12, 0x45, 0xf3, 0x0a,
1392                         0x38, 0x09, 0xa8, 0x36, 0x32, 0x4a, 0x2f, 0xad,
1393                         0x50, 0x11, 0x38, 0xba, 0x8f, 0xdd, 0xd1, 0x58,
1394                         0xd7, 0x3d, 0x3a, 0x40, 0x7c, 0x3f, 0xa7, 0x98,
1395                         0xf3, 0x12, 0x7f, 0x9f, 0x89, 0xcf, 0x48, 0x58,
1396                         0x01, 0xeb, 0x98, 0x7c, 0x59, 0x11, 0x9f, 0x57,
1397                         0x74, 0x5f, 0x70, 0x72, 0x74, 0xa4, 0x82, 0x3c,
1398                         0x36, 0xe6, 0x31, 0x9e, 0xba, 0x7b, 0x53, 0xfc,
1399                         0x56
1400                 },
1401                 .len = 1928
1402         },
1403         .validDataLenInBits = {
1404                 .len = 1928
1405         },
1406         .validCipherLenInBits = {
1407                 .len = 1928
1408         }
1409 };
1410
1411 static struct wireless_test_data zuc256_test_case_auth_1 = {
1412         .key = {
1413                 .data = {
1414                         0xe3, 0x8e, 0xaf, 0x08, 0xde, 0x8c, 0x08, 0x41,
1415                         0x7f, 0x2b, 0x97, 0x20, 0x10, 0x87, 0xc7, 0xf7,
1416                         0xbe, 0x3c, 0xd2, 0x68, 0x80, 0x10, 0x1e, 0x71,
1417                         0xfd, 0xb2, 0xbb, 0xad, 0x25, 0x0f, 0x06, 0x08
1418                 },
1419                 .len = 32
1420         },
1421         .auth_iv = {
1422                 .data = {
1423                         0xf5, 0x8d, 0x08, 0x26, 0x94, 0x14, 0xc7, 0x4d,
1424                         0xf5, 0x7c, 0x9c, 0xaa, 0x45, 0x53, 0xfd, 0x85,
1425                         0x23, 0x0b, 0x00, 0x0e, 0x26, 0x2b, 0x0f, 0x01,
1426                         0x26
1427                 },
1428                 .len = 25
1429         },
1430         .plaintext = {
1431                 .data = {
1432                         0x08, 0xba, 0x8d, 0xf1, 0xf8, 0x62, 0xa6, 0xaf,
1433                         0xf9, 0x03, 0x88, 0x9c, 0xa3, 0x68, 0x6b, 0x87,
1434                         0xb6, 0x92, 0xd1, 0x47, 0x3e, 0x54, 0xaf, 0x46,
1435                         0x07, 0x8f, 0x89, 0xea, 0x26, 0x9d, 0x0e, 0x2f,
1436                         0x57, 0x9b, 0x20, 0x4f, 0xfe, 0xc7, 0xfe, 0xf7,
1437                         0xca, 0x86, 0x93, 0x6d, 0xee
1438                 },
1439                 .len = 360
1440         },
1441         .validAuthLenInBits = {
1442                 .len = 360
1443         },
1444         .digest = {
1445                 .data = { 0x58, 0x19, 0xab, 0xa5 },
1446                 .len  = 4
1447         }
1448 };
1449
1450 static struct wireless_test_data zuc256_test_case_auth_2 = {
1451         .key = {
1452                 .data = {
1453                         0x6a, 0x7e, 0x4c, 0x7e, 0x51, 0x25, 0xb3, 0x48,
1454                         0x84, 0x53, 0x3a, 0x94, 0xfb, 0x31, 0x99, 0x90,
1455                         0x32, 0x57, 0x44, 0xee, 0x9b, 0xbc, 0xe9, 0xe5,
1456                         0x25, 0xcf, 0x08, 0xf5, 0xe9, 0xe2, 0x5e, 0x53
1457                 },
1458                 .len = 32
1459         },
1460         .auth_iv = {
1461                 .data = {
1462                         0x60, 0xaa, 0xd2, 0xb2, 0xd0, 0x85, 0xfa, 0x54,
1463                         0xd8, 0x35, 0xe8, 0xd4, 0x66, 0x82, 0x64, 0x98,
1464                         0xd9, 0x2a, 0x08, 0x1d, 0x35, 0x19, 0x17, 0x01,
1465                         0x1A
1466                 },
1467                 .len = 25
1468         },
1469         .plaintext = {
1470                 .data = {
1471                         0xc6, 0x69, 0x73, 0x51, 0xff, 0x4a, 0xec, 0x29,
1472                         0xcd, 0xba, 0xab, 0xf2, 0xfb, 0xe3, 0x46, 0x7c,
1473                         0xc2, 0x54, 0xf8, 0x1b, 0xe8, 0xe7, 0x8d, 0x76,
1474                         0x5a, 0x2e, 0x63, 0x33, 0x9f, 0xc9, 0x9a, 0x66,
1475                         0x32, 0x0d, 0xb7, 0x31, 0x58, 0xa3, 0x5a, 0x25,
1476                         0x5d, 0x05, 0x17, 0x58, 0xe9, 0x5e, 0xd4, 0xab,
1477                         0xb2, 0xcd, 0xc6, 0x9b, 0xb4, 0x54, 0x11, 0x0e,
1478                         0x82, 0x74, 0x41, 0x21, 0x3d, 0xdc, 0x87, 0x70,
1479                         0xe9, 0x3e, 0xa1, 0x41, 0xe1, 0xfc, 0x67, 0x3e,
1480                         0x01, 0x7e, 0x97, 0xea, 0xdc, 0x6b, 0x96, 0x8f,
1481                         0x38, 0x5c, 0x2a, 0xec, 0xb0, 0x3b, 0xfb, 0x32,
1482                         0xaf, 0x3c, 0x54, 0xec, 0x18, 0xdb, 0x5c, 0x02,
1483                         0x1a, 0xfe, 0x43, 0xfb, 0xfa, 0xaa, 0x3a, 0xfb,
1484                         0x29, 0xd1, 0xe6, 0x05, 0x3c, 0x7c, 0x94, 0x75,
1485                         0xd8, 0xbe, 0x61, 0x89, 0xf9, 0x5c, 0xbb, 0xa8,
1486                         0x99, 0x0f, 0x95, 0xb1, 0xeb, 0xf1, 0xb3, 0x05,
1487                         0xef, 0xf7, 0x00, 0xe9, 0xa1, 0x3a, 0xe5, 0xca,
1488                         0x0b, 0xcb, 0xd0, 0x48, 0x47, 0x64, 0xbd, 0x1f,
1489                         0x23, 0x1e, 0xa8, 0x1c, 0x7b, 0x64, 0xc5, 0x14,
1490                         0x73, 0x5a, 0xc5, 0x5e, 0x4b, 0x79, 0x63, 0x3b,
1491                         0x70, 0x64, 0x24, 0x11, 0x9e, 0x09, 0xdc, 0xaa,
1492                         0xd4, 0xac, 0xf2, 0x1b, 0x10, 0xaf, 0x3b, 0x33,
1493                         0xcd, 0xe3, 0x50, 0x48, 0x47, 0x15, 0x5c, 0xbb,
1494                         0x6f, 0x22, 0x19, 0xba, 0x9b, 0x7d, 0xf5, 0x0b,
1495                         0xe1, 0x1a, 0x1c, 0x7f, 0x23, 0xf8, 0x29, 0xf8,
1496                         0xa4, 0x1b, 0x13, 0xb5, 0xca, 0x4e, 0xe8, 0x98,
1497                         0x32, 0x38, 0xe0, 0x79, 0x4d, 0x3d, 0x34, 0xbc,
1498                         0x5f, 0x4e, 0x77, 0xfa, 0xcb, 0x6c, 0x05, 0xac,
1499                         0x86, 0x21, 0x2b, 0xaa, 0x1a, 0x55, 0xa2, 0xbe,
1500                         0x70, 0xb5, 0x73, 0x3b, 0x04, 0x5c, 0xd3, 0x36,
1501                         0x94, 0xb3, 0xaf, 0xe2, 0xf0, 0xe4, 0x9e, 0x4f,
1502                         0x32, 0x15, 0x49, 0xfd, 0x82, 0x4e, 0xa9, 0x08,
1503                         0x70, 0xd4, 0xb2, 0x8a, 0x29, 0x54, 0x48, 0x9a,
1504                         0x0a, 0xbc, 0xd5, 0x0e, 0x18, 0xa8, 0x44, 0xac,
1505                         0x5b, 0xf3, 0x8e, 0x4c, 0xd7, 0x2d, 0x9b, 0x09,
1506                         0x42, 0xe5, 0x06, 0xc4, 0x33, 0xaf, 0xcd, 0xa3,
1507                         0x84, 0x7f, 0x2d, 0xad, 0xd4, 0x76, 0x47, 0xde,
1508                         0x32, 0x1c, 0xec, 0x4a, 0xc4, 0x30, 0xf6, 0x20,
1509                         0x23, 0x85, 0x6c, 0xfb, 0xb2, 0x07, 0x04, 0xf4,
1510                         0xec, 0x0b, 0xb9, 0x20, 0xba, 0x86, 0xc3, 0x3e,
1511                         0x05, 0xf1, 0xec, 0xd9, 0x67, 0x33, 0xb7, 0x99,
1512                         0x50, 0xa3, 0xe3, 0x14, 0xd3, 0xd9, 0x34, 0xf7,
1513                         0x5e, 0xa0, 0xf2, 0x10, 0xa8, 0xf6, 0x05, 0x94,
1514                         0x01, 0xbe, 0xb4, 0xbc, 0x44, 0x78, 0xfa, 0x49,
1515                         0x69, 0xe6, 0x23, 0xd0, 0x1a, 0xda, 0x69
1516                 },
1517                 .len = 2872
1518         },
1519         .validAuthLenInBits = {
1520                 .len = 2872
1521         },
1522         .digest = {
1523                 .data = { 0xd1, 0x1e, 0x33, 0xf6 },
1524                 .len  = 4
1525         }
1526 };
1527
1528 #endif /* TEST_CRYPTODEV_ZUC_TEST_VECTORS_H_ */