From 3daf1321a6c60618070f7775a0136e81929188a9 Mon Sep 17 00:00:00 2001 From: Ben Hutchings Date: Sun, 5 May 2019 13:45:06 +0100 Subject: [PATCH] MODSIGN: Make shash allocation failure fatal mod_is_hash_blacklisted() currently returns 0 (suceess) if crypto_alloc_shash() fails. This should instead be a fatal error, so unwrap and pass up the error code. Signed-off-by: Ben Hutchings Gbp-Pq: Topic features/all/db-mok-keyring Gbp-Pq: Name modsign-make-shash-allocation-failure-fatal.patch --- kernel/module/signing.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/kernel/module/signing.c b/kernel/module/signing.c index 26e36fc8ff4..494aa421916 100644 --- a/kernel/module/signing.c +++ b/kernel/module/signing.c @@ -45,11 +45,13 @@ static int mod_is_hash_blacklisted(const void *mod, size_t verifylen) struct shash_desc *desc; size_t digest_size, desc_size; u8 *digest; - int ret = 0; + int ret; tfm = crypto_alloc_shash("sha256", 0, 0); - if (IS_ERR(tfm)) + if (IS_ERR(tfm)) { + ret = PTR_ERR(tfm); goto error_return; + } desc_size = crypto_shash_descsize(tfm) + sizeof(*desc); digest_size = crypto_shash_digestsize(tfm); -- 2.30.2