This workaround was needed before version 1.0.1f. Do not build it for versions >= 1.1.
Fixes: d61f70b4c918 ("crypto/libcrypto: add driver for OpenSSL library") Signed-off-by: Didier Pallard <didier.pall...@6wind.com> Cc: sta...@dpdk.org --- drivers/crypto/openssl/rte_openssl_pmd.c | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/drivers/crypto/openssl/rte_openssl_pmd.c b/drivers/crypto/openssl/rte_openssl_pmd.c index e00db0facba5..a11885df8255 100644 --- a/drivers/crypto/openssl/rte_openssl_pmd.c +++ b/drivers/crypto/openssl/rte_openssl_pmd.c @@ -1195,8 +1195,11 @@ process_openssl_auth_encryption_gcm(struct rte_mbuf *mbuf_src, int offset, int srclen, uint8_t *aad, int aadlen, uint8_t *iv, uint8_t *dst, uint8_t *tag, EVP_CIPHER_CTX *ctx) { - int len = 0, unused = 0; + int len = 0; +#if OPENSSL_VERSION_NUMBER < 0x10100000L + int unused = 0; uint8_t empty[] = {}; +#endif if (EVP_EncryptInit_ex(ctx, NULL, NULL, NULL, iv) <= 0) goto process_auth_encryption_gcm_err; @@ -1210,9 +1213,11 @@ process_openssl_auth_encryption_gcm(struct rte_mbuf *mbuf_src, int offset, srclen, ctx, 0)) goto process_auth_encryption_gcm_err; +#if OPENSSL_VERSION_NUMBER < 0x10100000L /* Workaround open ssl bug in version less then 1.0.1f */ if (EVP_EncryptUpdate(ctx, empty, &unused, empty, 0) <= 0) goto process_auth_encryption_gcm_err; +#endif if (EVP_EncryptFinal_ex(ctx, dst, &len) <= 0) goto process_auth_encryption_gcm_err; @@ -1274,8 +1279,11 @@ process_openssl_auth_decryption_gcm(struct rte_mbuf *mbuf_src, int offset, int srclen, uint8_t *aad, int aadlen, uint8_t *iv, uint8_t *dst, uint8_t *tag, EVP_CIPHER_CTX *ctx) { - int len = 0, unused = 0; + int len = 0; +#if OPENSSL_VERSION_NUMBER < 0x10100000L + int unused = 0; uint8_t empty[] = {}; +#endif if (EVP_CIPHER_CTX_ctrl(ctx, EVP_CTRL_GCM_SET_TAG, 16, tag) <= 0) goto process_auth_decryption_gcm_err; @@ -1292,9 +1300,11 @@ process_openssl_auth_decryption_gcm(struct rte_mbuf *mbuf_src, int offset, srclen, ctx, 0)) goto process_auth_decryption_gcm_err; +#if OPENSSL_VERSION_NUMBER < 0x10100000L /* Workaround open ssl bug in version less then 1.0.1f */ if (EVP_DecryptUpdate(ctx, empty, &unused, empty, 0) <= 0) goto process_auth_decryption_gcm_err; +#endif if (EVP_DecryptFinal_ex(ctx, dst, &len) <= 0) return -EFAULT; -- 2.30.2