summaryrefslogtreecommitdiff
path: root/crypto/shash.c
diff options
context:
space:
mode:
authorJoonas Lahtinen <joonas.lahtinen@linux.intel.com>2023-08-07 13:29:40 +0300
committerJoonas Lahtinen <joonas.lahtinen@linux.intel.com>2023-08-07 13:29:40 +0300
commit4525522e3b5323f640023ff768c1b57af43766fc (patch)
tree182c053cd6cf5582bad3a673ad6475960d93acb5 /crypto/shash.c
parente60bd99e21a31895365d24377fd89b57e838d363 (diff)
parente8105153ef8ad9dd393d6fcbc6a4b72ab696e4b1 (diff)
downloadlinux-crypto-4525522e3b5323f640023ff768c1b57af43766fc.tar.gz
linux-crypto-4525522e3b5323f640023ff768c1b57af43766fc.zip
Merge drm/drm-next into drm-intel-gt-next
Need to pull in b3e4aae612ec ("drm/i915/hdcp: Modify hdcp_gsc_message msg sending mechanism") as a dependency for https://patchwork.freedesktop.org/series/121735/ Signed-off-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
Diffstat (limited to '')
-rw-r--r--crypto/shash.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/crypto/shash.c b/crypto/shash.c
index 717b42df..1fadb6b5 100644
--- a/crypto/shash.c
+++ b/crypto/shash.c
@@ -597,7 +597,7 @@ struct crypto_shash *crypto_clone_shash(struct crypto_shash *hash)
return hash;
}
- if (!alg->clone_tfm)
+ if (!alg->clone_tfm && (alg->init_tfm || alg->base.cra_init))
return ERR_PTR(-ENOSYS);
nhash = crypto_clone_tfm(&crypto_shash_type, tfm);
@@ -606,10 +606,12 @@ struct crypto_shash *crypto_clone_shash(struct crypto_shash *hash)
nhash->descsize = hash->descsize;
- err = alg->clone_tfm(nhash, hash);
- if (err) {
- crypto_free_shash(nhash);
- return ERR_PTR(err);
+ if (alg->clone_tfm) {
+ err = alg->clone_tfm(nhash, hash);
+ if (err) {
+ crypto_free_shash(nhash);
+ return ERR_PTR(err);
+ }
}
return nhash;