diff options
author | Paul Gortmaker <paul.gortmaker@windriver.com> | 2017-06-16 22:37:13 -0400 |
---|---|---|
committer | Paul Gortmaker <paul.gortmaker@windriver.com> | 2017-06-16 22:37:13 -0400 |
commit | 66929ad2b944ecc4e1fd60d8c8722284e6e36dc2 (patch) | |
tree | 631b8f6e2e6fab4526f0c86f82381e9695c5f8fc | |
parent | a43747a4f91cbb23a2de25c9915b64aad0cf2b40 (diff) | |
download | longterm-queue-4.8-66929ad2b944ecc4e1fd60d8c8722284e6e36dc2.tar.gz |
crypto: context refresh
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
-rw-r--r-- | queue/crypto-algif_aead-Fix-bogus-request-dereference-in-c.patch | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/queue/crypto-algif_aead-Fix-bogus-request-dereference-in-c.patch b/queue/crypto-algif_aead-Fix-bogus-request-dereference-in-c.patch index 65c84f7..90aab64 100644 --- a/queue/crypto-algif_aead-Fix-bogus-request-dereference-in-c.patch +++ b/queue/crypto-algif_aead-Fix-bogus-request-dereference-in-c.patch @@ -1,4 +1,4 @@ -From e6534aebb26e32fbab14df9c713c65e8507d17e4 Mon Sep 17 00:00:00 2001 +From 01351c96df302968b0bec55e6296137da0e5280e Mon Sep 17 00:00:00 2001 From: Herbert Xu <herbert@gondor.apana.org.au> Date: Mon, 10 Apr 2017 17:59:07 +0800 Subject: [PATCH] crypto: algif_aead - Fix bogus request dereference in @@ -18,12 +18,13 @@ that instead of passing in sk through req->data. Fixes: 83094e5e9e49 ("crypto: af_alg - add async support to...") Cc: <stable@vger.kernel.org> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> +Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> diff --git a/crypto/algif_aead.c b/crypto/algif_aead.c -index 5a8053758657..ef59d9926ee9 100644 +index 10fe7972391c..2f855afbc76d 100644 --- a/crypto/algif_aead.c +++ b/crypto/algif_aead.c -@@ -40,6 +40,7 @@ struct aead_async_req { +@@ -39,6 +39,7 @@ struct aead_async_req { struct aead_async_rsgl first_rsgl; struct list_head list; struct kiocb *iocb; @@ -31,7 +32,7 @@ index 5a8053758657..ef59d9926ee9 100644 unsigned int tsgls; char iv[]; }; -@@ -379,12 +380,10 @@ unlock: +@@ -375,12 +376,10 @@ unlock: static void aead_async_cb(struct crypto_async_request *_req, int err) { @@ -47,7 +48,7 @@ index 5a8053758657..ef59d9926ee9 100644 struct scatterlist *sg = areq->tsgl; struct aead_async_rsgl *rsgl; struct kiocb *iocb = areq->iocb; -@@ -447,11 +446,12 @@ static int aead_recvmsg_async(struct socket *sock, struct msghdr *msg, +@@ -440,11 +439,12 @@ static int aead_recvmsg_async(struct socket *sock, struct msghdr *msg, memset(&areq->first_rsgl, '\0', sizeof(areq->first_rsgl)); INIT_LIST_HEAD(&areq->list); areq->iocb = msg->msg_iocb; @@ -58,7 +59,7 @@ index 5a8053758657..ef59d9926ee9 100644 aead_request_set_callback(req, CRYPTO_TFM_REQ_MAY_BACKLOG, - aead_async_cb, sk); + aead_async_cb, req); - used -= ctx->aead_assoclen; + used -= ctx->aead_assoclen + (ctx->enc ? as : 0); /* take over all tx sgls from ctx */ -- |