From f8918981407814dcdc9d70afd00ebf22df04fade Mon Sep 17 00:00:00 2001 From: Dmitry Baryshkov Date: Sat, 28 Mar 2020 02:29:31 +0300 Subject: padlock: fix exception in sha code padlock sha code will segfault (at least on Nano) if it is passed a NULL data pointer (even if size is 0). Pass digest output buffer as a dummy data pointer in such case. Signed-off-by: Dmitry Baryshkov --- lib/accelerated/x86/sha-padlock.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/lib/accelerated/x86/sha-padlock.c b/lib/accelerated/x86/sha-padlock.c index e878ebe310..bfb67f62e9 100644 --- a/lib/accelerated/x86/sha-padlock.c +++ b/lib/accelerated/x86/sha-padlock.c @@ -331,6 +331,8 @@ int wrap_padlock_hash_fast(gnutls_digest_algorithm_t algo, const void *text, size_t text_size, void *digest) { + if (text_size == 0 && text == NULL) + text = digest; if (algo == GNUTLS_DIG_SHA1) { uint32_t iv[5] = { 0x67452301UL, -- cgit v1.2.1