test mbuf attach
[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 struct wireless_test_data zuc_auth_cipher_test_case_1 = {
1050         .key = {
1051                 .data = {
1052                         0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08,
1053                         0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, 0x10
1054                 },
1055                 .len = 16
1056         },
1057         .cipher_iv = {
1058                 .data = {
1059                         0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08,
1060                         0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
1061                 },
1062                 .len = 16
1063         },
1064         .auth_iv = {
1065                 .data = {
1066                         0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08,
1067                         0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
1068                 },
1069                 .len = 16
1070         },
1071         .plaintext = {
1072                 .data = {
1073                         0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A,
1074                         0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A,
1075                         0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A,
1076                         0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A,
1077                         0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A,
1078                         0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A,
1079                         0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A,
1080                         0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A,
1081                         0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A,
1082                         0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A,
1083                         0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A,
1084                         0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A,
1085                         0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A,
1086                         0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A,
1087                         0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A,
1088                         0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A
1089                 },
1090                 .len = 128 << 3
1091         },
1092         .ciphertext = {
1093                 .data = {
1094                         0x5A, 0x5A, 0xDB, 0x3D, 0xD5, 0xB7, 0xB9, 0x58,
1095                         0xA5, 0xD3, 0xE3, 0xF9, 0x18, 0x73, 0xB4, 0x74,
1096                         0x05, 0xF0, 0xE9, 0xB6, 0x5D, 0x9A, 0xE3, 0xFA,
1097                         0x5D, 0xFD, 0x24, 0x51, 0xAD, 0x73, 0xCA, 0x64,
1098                         0x91, 0xD5, 0xB3, 0x94, 0x10, 0x91, 0x89, 0xEA,
1099                         0x73, 0x6F, 0xB0, 0x2A, 0x0A, 0x63, 0x0F, 0x8D,
1100                         0x64, 0x87, 0xA3, 0x14, 0x6B, 0x93, 0x31, 0x0F,
1101                         0x14, 0xAD, 0xEA, 0x62, 0x80, 0x3F, 0x44, 0xDD,
1102                         0x4E, 0x30, 0xFA, 0xC8, 0x0E, 0x5F, 0x46, 0xE7,
1103                         0x60, 0xEC, 0xDF, 0x8B, 0x94, 0x7D, 0x2E, 0x63,
1104                         0x48, 0xD9, 0x69, 0x06, 0x13, 0xF2, 0x20, 0x49,
1105                         0x54, 0xA6, 0xD4, 0x98, 0xF4, 0xF6, 0x1D, 0x4A,
1106                         0xC9, 0xA5, 0xDA, 0x46, 0x3D, 0xD9, 0x02, 0x47,
1107                         0x1C, 0x20, 0x73, 0x35, 0x17, 0x1D, 0x81, 0x8D,
1108                         0x2E, 0xCD, 0x70, 0x37, 0x22, 0x55, 0x3C, 0xF3,
1109                         0xDA, 0x70, 0x42, 0x12, 0x0E, 0xAA, 0xC4, 0xAB
1110                 },
1111                 .len = 128 << 3
1112         },
1113         .validDataLenInBits = {
1114                 .len = 128 << 3
1115         },
1116         .validCipherLenInBits = {
1117                 .len = 126 << 3
1118         },
1119         .validAuthLenInBits = {
1120                 .len = 124 << 3
1121         },
1122         .validCipherOffsetInBits = {
1123                 .len = 2 << 3
1124         },
1125         .digest = {
1126                 .data = {0x0E, 0xAA, 0xC4, 0xAB},
1127                 .len  = 4,
1128                 .offset_bytes = 124
1129         }
1130 };
1131
1132 #endif /* TEST_CRYPTODEV_ZUC_TEST_VECTORS_H_ */