From: Heinrich Schuchardt Date: Mon, 6 Aug 2018 20:28:18 +0000 (+0200) Subject: efi_loader: avoid NULL dereference in efi_get_memory_map() X-Git-Tag: v2018.09-rc3~33^2~8 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=fa995d0d9471b630d2d1942000d5a4f065c5cdd5;p=oweals%2Fu-boot.git efi_loader: avoid NULL dereference in efi_get_memory_map() We should only dereference parameter memory_map_size after checking that it is valid. Fixes: 8e835554b36b ("efi_loader: check parameters of GetMemoryMap") Signed-off-by: Heinrich Schuchardt Signed-off-by: Alexander Graf --- diff --git a/lib/efi_loader/efi_memory.c b/lib/efi_loader/efi_memory.c index 4b6269f35e..3ee1079e75 100644 --- a/lib/efi_loader/efi_memory.c +++ b/lib/efi_loader/efi_memory.c @@ -457,11 +457,13 @@ efi_status_t efi_get_memory_map(efi_uintn_t *memory_map_size, efi_uintn_t map_size = 0; int map_entries = 0; struct list_head *lhandle; - efi_uintn_t provided_map_size = *memory_map_size; + efi_uintn_t provided_map_size; if (!memory_map_size) return EFI_INVALID_PARAMETER; + provided_map_size = *memory_map_size; + list_for_each(lhandle, &efi_mem) map_entries++;