From: Saoirse O'Donovan <saoirse.odono...@intel.com>

Allocated memory was being freed using 'free' when it should have been
freed using 'OPENSSL_free'. This has now been modified so that the
correct method is used to free allocated memory.

Coverity issue: 384415
Fixes: 4c7ae22f1f83 ("crypto/openssl: update DSA routine with 3.0 EVP API")
Cc: kai...@intel.com
Cc: sta...@dpdk.org

Signed-off-by: Saoirse O'Donovan <saoirse.odono...@intel.com>
Signed-off-by: Ciara Power <ciara.po...@intel.com>
---
 drivers/crypto/openssl/rte_openssl_pmd.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/crypto/openssl/rte_openssl_pmd.c 
b/drivers/crypto/openssl/rte_openssl_pmd.c
index 384d262621..f65fbca300 100644
--- a/drivers/crypto/openssl/rte_openssl_pmd.c
+++ b/drivers/crypto/openssl/rte_openssl_pmd.c
@@ -1927,7 +1927,7 @@ process_openssl_dsa_sign_op_evp(struct rte_crypto_op *cop,
 
        if (EVP_PKEY_sign(dsa_ctx, dsa_sign_data, &outlen, op->message.data,
                                                op->message.length) <= 0) {
-               free(dsa_sign_data);
+               OPENSSL_free(dsa_sign_data);
                goto err_dsa_sign;
        }
 
@@ -1935,7 +1935,7 @@ process_openssl_dsa_sign_op_evp(struct rte_crypto_op *cop,
        DSA_SIG *sign = d2i_DSA_SIG(NULL, &dsa_sign_data_p, outlen);
        if (!sign) {
                OPENSSL_LOG(ERR, "%s:%d\n", __func__, __LINE__);
-               free(dsa_sign_data);
+               OPENSSL_free(dsa_sign_data);
                goto err_dsa_sign;
        } else {
                const BIGNUM *r = NULL, *s = NULL;
@@ -1947,7 +1947,7 @@ process_openssl_dsa_sign_op_evp(struct rte_crypto_op *cop,
        }
 
        DSA_SIG_free(sign);
-       free(dsa_sign_data);
+       OPENSSL_free(dsa_sign_data);
        return 0;
 
 err_dsa_sign:
-- 
2.25.1

Reply via email to