OSDN Git Service

crypto: ccp - use crypto_shash_tfm_digest()
authorEric Biggers <ebiggers@google.com>
Sat, 2 May 2020 05:31:07 +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.

Cc: Tom Lendacky <thomas.lendacky@amd.com>
Signed-off-by: Eric Biggers <ebiggers@google.com>
Acked-by: Tom Lendacky <thomas.lendacky@amd.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
drivers/crypto/ccp/ccp-crypto-sha.c

index 474e6f1..b0cc2bd 100644 (file)
@@ -272,9 +272,6 @@ static int ccp_sha_setkey(struct crypto_ahash *tfm, const u8 *key,
 {
        struct ccp_ctx *ctx = crypto_tfm_ctx(crypto_ahash_tfm(tfm));
        struct crypto_shash *shash = ctx->u.sha.hmac_tfm;
-
-       SHASH_DESC_ON_STACK(sdesc, shash);
-
        unsigned int block_size = crypto_shash_blocksize(shash);
        unsigned int digest_size = crypto_shash_digestsize(shash);
        int i, ret;
@@ -289,10 +286,8 @@ static int ccp_sha_setkey(struct crypto_ahash *tfm, const u8 *key,
 
        if (key_len > block_size) {
                /* Must hash the input key */
-               sdesc->tfm = shash;
-
-               ret = crypto_shash_digest(sdesc, key, key_len,
-                                         ctx->u.sha.key);
+               ret = crypto_shash_tfm_digest(shash, key, key_len,
+                                             ctx->u.sha.key);
                if (ret)
                        return -EINVAL;