Re: [PATCH] crypto: hisilicon/hpre - rsa key should not be empty

From: yumeng
Date: Fri Apr 02 2021 - 06:16:49 EST




在 2021/4/2 15:12, Herbert Xu 写道:
On Fri, Mar 26, 2021 at 02:13:32PM +0800, Meng Yu wrote:
We should ensure key is not empty before we set key.

Signed-off-by: Meng Yu <yumeng18@xxxxxxxxxx>
---
drivers/crypto/hisilicon/hpre/hpre_crypto.c | 6 ++++++
1 file changed, 6 insertions(+)

diff --git a/drivers/crypto/hisilicon/hpre/hpre_crypto.c b/drivers/crypto/hisilicon/hpre/hpre_crypto.c
index 53068d2..7cf7d80 100644
--- a/drivers/crypto/hisilicon/hpre/hpre_crypto.c
+++ b/drivers/crypto/hisilicon/hpre/hpre_crypto.c
@@ -1093,6 +1093,9 @@ static int hpre_rsa_setpubkey(struct crypto_akcipher *tfm, const void *key,
struct hpre_ctx *ctx = akcipher_tfm_ctx(tfm);
int ret;
+ if (!key || !keylen)
+ return -EINVAL;
+
ret = crypto_akcipher_set_pub_key(ctx->rsa.soft_tfm, key, keylen);

Does this fix a real bug? Wouldn't the soft fallback setkey catch
this anyhow?


I think it is not a real bug, and soft fallback setkey can always catch the error.
But our original intention was to make it don't go to 'xxx_set_pub_key'
when the key is null, and it can return an error earlier.
But maybe it is not good.