[PATCH] efi_loader: Check for a valid fw_name before auto generating GUIDs
Caleb Connolly
caleb.connolly at linaro.org
Thu Dec 5 14:09:27 CET 2024
On 03/12/2024 17:13, Ilias Apalodimas wrote:
> The gen_v5_guid() is a void and does no error checking with pointers
> being available etc. Instead it expects all things to be in place to
> generate GUIDs. If a board capsule definition is buggy and does not
> define the firmware names when enabling capsule updates, the board will
> crash trying to bring up the EFI subsystem.
>
> Check for a valid firmware name before generating GUIDs.
>
> Signed-off-by: Ilias Apalodimas <ilias.apalodimas at linaro.org>
Reviewed-by: Caleb Connolly <caleb.connolly at linaro.org>
> ---
> lib/efi_loader/efi_firmware.c | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/lib/efi_loader/efi_firmware.c b/lib/efi_loader/efi_firmware.c
> index 6650c2b8071d..112775daf4c3 100644
> --- a/lib/efi_loader/efi_firmware.c
> +++ b/lib/efi_loader/efi_firmware.c
> @@ -281,6 +281,10 @@ static efi_status_t efi_gen_capsule_guids(void)
> }
>
> for (i = 0; i < update_info.num_images; i++) {
> + if (!fw_array[i].fw_name) {
> + log_err("fw_name is not defined. Not generating capsule GUIDs\n");
> + return EFI_INVALID_PARAMETER;
> + }
> gen_v5_guid(&namespace,
> &fw_array[i].image_type_id,
> compatible, strlen(compatible),
> -
> 2.45.2
>
--
// Caleb (they/them)
More information about the U-Boot
mailing list