]> git.ipfire.org Git - thirdparty/grub.git/commitdiff
efi: Avoid NULL dereference if FilePath is NULL
authorHeinrich Schuchardt <xypron.glpk@gmx.de>
Wed, 17 Apr 2019 05:12:56 +0000 (07:12 +0200)
committerDaniel Kiper <daniel.kiper@oracle.com>
Tue, 23 Apr 2019 09:33:02 +0000 (11:33 +0200)
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 <xypron.glpk@gmx.de>
Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
grub-core/kern/efi/efi.c

index 708581fcbde007fc0174be636771b401d5e69ea2..84e68cf31ce14c22c321bfacf58a5fe1a54b4477 100644 (file)
@@ -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)