From: xypron.glpk@gmx.de Date: Fri, 14 Jul 2017 17:12:39 +0000 (+0200) Subject: efi_memory: avoid NULL dereference in efi_free_pool X-Git-Tag: v2017.09-rc1~13^2~31 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=71275a3e985db60b53b381f5253fdb15c663e18e;p=oweals%2Fu-boot.git efi_memory: avoid NULL dereference in efi_free_pool If efi_free_pool is called with argument NULL an illegal memory access occurs. So let's check the parameter on entry. 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 db2ae19f59..5c53aaafdb 100644 --- a/lib/efi_loader/efi_memory.c +++ b/lib/efi_loader/efi_memory.c @@ -379,6 +379,9 @@ efi_status_t efi_free_pool(void *buffer) efi_status_t r; struct efi_pool_allocation *alloc; + if (buffer == NULL) + return EFI_INVALID_PARAMETER; + alloc = container_of(buffer, struct efi_pool_allocation, data); /* Sanity check, was the supplied address returned by allocate_pool */ assert(((uintptr_t)alloc & EFI_PAGE_MASK) == 0);