We should ensure key is not empty before we set key.

Signed-off-by: Meng Yu <yumen...@huawei.com>
---
 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);
        if (ret)
                return ret;
@@ -1106,6 +1109,9 @@ static int hpre_rsa_setprivkey(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_priv_key(ctx->rsa.soft_tfm, key, keylen);
        if (ret)
                return ret;
-- 
2.8.1

Reply via email to