aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTadeusz Struk <tadeusz.struk@intel.com>2015-05-15 13:18:37 -0400
committerHerbert Xu <herbert@gondor.apana.org.au>2015-05-18 00:13:06 -0400
commit7b2a18e05feb86f9be25602abfa9604a6b977f79 (patch)
tree7f4592eb208f89b5d4b13f61265148eeb28ed5d3
parentec59a65d694e5fd99d76565b93468c99ae8dff79 (diff)
crypto: algif_aead - fix invalid sgl linking
This patch fixes it. Also minor updates to comments. Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
-rw-r--r--crypto/algif_aead.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/crypto/algif_aead.c b/crypto/algif_aead.c
index 00a6fe166fed..69abada22373 100644
--- a/crypto/algif_aead.c
+++ b/crypto/algif_aead.c
@@ -33,7 +33,7 @@ struct aead_ctx {
33 /* 33 /*
34 * RSGL_MAX_ENTRIES is an artificial limit where user space at maximum 34 * RSGL_MAX_ENTRIES is an artificial limit where user space at maximum
35 * can cause the kernel to allocate RSGL_MAX_ENTRIES * ALG_MAX_PAGES 35 * can cause the kernel to allocate RSGL_MAX_ENTRIES * ALG_MAX_PAGES
36 * bytes 36 * pages
37 */ 37 */
38#define RSGL_MAX_ENTRIES ALG_MAX_PAGES 38#define RSGL_MAX_ENTRIES ALG_MAX_PAGES
39 struct af_alg_sgl rsgl[RSGL_MAX_ENTRIES]; 39 struct af_alg_sgl rsgl[RSGL_MAX_ENTRIES];
@@ -435,11 +435,10 @@ static int aead_recvmsg(struct socket *sock, struct msghdr *msg, size_t ignored,
435 if (err < 0) 435 if (err < 0)
436 goto unlock; 436 goto unlock;
437 usedpages += err; 437 usedpages += err;
438 /* chain the new scatterlist with initial list */ 438 /* chain the new scatterlist with previous one */
439 if (cnt) 439 if (cnt)
440 scatterwalk_crypto_chain(ctx->rsgl[0].sg, 440 af_alg_link_sg(&ctx->rsgl[cnt-1], &ctx->rsgl[cnt]);
441 ctx->rsgl[cnt].sg, 1, 441
442 sg_nents(ctx->rsgl[cnt-1].sg));
443 /* we do not need more iovecs as we have sufficient memory */ 442 /* we do not need more iovecs as we have sufficient memory */
444 if (outlen <= usedpages) 443 if (outlen <= usedpages)
445 break; 444 break;