OSDN Git Service

crypto: essiv - use crypto_shash_tfm_digest()
authorEric Biggers <ebiggers@google.com>
Sat, 2 May 2020 05:31:05 +0000 (22:31 -0700)
committerHerbert Xu <herbert@gondor.apana.org.au>
Fri, 8 May 2020 05:32:13 +0000 (15:32 +1000)
Instead of manually allocating a 'struct shash_desc' on the stack and
calling crypto_shash_digest(), switch to using the new helper function
crypto_shash_tfm_digest() which does this for us.

Signed-off-by: Eric Biggers <ebiggers@google.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
crypto/essiv.c

index 465a89c..a7f45db 100644 (file)
@@ -66,7 +66,6 @@ static int essiv_skcipher_setkey(struct crypto_skcipher *tfm,
                                 const u8 *key, unsigned int keylen)
 {
        struct essiv_tfm_ctx *tctx = crypto_skcipher_ctx(tfm);
-       SHASH_DESC_ON_STACK(desc, tctx->hash);
        u8 salt[HASH_MAX_DIGESTSIZE];
        int err;
 
@@ -78,8 +77,7 @@ static int essiv_skcipher_setkey(struct crypto_skcipher *tfm,
        if (err)
                return err;
 
-       desc->tfm = tctx->hash;
-       err = crypto_shash_digest(desc, key, keylen, salt);
+       err = crypto_shash_tfm_digest(tctx->hash, key, keylen, salt);
        if (err)
                return err;