summaryrefslogtreecommitdiffstats
path: root/kernel/crypto/gcm.c
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/crypto/gcm.c')
-rw-r--r--kernel/crypto/gcm.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/kernel/crypto/gcm.c b/kernel/crypto/gcm.c
index bec329b3d..1238b3c5a 100644
--- a/kernel/crypto/gcm.c
+++ b/kernel/crypto/gcm.c
@@ -117,7 +117,7 @@ static int crypto_gcm_setkey(struct crypto_aead *aead, const u8 *key,
struct crypto_ablkcipher *ctr = ctx->ctr;
struct {
be128 hash;
- u8 iv[8];
+ u8 iv[16];
struct crypto_gcm_setkey_result result;
@@ -639,7 +639,9 @@ static int crypto_gcm_create_common(struct crypto_template *tmpl,
ghash_alg = crypto_find_alg(ghash_name, &crypto_ahash_type,
CRYPTO_ALG_TYPE_HASH,
- CRYPTO_ALG_TYPE_AHASH_MASK);
+ CRYPTO_ALG_TYPE_AHASH_MASK |
+ crypto_requires_sync(algt->type,
+ algt->mask));
if (IS_ERR(ghash_alg))
return PTR_ERR(ghash_alg);