[PATCH] efi_loader: check uuid_str_to_bin return value

Heinrich Schuchardt xypron.glpk at gmx.de
Wed Aug 2 23:36:28 CEST 2023


On 7/31/23 10:53, Masahisa Kojima wrote:
> Check the uuid_str_to_bin return value, skip the node
> if the image-type-id property is wrong format.
>
> Addresses-Coverity-ID: 463145 ("Error handling issues")
> Signed-off-by: Masahisa Kojima <masahisa.kojima at linaro.org>

Reviewed-by: Heinrich Schuchardt <xypron.glpk at gmx.de>

> ---
>   lib/efi_loader/efi_firmware.c | 8 ++++++--
>   1 file changed, 6 insertions(+), 2 deletions(-)
>
> diff --git a/lib/efi_loader/efi_firmware.c b/lib/efi_loader/efi_firmware.c
> index b557738370..9abb29f1df 100644
> --- a/lib/efi_loader/efi_firmware.c
> +++ b/lib/efi_loader/efi_firmware.c
> @@ -159,7 +159,7 @@ static void efi_firmware_get_lsv_from_dtb(u8 image_index,
>   	const fdt32_t *val;
>   	const char *guid_str;
>   	int len, offset, index;
> -	int parent;
> +	int parent, ret;
>
>   	*lsv = 0;
>
> @@ -173,7 +173,11 @@ static void efi_firmware_get_lsv_from_dtb(u8 image_index,
>   		guid_str = fdt_getprop(fdt, offset, "image-type-id", &len);
>   		if (!guid_str)
>   			continue;
> -		uuid_str_to_bin(guid_str, guid.b, UUID_STR_FORMAT_GUID);
> +		ret = uuid_str_to_bin(guid_str, guid.b, UUID_STR_FORMAT_GUID);
> +		if (ret < 0) {
> +			log_warning("Wrong image-type-id format.\n");
> +			continue;
> +		}
>
>   		val = fdt_getprop(fdt, offset, "image-index", &len);
>   		if (!val)


More information about the U-Boot mailing list