summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorHeinrich Schuchardt <heinrich.schuchardt@canonical.com>2025-07-08 12:08:20 +0200
committerHeinrich Schuchardt <heinrich.schuchardt@canonical.com>2025-07-26 07:37:03 +0200
commitaa703a816a62deb876a1e77ccff030a7cc60f344 (patch)
tree923f0ea91b63757d8b726504f7e1bde424badf05 /lib
parentb9bb2627bbb672a8dce58c7da5c0e48b921a6b29 (diff)
efi_loader: efi_realloc() must check efi_alloc() return value
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>
Diffstat (limited to 'lib')
-rw-r--r--lib/efi_loader/efi_memory.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/lib/efi_loader/efi_memory.c b/lib/efi_loader/efi_memory.c
index 6dfc698a247..b77c2f980cc 100644
--- a/lib/efi_loader/efi_memory.c
+++ b/lib/efi_loader/efi_memory.c
@@ -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));