[PATCH v4 3/3] certs: don't try to update blacklist keys

, Jarkko Sakkinen jarkko at kernel.org
Wed Jan 4 12:35:06 UTC 2023


On Wed, Dec 21, 2022 at 02:08:24AM +0000, Thomas Weißschuh wrote:
> When the same key is blacklisted repeatedly logging at pr_err() level is
> excessive as no functionality is impaired.
> When these duplicates are provided by buggy firmware there is nothing
> the user can do to fix the situation.
> Instead of spamming the bootlog with errors we use a warning that can
> still be seen by OEMs when testing their firmware.
> 
> Link: https://lore.kernel.org/all/c8c65713-5cda-43ad-8018-20f2e32e4432@t-8ch.de/
> Link: https://lore.kernel.org/all/20221104014704.3469-1-linux@weissschuh.net/
> Signed-off-by: Thomas Weißschuh <linux at weissschuh.net>
> Tested-by: Paul Menzel <pmenzel at molgen.mpg.de>
> ---
>  certs/blacklist.c | 21 ++++++++++++---------
>  1 file changed, 12 insertions(+), 9 deletions(-)
> 
> diff --git a/certs/blacklist.c b/certs/blacklist.c
> index 6e260c4b6a19..675dd7a8f07a 100644
> --- a/certs/blacklist.c
> +++ b/certs/blacklist.c
> @@ -183,16 +183,19 @@ static int mark_raw_hash_blacklisted(const char *hash)
>  {
>  	key_ref_t key;
>  
> -	key = key_create_or_update(make_key_ref(blacklist_keyring, true),
> -				   "blacklist",
> -				   hash,
> -				   NULL,
> -				   0,
> -				   BLACKLIST_KEY_PERM,
> -				   KEY_ALLOC_NOT_IN_QUOTA |
> -				   KEY_ALLOC_BUILT_IN);
> +	key = key_create(make_key_ref(blacklist_keyring, true),
> +			 "blacklist",
> +			 hash,
> +			 NULL,
> +			 0,
> +			 BLACKLIST_KEY_PERM,
> +			 KEY_ALLOC_NOT_IN_QUOTA |
> +			 KEY_ALLOC_BUILT_IN);
>  	if (IS_ERR(key)) {
> -		pr_err("Problem blacklisting hash %s: %pe\n", hash, key);
> +		if (PTR_ERR(key) == -EEXIST)
> +			pr_warn("Duplicate blacklisted hash %s\n", hash);
> +		else
> +			pr_err("Problem blacklisting hash %s: %pe\n", hash, key);
>  		return PTR_ERR(key);
>  	}
>  	return 0;
> 
> -- 
> 2.39.0

Reviewed-by: Jarkko Sakkinen <jarko at kernel.org>

BR, Jarkko



More information about the Linux-security-module-archive mailing list