diff mbox series

crypto: hisilicon/hpre - fix memory leak in hpre_curve25519_src_init()

Message ID 20211211081719.30329-1-qianweili@huawei.com
State Accepted
Commit 51fa916b81e5f406a74f14a31a3a228c3cc060ad
Headers show
Series crypto: hisilicon/hpre - fix memory leak in hpre_curve25519_src_init() | expand

Commit Message

Weili Qian Dec. 11, 2021, 8:17 a.m. UTC
hpre_curve25519_src_init() allocates memory for 'ptr' before calling
memcmp(). If memcmp() returns 0, the function will return '-EINVAL'
without freeing memory.

Signed-off-by: Weili Qian <qianweili@huawei.com>
---
 drivers/crypto/hisilicon/hpre/hpre_crypto.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
diff mbox series

Patch

diff --git a/drivers/crypto/hisilicon/hpre/hpre_crypto.c b/drivers/crypto/hisilicon/hpre/hpre_crypto.c
index 0f1724d355b8..97d54c1465c2 100644
--- a/drivers/crypto/hisilicon/hpre/hpre_crypto.c
+++ b/drivers/crypto/hisilicon/hpre/hpre_crypto.c
@@ -1862,7 +1862,7 @@  static int hpre_curve25519_src_init(struct hpre_asym_request *hpre_req,
 	 */
 	if (memcmp(ptr, p, ctx->key_sz) == 0) {
 		dev_err(dev, "gx is p!\n");
-		return -EINVAL;
+		goto err;
 	} else if (memcmp(ptr, p, ctx->key_sz) > 0) {
 		hpre_curve25519_src_modulo_p(ptr);
 	}