crypto: aead - pass instance to crypto_grab_aead()
authorEric Biggers <ebiggers@google.com>
Fri, 3 Jan 2020 03:58:46 +0000 (19:58 -0800)
committerHerbert Xu <herbert@gondor.apana.org.au>
Thu, 9 Jan 2020 03:30:54 +0000 (11:30 +0800)
commitcd900f0cacd7601dabdd028e8cbdbf2a7041cee2
treeee7a4e59f6dd405c03d544ec877f3f33ec3ba685
parentb9f76dddb1f9f70e008b982381bbc9a67c9b8c66
crypto: aead - pass instance to crypto_grab_aead()

Initializing a crypto_aead_spawn currently requires:

1. Set spawn->base.inst to point to the instance.
2. Call crypto_grab_aead().

But there's no reason for these steps to be separate, and in fact this
unneeded complication has caused at least one bug, the one fixed by
commit 6db43410179b ("crypto: adiantum - initialize crypto_spawn::inst")

So just make crypto_grab_aead() take the instance as an argument.

To keep the function calls from getting too unwieldy due to this extra
argument, also introduce a 'mask' variable into the affected places
which weren't already using one.

Signed-off-by: Eric Biggers <ebiggers@google.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
crypto/aead.c
crypto/ccm.c
crypto/cryptd.c
crypto/essiv.c
crypto/gcm.c
crypto/geniv.c
crypto/pcrypt.c
include/crypto/internal/aead.h