crypto: hash - Add crypto_clone_ahash/shash
authorHerbert Xu <herbert@gondor.apana.org.au>
Thu, 13 Apr 2023 06:24:19 +0000 (14:24 +0800)
committerHerbert Xu <herbert@gondor.apana.org.au>
Thu, 20 Apr 2023 10:20:04 +0000 (18:20 +0800)
commited3630b83e9394acef27041de7a2223f1e875e9a
tree9f18ad66b747c4a5a9698a61444f2509eefd1756
parent3c3a24cb0ae46c9c45e4ce2272f84f0504831f59
crypto: hash - Add crypto_clone_ahash/shash

This patch adds the helpers crypto_clone_ahash and crypto_clone_shash.
They are the hash-specific counterparts of crypto_clone_tfm.

This allows code paths that cannot otherwise allocate a hash tfm
object to do so.  Once a new tfm has been obtained its key could
then be changed without impacting other users.

Note that only algorithms that implement clone_tfm can be cloned.
However, all keyless hashes can be cloned by simply reusing the
tfm object.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Reviewed-by: Simon Horman <simon.horman@corigine.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
crypto/ahash.c
crypto/hash.h
crypto/shash.c
include/crypto/hash.h
include/crypto/internal/hash.h