| From 3e806a12d10af2581aa26c37b58439286eab9782 Mon Sep 17 00:00:00 2001 |
| From: Eneas U de Queiroz <cotequeiroz@gmail.com> |
| Date: Fri, 20 Dec 2019 16:02:16 -0300 |
| Subject: [PATCH 05/11] crypto: qce - update the skcipher IV |
| |
| Update the IV after the completion of each cipher operation. |
| |
| Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com> |
| Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> |
| --- |
| drivers/crypto/qce/skcipher.c | 2 ++ |
| 1 file changed, 2 insertions(+) |
| |
| --- a/drivers/crypto/qce/skcipher.c |
| +++ b/drivers/crypto/qce/skcipher.c |
| @@ -21,6 +21,7 @@ static void qce_skcipher_done(void *data |
| struct qce_cipher_reqctx *rctx = skcipher_request_ctx(req); |
| struct qce_alg_template *tmpl = to_cipher_tmpl(crypto_skcipher_reqtfm(req)); |
| struct qce_device *qce = tmpl->qce; |
| + struct qce_result_dump *result_buf = qce->dma.result_buf; |
| enum dma_data_direction dir_src, dir_dst; |
| u32 status; |
| int error; |
| @@ -45,6 +46,7 @@ static void qce_skcipher_done(void *data |
| if (error < 0) |
| dev_dbg(qce->dev, "skcipher operation error (%x)\n", status); |
| |
| + memcpy(rctx->iv, result_buf->encr_cntr_iv, rctx->ivsize); |
| qce->async_req_done(tmpl->qce, error); |
| } |
| |