From: Eric Biggers <ebigg...@google.com>

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 <ebigg...@google.com>
---
 fs/crypto/fname.c | 7 +------
 fs/crypto/hkdf.c  | 6 +-----
 2 files changed, 2 insertions(+), 11 deletions(-)

diff --git a/fs/crypto/fname.c b/fs/crypto/fname.c
index 4c212442a8f7f1..5c9fb013e3f757 100644
--- a/fs/crypto/fname.c
+++ b/fs/crypto/fname.c
@@ -83,13 +83,8 @@ static int fscrypt_do_sha256(const u8 *data, unsigned int 
data_len, u8 *result)
                        tfm = prev_tfm;
                }
        }
-       {
-               SHASH_DESC_ON_STACK(desc, tfm);
 
-               desc->tfm = tfm;
-
-               return crypto_shash_digest(desc, data, data_len, result);
-       }
+       return crypto_shash_tfm_digest(tfm, data, data_len, result);
 }
 
 static inline bool fscrypt_is_dot_dotdot(const struct qstr *str)
diff --git a/fs/crypto/hkdf.c b/fs/crypto/hkdf.c
index efb95bd19a8948..0cba7928446d34 100644
--- a/fs/crypto/hkdf.c
+++ b/fs/crypto/hkdf.c
@@ -44,17 +44,13 @@ static int hkdf_extract(struct crypto_shash *hmac_tfm, 
const u8 *ikm,
                        unsigned int ikmlen, u8 prk[HKDF_HASHLEN])
 {
        static const u8 default_salt[HKDF_HASHLEN];
-       SHASH_DESC_ON_STACK(desc, hmac_tfm);
        int err;
 
        err = crypto_shash_setkey(hmac_tfm, default_salt, HKDF_HASHLEN);
        if (err)
                return err;
 
-       desc->tfm = hmac_tfm;
-       err = crypto_shash_digest(desc, ikm, ikmlen, prk);
-       shash_desc_zero(desc);
-       return err;
+       return crypto_shash_tfm_digest(hmac_tfm, ikm, ikmlen, prk);
 }
 
 /*
-- 
2.26.2

Reply via email to