crypto: ghash-clmulni: specify context size for ghash async algorithm
authorAndrey Ryabinin <aryabinin@odin.com>
Thu, 3 Sep 2015 11:32:01 +0000 (14:32 +0300)
committerHerbert Xu <herbert@gondor.apana.org.au>
Fri, 4 Sep 2015 15:21:07 +0000 (23:21 +0800)
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.

Cc: stable@vger.kernel.org
Signed-off-by: Andrey Ryabinin <aryabinin@odin.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
arch/x86/crypto/ghash-clmulni-intel_glue.c

index 64d7cf1b50e112ab370ac63e59e9ff89d4d677e0..440df0c7a2eef7828b31a3c97db4fa110340d339 100644 (file)
@@ -294,6 +294,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,