On Tue, Apr 16, 2019 at 08:01:10PM +0200, Heinrich Schuchardt wrote:
> The UEFI specification allows LoadImage() to be called with a memory
> location only and without a device path. In this case FilePath will not be
> set in the EFI_LOADED_IMAGE_PROTOCOL.
> 
> So in function grub_efi_get_filename() the device path argument may be
> NULL. As we cannot determine the device path in this case just return NULL
> from the function.
> 
> Signed-off-by: Heinrich Schuchardt <[email protected]>

Reviewed-by: Leif Lindholm <[email protected]>

> ---
>  grub-core/kern/efi/efi.c | 3 +++
>  1 file changed, 3 insertions(+)
> 
> diff --git a/grub-core/kern/efi/efi.c b/grub-core/kern/efi/efi.c
> index 708581fcb..84e68cf31 100644
> --- a/grub-core/kern/efi/efi.c
> +++ b/grub-core/kern/efi/efi.c
> @@ -327,6 +327,9 @@ grub_efi_get_filename (grub_efi_device_path_t *dp0)
>    grub_size_t filesize = 0;
>    grub_efi_device_path_t *dp;
> 
> +  if (!dp0)
> +    return NULL;
> +
>    dp = dp0;
> 
>    while (1)
> --
> 2.20.1
> 

_______________________________________________
Bug-grub mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/bug-grub

Reply via email to