]> git.ipfire.org Git - thirdparty/u-boot.git/commitdiff
efi_loader: efi_realloc() must check efi_alloc() return value
authorHeinrich Schuchardt <heinrich.schuchardt@canonical.com>
Tue, 8 Jul 2025 10:08:20 +0000 (12:08 +0200)
committerHeinrich Schuchardt <heinrich.schuchardt@canonical.com>
Sat, 26 Jul 2025 05:37:03 +0000 (07:37 +0200)
Avoid copying to NULL if out of memory.

Fixes: 3c08df58cc43 ("lib: efi_loader: efi_memory.c: add efi_realloc() for realloc memory")
Addresses-Coverity-ID: 569499: Null pointer dereferences (NULL_RETURNS)
Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
lib/efi_loader/efi_memory.c

index 6dfc698a2479bfc7ed470f9f9a91ffe488523da5..b77c2f980cc029a80ed5d5902d10e8818d9c9b4a 100644 (file)
@@ -714,6 +714,8 @@ efi_status_t efi_realloc(void **ptr, size_t size)
                sizeof(struct efi_pool_allocation);
 
        new_ptr = efi_alloc(size);
+       if (!new_ptr)
+               return EFI_OUT_OF_RESOURCES;
 
        /* copy old data to new alloced buffer */
        memcpy(new_ptr, *ptr, min(size, old_size));