crypto: ccp - Fill the result buffer only on digest, finup, and final ops

Any change to the result buffer should only happen on final, finup
and digest operations. Changes to the buffer for update, import, export,
etc, are not allowed.

Fixes: 66d7b9f6175e ("crypto: testmgr - test misuse of result in ahash")
Signed-off-by: Gary R Hook <gary.hook@amd.com>
Cc: <stable@vger.kernel.org>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
This commit is contained in:
Gary R Hook 2018-03-07 11:37:42 -06:00 committed by Herbert Xu
parent 9cc16b4d32
commit 0ee991be4c
2 changed files with 2 additions and 2 deletions

View File

@ -46,7 +46,7 @@ static int ccp_aes_cmac_complete(struct crypto_async_request *async_req,
}
/* Update result area if supplied */
if (req->result)
if (req->result && rctx->final)
memcpy(req->result, rctx->iv, digest_size);
e_free:

View File

@ -47,7 +47,7 @@ static int ccp_sha_complete(struct crypto_async_request *async_req, int ret)
}
/* Update result area if supplied */
if (req->result)
if (req->result && rctx->final)
memcpy(req->result, rctx->ctx, digest_size);
e_free: