| 104 | } |
| 105 | |
| 106 | static int |
| 107 | auth_algo_transform(uint32_t virtio_auth_algo, |
| 108 | enum rte_crypto_auth_algorithm *algo) |
| 109 | { |
| 110 | switch (virtio_auth_algo) { |
| 111 | case VIRTIO_CRYPTO_NO_MAC: |
| 112 | *algo = RTE_CRYPTO_AUTH_NULL; |
| 113 | break; |
| 114 | case VIRTIO_CRYPTO_MAC_HMAC_MD5: |
| 115 | *algo = RTE_CRYPTO_AUTH_MD5_HMAC; |
| 116 | break; |
| 117 | case VIRTIO_CRYPTO_MAC_HMAC_SHA1: |
| 118 | *algo = RTE_CRYPTO_AUTH_SHA1_HMAC; |
| 119 | break; |
| 120 | case VIRTIO_CRYPTO_MAC_HMAC_SHA_224: |
| 121 | *algo = RTE_CRYPTO_AUTH_SHA224_HMAC; |
| 122 | break; |
| 123 | case VIRTIO_CRYPTO_MAC_HMAC_SHA_256: |
| 124 | *algo = RTE_CRYPTO_AUTH_SHA256_HMAC; |
| 125 | break; |
| 126 | case VIRTIO_CRYPTO_MAC_HMAC_SHA_384: |
| 127 | *algo = RTE_CRYPTO_AUTH_SHA384_HMAC; |
| 128 | break; |
| 129 | case VIRTIO_CRYPTO_MAC_HMAC_SHA_512: |
| 130 | *algo = RTE_CRYPTO_AUTH_SHA512_HMAC; |
| 131 | break; |
| 132 | case VIRTIO_CRYPTO_MAC_CMAC_AES: |
| 133 | *algo = RTE_CRYPTO_AUTH_AES_CMAC; |
| 134 | break; |
| 135 | case VIRTIO_CRYPTO_MAC_KASUMI_F9: |
| 136 | *algo = RTE_CRYPTO_AUTH_KASUMI_F9; |
| 137 | break; |
| 138 | case VIRTIO_CRYPTO_MAC_SNOW3G_UIA2: |
| 139 | *algo = RTE_CRYPTO_AUTH_SNOW3G_UIA2; |
| 140 | break; |
| 141 | case VIRTIO_CRYPTO_MAC_GMAC_AES: |
| 142 | *algo = RTE_CRYPTO_AUTH_AES_GMAC; |
| 143 | break; |
| 144 | case VIRTIO_CRYPTO_MAC_CBCMAC_AES: |
| 145 | *algo = RTE_CRYPTO_AUTH_AES_CBC_MAC; |
| 146 | break; |
| 147 | case VIRTIO_CRYPTO_MAC_XCBC_AES: |
| 148 | *algo = RTE_CRYPTO_AUTH_AES_XCBC_MAC; |
| 149 | break; |
| 150 | case VIRTIO_CRYPTO_MAC_CMAC_3DES: |
| 151 | case VIRTIO_CRYPTO_MAC_GMAC_TWOFISH: |
| 152 | case VIRTIO_CRYPTO_MAC_CBCMAC_KASUMI_F9: |
| 153 | return -VIRTIO_CRYPTO_NOTSUPP; |
| 154 | default: |
| 155 | return -VIRTIO_CRYPTO_BADMSG; |
| 156 | } |
| 157 | |
| 158 | return 0; |
| 159 | } |
| 160 | |
| 161 | static int get_iv_len(enum rte_crypto_cipher_algorithm algo) |
| 162 | { |
no outgoing calls
no test coverage detected