Commit c6091402 authored by Chenghai Huang's avatar Chenghai Huang Committed by JangShui Yang
Browse files

crypto: hisilicon/sec2 - optimize the error return process

mainline inclusion
from mainline-v6.8-rc1
commit 1bed82257b1881b689ee41f14ecb4c20a273cac0
category: cleanup
bugzilla: https://gitee.com/openeuler/kernel/issues/I925L9
CVE: NA

Reference: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=1bed82257b1881b689ee41f14ecb4c20a273cac0



----------------------------------------------------------------------

Add the printf of an error message and optimized the handling
process of ret.

Signed-off-by: default avatarChenghai Huang <huangchenghai2@huawei.com>
Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: default avatarJangShui Yang <yangjiangshui@h-partners.com>
parent 71bfd841
Loading
Loading
Loading
Loading
+5 −2
Original line number Diff line number Diff line
@@ -850,6 +850,7 @@ static int sec_skcipher_setkey(struct crypto_skcipher *tfm, const u8 *key,
		ret = sec_skcipher_aes_sm4_setkey(c_ctx, keylen, c_mode);
		break;
	default:
		dev_err(dev, "sec c_alg err!\n");
		return -EINVAL;
	}

@@ -1172,7 +1173,8 @@ static int sec_aead_setkey(struct crypto_aead *tfm, const u8 *key,
		return 0;
	}

	if (crypto_authenc_extractkeys(&keys, key, keylen))
	ret = crypto_authenc_extractkeys(&keys, key, keylen);
	if (ret)
		goto bad_key;

	ret = sec_aead_aes_set_key(c_ctx, &keys);
@@ -1189,6 +1191,7 @@ static int sec_aead_setkey(struct crypto_aead *tfm, const u8 *key,

	if ((ctx->a_ctx.mac_len & SEC_SQE_LEN_RATE_MASK)  ||
	    (ctx->a_ctx.a_key_len & SEC_SQE_LEN_RATE_MASK)) {
		ret = -EINVAL;
		dev_err(dev, "MAC or AUTH key length error!\n");
		goto bad_key;
	}
@@ -1197,7 +1200,7 @@ static int sec_aead_setkey(struct crypto_aead *tfm, const u8 *key,

bad_key:
	memzero_explicit(&keys, sizeof(struct crypto_authenc_keys));
	return -EINVAL;
	return ret;
}