diff options
author | Nayna Jain <nayna@linux.ibm.com> | 2019-10-30 23:31:31 -0400 |
---|---|---|
committer | Sasha Levin <sashal@kernel.org> | 2021-06-30 08:47:55 -0400 |
commit | ac7d3f554472de4b8832bf68b6f13280c777340b (patch) | |
tree | 687afd8e62636fc97558f32f21a169a21980d711 /certs | |
parent | 61168eafe0241ad96821aa3e65aa3dcefeee98cf (diff) |
certs: Add wrapper function to check blacklisted binary hash
[ Upstream commit 2434f7d2d488c3301ae81f1031e1c66c6f076fb7 ]
The -EKEYREJECTED error returned by existing is_hash_blacklisted() is
misleading when called for checking against blacklisted hash of a
binary.
This patch adds a wrapper function is_binary_blacklisted() to return
-EPERM error if binary is blacklisted.
Signed-off-by: Nayna Jain <nayna@linux.ibm.com>
Reviewed-by: Mimi Zohar <zohar@linux.ibm.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/1572492694-6520-7-git-send-email-zohar@linux.ibm.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'certs')
-rw-r--r-- | certs/blacklist.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/certs/blacklist.c b/certs/blacklist.c index 025a41de28fd..f1c434b04b5e 100644 --- a/certs/blacklist.c +++ b/certs/blacklist.c @@ -135,6 +135,15 @@ int is_hash_blacklisted(const u8 *hash, size_t hash_len, const char *type) } EXPORT_SYMBOL_GPL(is_hash_blacklisted); +int is_binary_blacklisted(const u8 *hash, size_t hash_len) +{ + if (is_hash_blacklisted(hash, hash_len, "bin") == -EKEYREJECTED) + return -EPERM; + + return 0; +} +EXPORT_SYMBOL_GPL(is_binary_blacklisted); + /* * Initialise the blacklist */ |