mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2025-01-27 04:51:44 +07:00
crypto: caam - check zero-length input
Check zero-length input, for skcipher algorithm, to solve the extra tests. This is a valid operation, therefore the API will return no error. Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com> Reviewed-by: Horia Geanta <horia.geanta@nxp.com> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
This commit is contained in:
parent
fcd23ed57c
commit
31bb2f0da1
@ -1884,6 +1884,9 @@ static int skcipher_encrypt(struct skcipher_request *req)
|
||||
u32 *desc;
|
||||
int ret = 0;
|
||||
|
||||
if (!req->cryptlen)
|
||||
return 0;
|
||||
|
||||
/* allocate extended descriptor */
|
||||
edesc = skcipher_edesc_alloc(req, DESC_JOB_IO_LEN * CAAM_CMD_SZ);
|
||||
if (IS_ERR(edesc))
|
||||
@ -1918,6 +1921,9 @@ static int skcipher_decrypt(struct skcipher_request *req)
|
||||
u32 *desc;
|
||||
int ret = 0;
|
||||
|
||||
if (!req->cryptlen)
|
||||
return 0;
|
||||
|
||||
/* allocate extended descriptor */
|
||||
edesc = skcipher_edesc_alloc(req, DESC_JOB_IO_LEN * CAAM_CMD_SZ);
|
||||
if (IS_ERR(edesc))
|
||||
|
@ -1445,6 +1445,9 @@ static inline int skcipher_crypt(struct skcipher_request *req, bool encrypt)
|
||||
struct caam_ctx *ctx = crypto_skcipher_ctx(skcipher);
|
||||
int ret;
|
||||
|
||||
if (!req->cryptlen)
|
||||
return 0;
|
||||
|
||||
if (unlikely(caam_congested))
|
||||
return -EAGAIN;
|
||||
|
||||
|
@ -1499,6 +1499,9 @@ static int skcipher_encrypt(struct skcipher_request *req)
|
||||
struct caam_request *caam_req = skcipher_request_ctx(req);
|
||||
int ret;
|
||||
|
||||
if (!req->cryptlen)
|
||||
return 0;
|
||||
|
||||
/* allocate extended descriptor */
|
||||
edesc = skcipher_edesc_alloc(req);
|
||||
if (IS_ERR(edesc))
|
||||
@ -1527,6 +1530,8 @@ static int skcipher_decrypt(struct skcipher_request *req)
|
||||
struct caam_request *caam_req = skcipher_request_ctx(req);
|
||||
int ret;
|
||||
|
||||
if (!req->cryptlen)
|
||||
return 0;
|
||||
/* allocate extended descriptor */
|
||||
edesc = skcipher_edesc_alloc(req);
|
||||
if (IS_ERR(edesc))
|
||||
|
Loading…
Reference in New Issue
Block a user