| From 7d8cf249bfb97399241db120686f2db5a8e62108 Mon Sep 17 00:00:00 2001 |
| From: Gilad Ben-Yossef <gilad@benyossef.com> |
| Date: Mon, 29 Jul 2019 13:40:18 +0300 |
| Subject: [PATCH] crypto: ccree - use the full crypt length value |
| |
| commit 7a4be6c113c1f721818d1e3722a9015fe393295c upstream. |
| |
| In case of AEAD decryption verifcation error we were using the |
| wrong value to zero out the plaintext buffer leaving the end of |
| the buffer with the false plaintext. |
| |
| Signed-off-by: Gilad Ben-Yossef <gilad@benyossef.com> |
| Fixes: ff27e85a85bb ("crypto: ccree - add AEAD support") |
| CC: stable@vger.kernel.org # v4.17+ |
| Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> |
| Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> |
| |
| diff --git a/drivers/crypto/ccree/cc_aead.c b/drivers/crypto/ccree/cc_aead.c |
| index 7aa4cbe19a86..29bf397cf0c1 100644 |
| --- a/drivers/crypto/ccree/cc_aead.c |
| +++ b/drivers/crypto/ccree/cc_aead.c |
| @@ -236,7 +236,7 @@ static void cc_aead_complete(struct device *dev, void *cc_req, int err) |
| /* In case of payload authentication failure, MUST NOT |
| * revealed the decrypted message --> zero its memory. |
| */ |
| - cc_zero_sgl(areq->dst, areq_ctx->cryptlen); |
| + cc_zero_sgl(areq->dst, areq->cryptlen); |
| err = -EBADMSG; |
| } |
| } else { /*ENCRYPT*/ |
| -- |
| 2.7.4 |
| |