summaryrefslogtreecommitdiff
path: root/crypto/shash.c
diff options
context:
space:
mode:
authorThomas Gleixner <tglx@linutronix.de>2020-06-30 12:07:51 +0200
committerThomas Gleixner <tglx@linutronix.de>2020-06-30 12:07:51 +0200
commit775a75f3d61c6fc82bedc5b727784d3cb7089d81 (patch)
treeb2869d8a2378b79448add1f41f01982b7fae82fb /crypto/shash.c
parent3278a1722acf54316ac94db3f3a83aed32857edc (diff)
parentd2868ae33ab257f2273d436b38cc390414a9384f (diff)
downloadlinux-crypto-775a75f3d61c6fc82bedc5b727784d3cb7089d81.tar.gz
linux-crypto-775a75f3d61c6fc82bedc5b727784d3cb7089d81.zip
Merge tag 'irqchip-fixes-5.8-1' of git://git.kernel.org/pub/scm/linux/kernel/git/maz/arm-platforms into irq/urgent
Pull irqchip fixes from Marc Zyngier: - Fix atomicity of affinity update in the GIC driver - Don't sleep in atomic when waiting for a GICv4.1 RD to respond - Fix a couple of typos in user-visible messages
Diffstat (limited to 'crypto/shash.c')
-rw-r--r--crypto/shash.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/crypto/shash.c b/crypto/shash.c
index c075b26c..e6a4b5f3 100644
--- a/crypto/shash.c
+++ b/crypto/shash.c
@@ -206,6 +206,22 @@ int crypto_shash_digest(struct shash_desc *desc, const u8 *data,
}
EXPORT_SYMBOL_GPL(crypto_shash_digest);
+int crypto_shash_tfm_digest(struct crypto_shash *tfm, const u8 *data,
+ unsigned int len, u8 *out)
+{
+ SHASH_DESC_ON_STACK(desc, tfm);
+ int err;
+
+ desc->tfm = tfm;
+
+ err = crypto_shash_digest(desc, data, len, out);
+
+ shash_desc_zero(desc);
+
+ return err;
+}
+EXPORT_SYMBOL_GPL(crypto_shash_tfm_digest);
+
static int shash_default_export(struct shash_desc *desc, void *out)
{
memcpy(out, shash_desc_ctx(desc), crypto_shash_descsize(desc->tfm));