LCOV - code coverage report
Current view: top level - app/test - test_cryptodev_security_pdcp.c (source / functions) Hit Total Coverage
Test: Code coverage Lines: 0 338 0.0 %
Date: 2025-02-01 18:54:23 Functions: 0 4 0.0 %
Legend: Lines: hit not hit | Branches: + taken - not taken # not executed Branches: 0 648 0.0 %

           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                 :            : };

Generated by: LCOV version 1.14