efi_loader: handle malloc() errors
authorVincent Stehlé <vincent.stehle@arm.com>
Tue, 1 Apr 2025 11:15:00 +0000 (13:15 +0200)
committerHeinrich Schuchardt <heinrich.schuchardt@canonical.com>
Fri, 11 Apr 2025 11:25:27 +0000 (13:25 +0200)
The new_packagelist() function of the HII Protocols implementation is
calling malloc() without checking its return code; fix this.

Signed-off-by: Vincent Stehlé <vincent.stehle@arm.com>
Cc: Heinrich Schuchardt <xypron.glpk@gmx.de>
Cc: Ilias Apalodimas <ilias.apalodimas@linaro.org>
Cc: Tom Rini <trini@konsulko.com>
Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
lib/efi_loader/efi_hii.c

index 4423597..330d7c5 100644 (file)
@@ -343,6 +343,9 @@ static struct efi_hii_packagelist *new_packagelist(void)
        struct efi_hii_packagelist *hii;
 
        hii = malloc(sizeof(*hii));
+       if (!hii)
+               return NULL;
+
        list_add_tail(&hii->link, &efi_package_lists);
        hii->max_string_id = 0;
        INIT_LIST_HEAD(&hii->string_tables);