Branch data Line data Source code
1 : : /* SPDX-License-Identifier: BSD-3-Clause
2 : : *
3 : : * Copyright (C) 2015-2016 Freescale Semiconductor,Inc.
4 : : * Copyright 2018-2019 NXP
5 : : */
6 : :
7 : : #include <time.h>
8 : :
9 : : #include <rte_common.h>
10 : : #include <rte_hexdump.h>
11 : : #include <rte_mbuf.h>
12 : : #include <rte_malloc.h>
13 : : #include <rte_memcpy.h>
14 : : #include <rte_pause.h>
15 : : #include <rte_bus_vdev.h>
16 : : #include <rte_byteorder.h>
17 : :
18 : : #include <rte_crypto.h>
19 : : #include <rte_cryptodev.h>
20 : : #include <rte_security.h>
21 : :
22 : : #include <rte_lcore.h>
23 : : #include "test.h"
24 : : #include "test_cryptodev_security_pdcp_test_func.h"
25 : :
26 : : static int cplane_encap(uint32_t sn_size, uint8_t dir,
27 : : enum enc_alg_off enc_alg_off,
28 : : enum auth_alg_off auth_alg_off)
29 : : {
30 : : int i = 0;
31 : :
32 : : switch (sn_size) {
33 : : case 5:
34 : : i = PDCP_CPLANE_OFFSET + enc_alg_off +
35 : : auth_alg_off + ((dir == 0) ?
36 : : UPLINK : DOWNLINK);
37 : : break;
38 : : case 12:
39 : : i = PDCP_CPLANE_LONG_SN_OFFSET + enc_alg_off +
40 : : auth_alg_off + ((dir == 0) ?
41 : : UPLINK : DOWNLINK);
42 : : break;
43 : : default:
44 : : printf("\nInvalid SN: %u for %s\n", sn_size, __func__);
45 : : }
46 : :
47 : 0 : return test_pdcp_proto_cplane_encap(i);
48 : : }
49 : :
50 : : static int
51 : : cplane_decap(uint32_t sn_size, uint8_t dir,
52 : : enum enc_alg_off enc_alg_off,
53 : : enum auth_alg_off auth_alg_off)
54 : : {
55 : : int i = 0;
56 : :
57 : : switch (sn_size) {
58 : : case 5:
59 : : i = PDCP_CPLANE_OFFSET + enc_alg_off +
60 : : auth_alg_off + ((dir == 0) ?
61 : : UPLINK : DOWNLINK);
62 : : break;
63 : : case 12:
64 : : i = PDCP_CPLANE_LONG_SN_OFFSET + enc_alg_off +
65 : : auth_alg_off + ((dir == 0) ?
66 : : UPLINK : DOWNLINK);
67 : : break;
68 : : default:
69 : : printf("\nInvalid SN: %u for %s\n", sn_size, __func__);
70 : : }
71 : :
72 : 0 : return test_pdcp_proto_cplane_decap(i);
73 : : }
74 : :
75 : : static int uplane_encap_no_integrity(uint32_t sn_size, uint8_t dir,
76 : : enum enc_alg_off enc_alg_off)
77 : : {
78 : : int i = PDCP_UPLANE_OFFSET + ((dir == 0) ? UPLINK : DOWNLINK) +
79 : : enc_alg_off;
80 : :
81 : : switch (sn_size) {
82 : : case 7:
83 : : i += SHORT_SEQ_NUM_OFFSET;
84 : : break;
85 : : case 15:
86 : : i += FIFTEEN_BIT_SEQ_NUM_OFFSET;
87 : : break;
88 : : case 12:
89 : : i += LONG_SEQ_NUM_OFFSET;
90 : : break;
91 : : case 18:
92 : : i += EIGHTEEN_BIT_SEQ_NUM_OFFSET;
93 : : break;
94 : : default:
95 : : printf("\nInvalid SN: %u\n", sn_size);
96 : : }
97 : :
98 : 0 : return test_pdcp_proto_uplane_encap(i);
99 : : }
100 : :
101 : : static int
102 : : uplane_decap_no_integrity(uint32_t sn_size, uint8_t dir,
103 : : enum enc_alg_off enc_alg_off)
104 : : {
105 : : int i = PDCP_UPLANE_OFFSET + ((dir == 0) ? UPLINK : DOWNLINK) +
106 : : enc_alg_off;
107 : :
108 : : switch (sn_size) {
109 : : case 7:
110 : : i += SHORT_SEQ_NUM_OFFSET;
111 : : break;
112 : : case 15:
113 : : i += FIFTEEN_BIT_SEQ_NUM_OFFSET;
114 : : break;
115 : : case 12:
116 : : i += LONG_SEQ_NUM_OFFSET;
117 : : break;
118 : : case 18:
119 : : i += EIGHTEEN_BIT_SEQ_NUM_OFFSET;
120 : : break;
121 : : default:
122 : : printf("\nInvalid SN: %u\n", sn_size);
123 : : }
124 : :
125 : 0 : return test_pdcp_proto_uplane_decap(i);
126 : : }
127 : :
128 : : static int
129 : : uplane_encap_with_integrity(uint32_t sn_size, uint8_t dir,
130 : : enum enc_alg_off enc_alg_off,
131 : : enum auth_alg_off auth_alg_off)
132 : : {
133 : : int i = 0;
134 : :
135 : : switch (sn_size) {
136 : : case 12:
137 : : i = PDCP_UPLANE_12BIT_OFFSET + enc_alg_off +
138 : : auth_alg_off + ((dir == 0) ?
139 : : UPLINK : DOWNLINK);
140 : : break;
141 : : case 18:
142 : : i = PDCP_UPLANE_18BIT_OFFSET + enc_alg_off +
143 : : auth_alg_off + ((dir == 0) ?
144 : : UPLINK : DOWNLINK);
145 : : break;
146 : : default:
147 : : printf("\nInvalid SN: %u\n", sn_size);
148 : : }
149 : :
150 : 0 : return test_pdcp_proto_uplane_encap_with_int(i);
151 : : }
152 : :
153 : : static int
154 : : uplane_decap_with_integrity(uint32_t sn_size, uint8_t dir,
155 : : enum enc_alg_off enc_alg_off,
156 : : enum auth_alg_off auth_alg_off)
157 : : {
158 : : int i = 0;
159 : :
160 : : switch (sn_size) {
161 : : case 12:
162 : : i = PDCP_UPLANE_12BIT_OFFSET + enc_alg_off +
163 : : auth_alg_off + ((dir == 0) ?
164 : : UPLINK : DOWNLINK);
165 : : break;
166 : : case 18:
167 : : i = PDCP_UPLANE_18BIT_OFFSET + enc_alg_off +
168 : : auth_alg_off + ((dir == 0) ?
169 : : UPLINK : DOWNLINK);
170 : : break;
171 : : default:
172 : : printf("\nInvalid SN: %u\n", sn_size);
173 : : }
174 : :
175 : 0 : return test_pdcp_proto_uplane_decap_with_int(i);
176 : : }
177 : :
178 : : #define TEST_PDCP_COUNT(func) do { \
179 : : if (func == TEST_SUCCESS) { \
180 : : printf("\t%d)", n++); \
181 : : printf(#func"-PASS\n"); \
182 : : i++; \
183 : : } else { \
184 : : printf("\t%d)", n++); \
185 : : printf("+++++ FAILED:" #func"\n"); \
186 : : } \
187 : : } while (0)
188 : :
189 : : int
190 : 0 : test_PDCP_PROTO_cplane_encap_all(void)
191 : : {
192 : : int i = 0, n = 0;
193 : :
194 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(5, UPLINK, NULL_ENC, NULL_AUTH));
195 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(5, DOWNLINK, NULL_ENC, NULL_AUTH));
196 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(5, UPLINK, NULL_ENC, SNOW_AUTH));
197 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(5, DOWNLINK, NULL_ENC, SNOW_AUTH));
198 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(5, UPLINK, NULL_ENC, AES_AUTH));
199 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(5, DOWNLINK, NULL_ENC, AES_AUTH));
200 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(5, UPLINK, NULL_ENC, ZUC_AUTH));
201 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(5, DOWNLINK, NULL_ENC, ZUC_AUTH));
202 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(5, UPLINK, SNOW_ENC, NULL_AUTH));
203 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(5, DOWNLINK, SNOW_ENC, NULL_AUTH));
204 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(5, UPLINK, SNOW_ENC, SNOW_AUTH));
205 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(5, DOWNLINK, SNOW_ENC, SNOW_AUTH));
206 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(5, UPLINK, SNOW_ENC, AES_AUTH));
207 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(5, DOWNLINK, SNOW_ENC, AES_AUTH));
208 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(5, UPLINK, SNOW_ENC, ZUC_AUTH));
209 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(5, DOWNLINK, SNOW_ENC, ZUC_AUTH));
210 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(5, UPLINK, AES_ENC, NULL_AUTH));
211 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(5, DOWNLINK, AES_ENC, NULL_AUTH));
212 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(5, UPLINK, AES_ENC, SNOW_AUTH));
213 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(5, DOWNLINK, AES_ENC, SNOW_AUTH));
214 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(5, UPLINK, AES_ENC, AES_AUTH));
215 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(5, DOWNLINK, AES_ENC, AES_AUTH));
216 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(5, UPLINK, AES_ENC, ZUC_AUTH));
217 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(5, DOWNLINK, AES_ENC, ZUC_AUTH));
218 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(5, UPLINK, ZUC_ENC, NULL_AUTH));
219 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(5, DOWNLINK, ZUC_ENC, NULL_AUTH));
220 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(5, UPLINK, ZUC_ENC, SNOW_AUTH));
221 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(5, DOWNLINK, ZUC_ENC, SNOW_AUTH));
222 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(5, UPLINK, ZUC_ENC, AES_AUTH));
223 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(5, DOWNLINK, ZUC_ENC, AES_AUTH));
224 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(5, UPLINK, ZUC_ENC, ZUC_AUTH));
225 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(5, DOWNLINK, ZUC_ENC, ZUC_AUTH));
226 : :
227 : : /* For 12-bit SN */
228 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(12, UPLINK, NULL_ENC, NULL_AUTH));
229 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(12, DOWNLINK, NULL_ENC, NULL_AUTH));
230 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(12, UPLINK, NULL_ENC, SNOW_AUTH));
231 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(12, DOWNLINK, NULL_ENC, SNOW_AUTH));
232 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(12, UPLINK, NULL_ENC, AES_AUTH));
233 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(12, DOWNLINK, NULL_ENC, AES_AUTH));
234 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(12, UPLINK, NULL_ENC, ZUC_AUTH));
235 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(12, DOWNLINK, NULL_ENC, ZUC_AUTH));
236 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(12, UPLINK, SNOW_ENC, NULL_AUTH));
237 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(12, DOWNLINK, SNOW_ENC, NULL_AUTH));
238 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(12, UPLINK, SNOW_ENC, SNOW_AUTH));
239 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(12, DOWNLINK, SNOW_ENC, SNOW_AUTH));
240 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(12, UPLINK, SNOW_ENC, AES_AUTH));
241 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(12, DOWNLINK, SNOW_ENC, AES_AUTH));
242 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(12, UPLINK, SNOW_ENC, ZUC_AUTH));
243 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(12, DOWNLINK, SNOW_ENC, ZUC_AUTH));
244 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(12, UPLINK, AES_ENC, NULL_AUTH));
245 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(12, DOWNLINK, AES_ENC, NULL_AUTH));
246 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(12, UPLINK, AES_ENC, SNOW_AUTH));
247 : :
248 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(12, DOWNLINK, AES_ENC, SNOW_AUTH));
249 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(12, UPLINK, AES_ENC, AES_AUTH));
250 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(12, DOWNLINK, AES_ENC, AES_AUTH));
251 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(12, UPLINK, AES_ENC, ZUC_AUTH));
252 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(12, DOWNLINK, AES_ENC, ZUC_AUTH));
253 : :
254 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(12, UPLINK, ZUC_ENC, NULL_AUTH));
255 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(12, DOWNLINK, ZUC_ENC, NULL_AUTH));
256 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(12, UPLINK, ZUC_ENC, SNOW_AUTH));
257 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(12, DOWNLINK, ZUC_ENC, SNOW_AUTH));
258 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(12, UPLINK, ZUC_ENC, AES_AUTH));
259 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(12, DOWNLINK, ZUC_ENC, AES_AUTH));
260 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(12, UPLINK, ZUC_ENC, ZUC_AUTH));
261 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_encap(12, DOWNLINK, ZUC_ENC, ZUC_AUTH));
262 : :
263 [ # # ]: 0 : if (n - i)
264 : : printf("## %s: %d passed out of %d\n", __func__, i, n);
265 : :
266 : 0 : return n - i;
267 : : };
268 : :
269 : : int
270 : 0 : test_PDCP_PROTO_cplane_decap_all(void)
271 : : {
272 : : int i = 0, n = 0;
273 : :
274 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(5, UPLINK, NULL_ENC, NULL_AUTH));
275 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(5, DOWNLINK, NULL_ENC, NULL_AUTH));
276 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(5, UPLINK, NULL_ENC, SNOW_AUTH));
277 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(5, DOWNLINK, NULL_ENC, SNOW_AUTH));
278 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(5, UPLINK, NULL_ENC, AES_AUTH));
279 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(5, DOWNLINK, NULL_ENC, AES_AUTH));
280 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(5, UPLINK, NULL_ENC, ZUC_AUTH));
281 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(5, DOWNLINK, NULL_ENC, ZUC_AUTH));
282 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(5, UPLINK, SNOW_ENC, NULL_AUTH));
283 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(5, DOWNLINK, SNOW_ENC, NULL_AUTH));
284 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(5, UPLINK, SNOW_ENC, SNOW_AUTH));
285 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(5, DOWNLINK, SNOW_ENC, SNOW_AUTH));
286 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(5, UPLINK, SNOW_ENC, AES_AUTH));
287 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(5, DOWNLINK, SNOW_ENC, AES_AUTH));
288 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(5, UPLINK, SNOW_ENC, ZUC_AUTH));
289 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(5, DOWNLINK, SNOW_ENC, ZUC_AUTH));
290 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(5, UPLINK, AES_ENC, NULL_AUTH));
291 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(5, DOWNLINK, AES_ENC, NULL_AUTH));
292 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(5, UPLINK, AES_ENC, SNOW_AUTH));
293 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(5, DOWNLINK, AES_ENC, SNOW_AUTH));
294 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(5, UPLINK, AES_ENC, AES_AUTH));
295 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(5, DOWNLINK, AES_ENC, AES_AUTH));
296 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(5, UPLINK, AES_ENC, ZUC_AUTH));
297 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(5, DOWNLINK, AES_ENC, ZUC_AUTH));
298 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(5, UPLINK, ZUC_ENC, NULL_AUTH));
299 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(5, DOWNLINK, ZUC_ENC, NULL_AUTH));
300 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(5, UPLINK, ZUC_ENC, SNOW_AUTH));
301 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(5, DOWNLINK, ZUC_ENC, SNOW_AUTH));
302 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(5, UPLINK, ZUC_ENC, AES_AUTH));
303 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(5, DOWNLINK, ZUC_ENC, AES_AUTH));
304 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(5, UPLINK, ZUC_ENC, ZUC_AUTH));
305 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(5, DOWNLINK, ZUC_ENC, ZUC_AUTH));
306 : :
307 : : /* C-plane 12-bit */
308 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(12, UPLINK, NULL_ENC, NULL_AUTH));
309 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(12, DOWNLINK, NULL_ENC, NULL_AUTH));
310 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(12, UPLINK, NULL_ENC, SNOW_AUTH));
311 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(12, DOWNLINK, NULL_ENC, SNOW_AUTH));
312 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(12, UPLINK, NULL_ENC, AES_AUTH));
313 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(12, DOWNLINK, NULL_ENC, AES_AUTH));
314 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(12, UPLINK, NULL_ENC, ZUC_AUTH));
315 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(12, DOWNLINK, NULL_ENC, ZUC_AUTH));
316 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(12, UPLINK, SNOW_ENC, NULL_AUTH));
317 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(12, DOWNLINK, SNOW_ENC, NULL_AUTH));
318 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(12, UPLINK, SNOW_ENC, SNOW_AUTH));
319 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(12, DOWNLINK, SNOW_ENC, SNOW_AUTH));
320 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(12, UPLINK, SNOW_ENC, AES_AUTH));
321 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(12, DOWNLINK, SNOW_ENC, AES_AUTH));
322 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(12, UPLINK, SNOW_ENC, ZUC_AUTH));
323 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(12, DOWNLINK, SNOW_ENC, ZUC_AUTH));
324 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(12, UPLINK, AES_ENC, NULL_AUTH));
325 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(12, DOWNLINK, AES_ENC, NULL_AUTH));
326 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(12, UPLINK, AES_ENC, SNOW_AUTH));
327 : :
328 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(12, DOWNLINK, AES_ENC, SNOW_AUTH));
329 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(12, UPLINK, AES_ENC, AES_AUTH));
330 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(12, DOWNLINK, AES_ENC, AES_AUTH));
331 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(12, UPLINK, AES_ENC, ZUC_AUTH));
332 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(12, DOWNLINK, AES_ENC, ZUC_AUTH));
333 : :
334 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(12, UPLINK, ZUC_ENC, NULL_AUTH));
335 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(12, DOWNLINK, ZUC_ENC, NULL_AUTH));
336 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(12, UPLINK, ZUC_ENC, SNOW_AUTH));
337 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(12, DOWNLINK, ZUC_ENC, SNOW_AUTH));
338 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(12, UPLINK, ZUC_ENC, AES_AUTH));
339 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(12, DOWNLINK, ZUC_ENC, AES_AUTH));
340 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(12, UPLINK, ZUC_ENC, ZUC_AUTH));
341 [ # # ]: 0 : TEST_PDCP_COUNT(cplane_decap(12, DOWNLINK, ZUC_ENC, ZUC_AUTH));
342 : :
343 [ # # ]: 0 : if (n - i)
344 : : printf("## %s: %d passed out of %d\n", __func__, i, n);
345 : :
346 : 0 : return n - i;
347 : : };
348 : :
349 : : int
350 : 0 : test_PDCP_PROTO_uplane_encap_all(void)
351 : : {
352 : : int i = 0, n = 0;
353 : :
354 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_no_integrity(12, UPLINK, NULL_ENC));
355 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_no_integrity(12, DOWNLINK, NULL_ENC));
356 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_no_integrity(7, UPLINK, NULL_ENC));
357 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_no_integrity(7, DOWNLINK, NULL_ENC));
358 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_no_integrity(15, UPLINK, NULL_ENC));
359 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_no_integrity(15, DOWNLINK, NULL_ENC));
360 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_no_integrity(18, UPLINK, NULL_ENC));
361 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_no_integrity(18, DOWNLINK, NULL_ENC));
362 : :
363 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_no_integrity(12, UPLINK, SNOW_ENC));
364 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_no_integrity(12, DOWNLINK, SNOW_ENC));
365 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_no_integrity(7, UPLINK, SNOW_ENC));
366 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_no_integrity(7, DOWNLINK, SNOW_ENC));
367 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_no_integrity(15, UPLINK, SNOW_ENC));
368 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_no_integrity(15, DOWNLINK, SNOW_ENC));
369 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_no_integrity(18, UPLINK, SNOW_ENC));
370 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_no_integrity(18, DOWNLINK, SNOW_ENC));
371 : :
372 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_no_integrity(12, UPLINK, AES_ENC));
373 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_no_integrity(12, DOWNLINK, AES_ENC));
374 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_no_integrity(7, UPLINK, AES_ENC));
375 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_no_integrity(7, DOWNLINK, AES_ENC));
376 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_no_integrity(15, UPLINK, AES_ENC));
377 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_no_integrity(15, DOWNLINK, AES_ENC));
378 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_no_integrity(18, UPLINK, AES_ENC));
379 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_no_integrity(18, DOWNLINK, AES_ENC));
380 : :
381 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_no_integrity(12, UPLINK, ZUC_ENC));
382 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_no_integrity(12, DOWNLINK, ZUC_ENC));
383 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_no_integrity(7, UPLINK, ZUC_ENC));
384 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_no_integrity(7, DOWNLINK, ZUC_ENC));
385 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_no_integrity(15, UPLINK, ZUC_ENC));
386 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_no_integrity(15, DOWNLINK, ZUC_ENC));
387 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_no_integrity(18, UPLINK, ZUC_ENC));
388 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_no_integrity(18, DOWNLINK, ZUC_ENC));
389 : :
390 : : /* For 12-bit SN with integrity */
391 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(12, UPLINK, NULL_ENC, NULL_AUTH));
392 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(12, DOWNLINK, NULL_ENC, NULL_AUTH));
393 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(12, UPLINK, NULL_ENC, SNOW_AUTH));
394 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(12, DOWNLINK, NULL_ENC, SNOW_AUTH));
395 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(12, UPLINK, NULL_ENC, AES_AUTH));
396 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(12, DOWNLINK, NULL_ENC, AES_AUTH));
397 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(12, UPLINK, NULL_ENC, ZUC_AUTH));
398 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(12, DOWNLINK, NULL_ENC, ZUC_AUTH));
399 : :
400 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(12, UPLINK, SNOW_ENC, NULL_AUTH));
401 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(12, DOWNLINK, SNOW_ENC, NULL_AUTH));
402 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(12, UPLINK, SNOW_ENC, SNOW_AUTH));
403 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(12, DOWNLINK, SNOW_ENC, SNOW_AUTH));
404 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(12, UPLINK, SNOW_ENC, AES_AUTH));
405 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(12, DOWNLINK, SNOW_ENC, AES_AUTH));
406 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(12, UPLINK, SNOW_ENC, ZUC_AUTH));
407 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(12, DOWNLINK, SNOW_ENC, ZUC_AUTH));
408 : :
409 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(12, UPLINK, AES_ENC, NULL_AUTH));
410 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(12, DOWNLINK, AES_ENC, NULL_AUTH));
411 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(12, UPLINK, AES_ENC, SNOW_AUTH));
412 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(12, DOWNLINK, AES_ENC, SNOW_AUTH));
413 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(12, UPLINK, AES_ENC, AES_AUTH));
414 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(12, DOWNLINK, AES_ENC, AES_AUTH));
415 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(12, UPLINK, AES_ENC, ZUC_AUTH));
416 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(12, DOWNLINK, AES_ENC, ZUC_AUTH));
417 : :
418 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(12, UPLINK, ZUC_ENC, NULL_AUTH));
419 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(12, DOWNLINK, ZUC_ENC, NULL_AUTH));
420 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(12, UPLINK, ZUC_ENC, SNOW_AUTH));
421 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(12, DOWNLINK, ZUC_ENC, SNOW_AUTH));
422 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(12, UPLINK, ZUC_ENC, AES_AUTH));
423 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(12, DOWNLINK, ZUC_ENC, AES_AUTH));
424 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(12, UPLINK, ZUC_ENC, ZUC_AUTH));
425 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(12, DOWNLINK, ZUC_ENC, ZUC_AUTH));
426 : :
427 : : /* For 18-bit SN with integrity */
428 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(18, UPLINK, NULL_ENC, NULL_AUTH));
429 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(18, DOWNLINK, NULL_ENC, NULL_AUTH));
430 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(18, UPLINK, NULL_ENC, SNOW_AUTH));
431 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(18, DOWNLINK, NULL_ENC, SNOW_AUTH));
432 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(18, UPLINK, NULL_ENC, AES_AUTH));
433 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(18, DOWNLINK, NULL_ENC, AES_AUTH));
434 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(18, UPLINK, NULL_ENC, ZUC_AUTH));
435 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(18, DOWNLINK, NULL_ENC, ZUC_AUTH));
436 : :
437 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(18, UPLINK, SNOW_ENC, NULL_AUTH));
438 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(18, DOWNLINK, SNOW_ENC, NULL_AUTH));
439 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(18, UPLINK, SNOW_ENC, SNOW_AUTH));
440 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(18, DOWNLINK, SNOW_ENC, SNOW_AUTH));
441 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(18, UPLINK, SNOW_ENC, AES_AUTH));
442 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(18, DOWNLINK, SNOW_ENC, AES_AUTH));
443 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(18, UPLINK, SNOW_ENC, ZUC_AUTH));
444 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(18, DOWNLINK, SNOW_ENC, ZUC_AUTH));
445 : :
446 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(18, UPLINK, AES_ENC, NULL_AUTH));
447 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(18, DOWNLINK, AES_ENC, NULL_AUTH));
448 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(18, UPLINK, AES_ENC, SNOW_AUTH));
449 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(18, DOWNLINK, AES_ENC, SNOW_AUTH));
450 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(18, UPLINK, AES_ENC, AES_AUTH));
451 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(18, DOWNLINK, AES_ENC, AES_AUTH));
452 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(18, UPLINK, AES_ENC, ZUC_AUTH));
453 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(18, DOWNLINK, AES_ENC, ZUC_AUTH));
454 : :
455 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(18, UPLINK, ZUC_ENC, NULL_AUTH));
456 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(18, DOWNLINK, ZUC_ENC, NULL_AUTH));
457 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(18, UPLINK, ZUC_ENC, SNOW_AUTH));
458 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(18, DOWNLINK, ZUC_ENC, SNOW_AUTH));
459 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(18, UPLINK, ZUC_ENC, AES_AUTH));
460 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(18, DOWNLINK, ZUC_ENC, AES_AUTH));
461 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(18, UPLINK, ZUC_ENC, ZUC_AUTH));
462 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_encap_with_integrity(18, DOWNLINK, ZUC_ENC, ZUC_AUTH));
463 : :
464 [ # # ]: 0 : if (n - i)
465 : : printf("## %s: %d passed out of %d\n", __func__, i, n);
466 : :
467 : 0 : return n - i;
468 : : };
469 : :
470 : : int
471 : 0 : test_PDCP_PROTO_uplane_decap_all(void)
472 : : {
473 : : int i = 0, n = 0;
474 : :
475 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_no_integrity(12, UPLINK, NULL_ENC));
476 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_no_integrity(12, DOWNLINK, NULL_ENC));
477 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_no_integrity(7, UPLINK, NULL_ENC));
478 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_no_integrity(7, DOWNLINK, NULL_ENC));
479 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_no_integrity(15, UPLINK, NULL_ENC));
480 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_no_integrity(15, DOWNLINK, NULL_ENC));
481 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_no_integrity(18, UPLINK, NULL_ENC));
482 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_no_integrity(18, DOWNLINK, NULL_ENC));
483 : :
484 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_no_integrity(12, UPLINK, SNOW_ENC));
485 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_no_integrity(12, DOWNLINK, SNOW_ENC));
486 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_no_integrity(7, UPLINK, SNOW_ENC));
487 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_no_integrity(7, DOWNLINK, SNOW_ENC));
488 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_no_integrity(15, UPLINK, SNOW_ENC));
489 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_no_integrity(15, DOWNLINK, SNOW_ENC));
490 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_no_integrity(18, UPLINK, SNOW_ENC));
491 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_no_integrity(18, DOWNLINK, SNOW_ENC));
492 : :
493 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_no_integrity(12, UPLINK, AES_ENC));
494 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_no_integrity(12, DOWNLINK, AES_ENC));
495 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_no_integrity(7, UPLINK, AES_ENC));
496 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_no_integrity(7, DOWNLINK, AES_ENC));
497 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_no_integrity(15, UPLINK, AES_ENC));
498 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_no_integrity(15, DOWNLINK, AES_ENC));
499 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_no_integrity(18, UPLINK, AES_ENC));
500 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_no_integrity(18, DOWNLINK, AES_ENC));
501 : :
502 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_no_integrity(12, UPLINK, ZUC_ENC));
503 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_no_integrity(12, DOWNLINK, ZUC_ENC));
504 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_no_integrity(7, UPLINK, ZUC_ENC));
505 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_no_integrity(7, DOWNLINK, ZUC_ENC));
506 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_no_integrity(15, UPLINK, ZUC_ENC));
507 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_no_integrity(15, DOWNLINK, ZUC_ENC));
508 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_no_integrity(18, UPLINK, ZUC_ENC));
509 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_no_integrity(18, DOWNLINK, ZUC_ENC));
510 : :
511 : : /* u-plane 12-bit with integrity */
512 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(12, UPLINK, NULL_ENC, NULL_AUTH));
513 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(12, DOWNLINK, NULL_ENC, NULL_AUTH));
514 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(12, UPLINK, NULL_ENC, SNOW_AUTH));
515 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(12, DOWNLINK, NULL_ENC, SNOW_AUTH));
516 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(12, UPLINK, NULL_ENC, AES_AUTH));
517 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(12, DOWNLINK, NULL_ENC, AES_AUTH));
518 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(12, UPLINK, NULL_ENC, ZUC_AUTH));
519 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(12, DOWNLINK, NULL_ENC, ZUC_AUTH));
520 : :
521 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(12, UPLINK, SNOW_ENC, NULL_AUTH));
522 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(12, DOWNLINK, SNOW_ENC, NULL_AUTH));
523 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(12, UPLINK, SNOW_ENC, SNOW_AUTH));
524 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(12, DOWNLINK, SNOW_ENC, SNOW_AUTH));
525 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(12, UPLINK, SNOW_ENC, AES_AUTH));
526 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(12, DOWNLINK, SNOW_ENC, AES_AUTH));
527 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(12, UPLINK, SNOW_ENC, ZUC_AUTH));
528 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(12, DOWNLINK, SNOW_ENC, ZUC_AUTH));
529 : :
530 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(12, UPLINK, AES_ENC, NULL_AUTH));
531 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(12, DOWNLINK, AES_ENC, NULL_AUTH));
532 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(12, UPLINK, AES_ENC, SNOW_AUTH));
533 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(12, DOWNLINK, AES_ENC, SNOW_AUTH));
534 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(12, UPLINK, AES_ENC, AES_AUTH));
535 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(12, DOWNLINK, AES_ENC, AES_AUTH));
536 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(12, UPLINK, AES_ENC, ZUC_AUTH));
537 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(12, DOWNLINK, AES_ENC, ZUC_AUTH));
538 : :
539 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(12, UPLINK, ZUC_ENC, NULL_AUTH));
540 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(12, DOWNLINK, ZUC_ENC, NULL_AUTH));
541 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(12, UPLINK, ZUC_ENC, SNOW_AUTH));
542 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(12, DOWNLINK, ZUC_ENC, SNOW_AUTH));
543 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(12, UPLINK, ZUC_ENC, AES_AUTH));
544 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(12, DOWNLINK, ZUC_ENC, AES_AUTH));
545 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(12, UPLINK, ZUC_ENC, ZUC_AUTH));
546 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(12, DOWNLINK, ZUC_ENC, ZUC_AUTH));
547 : :
548 : : /* u-plane 18-bit with integrity */
549 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(18, UPLINK, NULL_ENC, NULL_AUTH));
550 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(18, DOWNLINK, NULL_ENC, NULL_AUTH));
551 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(18, UPLINK, NULL_ENC, SNOW_AUTH));
552 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(18, DOWNLINK, NULL_ENC, SNOW_AUTH));
553 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(18, UPLINK, NULL_ENC, AES_AUTH));
554 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(18, DOWNLINK, NULL_ENC, AES_AUTH));
555 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(18, UPLINK, NULL_ENC, ZUC_AUTH));
556 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(18, DOWNLINK, NULL_ENC, ZUC_AUTH));
557 : :
558 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(18, UPLINK, SNOW_ENC, NULL_AUTH));
559 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(18, DOWNLINK, SNOW_ENC, NULL_AUTH));
560 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(18, UPLINK, SNOW_ENC, SNOW_AUTH));
561 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(18, DOWNLINK, SNOW_ENC, SNOW_AUTH));
562 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(18, UPLINK, SNOW_ENC, AES_AUTH));
563 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(18, DOWNLINK, SNOW_ENC, AES_AUTH));
564 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(18, UPLINK, SNOW_ENC, ZUC_AUTH));
565 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(18, DOWNLINK, SNOW_ENC, ZUC_AUTH));
566 : :
567 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(18, UPLINK, AES_ENC, NULL_AUTH));
568 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(18, DOWNLINK, AES_ENC, NULL_AUTH));
569 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(18, UPLINK, AES_ENC, SNOW_AUTH));
570 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(18, DOWNLINK, AES_ENC, SNOW_AUTH));
571 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(18, UPLINK, AES_ENC, AES_AUTH));
572 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(18, DOWNLINK, AES_ENC, AES_AUTH));
573 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(18, UPLINK, AES_ENC, ZUC_AUTH));
574 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(18, DOWNLINK, AES_ENC, ZUC_AUTH));
575 : :
576 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(18, UPLINK, ZUC_ENC, NULL_AUTH));
577 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(18, DOWNLINK, ZUC_ENC, NULL_AUTH));
578 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(18, UPLINK, ZUC_ENC, SNOW_AUTH));
579 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(18, DOWNLINK, ZUC_ENC, SNOW_AUTH));
580 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(18, UPLINK, ZUC_ENC, AES_AUTH));
581 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(18, DOWNLINK, ZUC_ENC, AES_AUTH));
582 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(18, UPLINK, ZUC_ENC, ZUC_AUTH));
583 [ # # ]: 0 : TEST_PDCP_COUNT(uplane_decap_with_integrity(18, DOWNLINK, ZUC_ENC, ZUC_AUTH));
584 : :
585 [ # # ]: 0 : if (n - i)
586 : : printf("## %s: %d passed out of %d\n", __func__, i, n);
587 : :
588 : 0 : return n - i;
589 : : };
|