summaryrefslogtreecommitdiffstats
path: root/crypto/ccm.c
diff options
context:
space:
mode:
authorArd Biesheuvel <ard.biesheuvel@linaro.org>2017-02-11 20:25:22 +0100
committerHerbert Xu <herbert@gondor.apana.org.au>2017-02-15 06:23:46 +0100
commit5ba8e2a05ed6695f38f3961ca8cb5cfc1063a842 (patch)
treeb23b9675dd7f7e59e02d11c653f37379f29b4bdc /crypto/ccm.c
parentcrypto: ccm - honour alignmask of subordinate MAC cipher (diff)
downloadlinux-5ba8e2a05ed6695f38f3961ca8cb5cfc1063a842.tar.xz
linux-5ba8e2a05ed6695f38f3961ca8cb5cfc1063a842.zip
crypto: ccm - drop unnecessary minimum 32-bit alignment
The CCM driver forces 32-bit alignment even if the underlying ciphers don't care about alignment. This is because crypto_xor() used to require this, but since this is no longer the case, drop the hardcoded minimum of 32 bits. Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'crypto/ccm.c')
-rw-r--r--crypto/ccm.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/crypto/ccm.c b/crypto/ccm.c
index 24c26ab052ca..442848807a52 100644
--- a/crypto/ccm.c
+++ b/crypto/ccm.c
@@ -525,8 +525,7 @@ static int crypto_ccm_create_common(struct crypto_template *tmpl,
ctr->base.cra_priority) / 2;
inst->alg.base.cra_blocksize = 1;
inst->alg.base.cra_alignmask = mac->base.cra_alignmask |
- ctr->base.cra_alignmask |
- (__alignof__(u32) - 1);
+ ctr->base.cra_alignmask;
inst->alg.ivsize = 16;
inst->alg.chunksize = crypto_skcipher_alg_chunksize(ctr);
inst->alg.maxauthsize = 16;