aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndrey Ryabinin <aryabinin@odin.com>2015-09-03 14:32:01 +0300
committerBen Hutchings <ben@decadent.org.uk>2015-10-13 03:46:08 +0100
commit3af9b38d21e276dc168e229e6cde2a28cdadf328 (patch)
tree8e7e5093f6a6d1ec1af6f75580dba3c307050084
parenta6706174cfe9fa100651b5012aec9796006a884b (diff)
downloadkernel_samsung_smdk4412-3af9b38d21e276dc168e229e6cde2a28cdadf328.zip
kernel_samsung_smdk4412-3af9b38d21e276dc168e229e6cde2a28cdadf328.tar.gz
kernel_samsung_smdk4412-3af9b38d21e276dc168e229e6cde2a28cdadf328.tar.bz2
crypto: ghash-clmulni: specify context size for ghash async algorithm
commit 71c6da846be478a61556717ef1ee1cea91f5d6a8 upstream. Currently context size (cra_ctxsize) doesn't specified for ghash_async_alg. Which means it's zero. Thus crypto_create_tfm() doesn't allocate needed space for ghash_async_ctx, so any read/write to ctx (e.g. in ghash_async_init_tfm()) is not valid. Signed-off-by: Andrey Ryabinin <aryabinin@odin.com> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
-rw-r--r--arch/x86/crypto/ghash-clmulni-intel_glue.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/x86/crypto/ghash-clmulni-intel_glue.c b/arch/x86/crypto/ghash-clmulni-intel_glue.c
index f781251..4827b23 100644
--- a/arch/x86/crypto/ghash-clmulni-intel_glue.c
+++ b/arch/x86/crypto/ghash-clmulni-intel_glue.c
@@ -291,6 +291,7 @@ static struct ahash_alg ghash_async_alg = {
.cra_name = "ghash",
.cra_driver_name = "ghash-clmulni",
.cra_priority = 400,
+ .cra_ctxsize = sizeof(struct ghash_async_ctx),
.cra_flags = CRYPTO_ALG_TYPE_AHASH | CRYPTO_ALG_ASYNC,
.cra_blocksize = GHASH_BLOCK_SIZE,
.cra_type = &crypto_ahash_type,