summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorTom Rini <[email protected]>2026-07-31 08:55:30 -0600
committerTom Rini <[email protected]>2026-07-31 08:55:30 -0600
commitbaa64b2f892890f00a377eac4a3e685472bb56b5 (patch)
tree2e8af85f8eabbe5aa8915ba0c3b62c41e3355247 /lib
parent1fc320fdf8f70f4a617520754cf0a2c1c65ae841 (diff)
parentd78ba22ab2df094a659a7ffa85e0787037f7e3a7 (diff)
Merge tag 'efi-2026-10-rc2-2' of https://git.u-boot-project.org/u-boot/custodians/u-boot-efi
Pull request efi-2026-10-rc2-2 CI: https://git.u-boot-project.org/u-boot/custodians/u-boot-efi/-/pipelines/839 Documentation: * README: Slightly rephrase env set and env print paragraph * cmd: gpt: Reinstate gpt setenv * CONTRIBUTE: replace "as" with "like" UEFI: * Unify the memory map output of 'efi mem' and 'efidebug memmap' * Print ISA-specific and unknown memory attributes * Rix memory leak in efi_sigstore_parse_siglist * Fix use of uninitialized guid in variable enumeration loops
Diffstat (limited to 'lib')
-rw-r--r--lib/efi_loader/efi_bootmgr.c2
-rw-r--r--lib/efi_loader/efi_signature.c10
2 files changed, 5 insertions, 7 deletions
diff --git a/lib/efi_loader/efi_bootmgr.c b/lib/efi_loader/efi_bootmgr.c
index 8c9a9b5eb56..8938b214ceb 100644
--- a/lib/efi_loader/efi_bootmgr.c
+++ b/lib/efi_loader/efi_bootmgr.c
@@ -934,6 +934,7 @@ static efi_status_t efi_bootmgr_delete_invalid_boot_option(struct eficonfig_medi
efi_status_t ret = EFI_SUCCESS;
u16 *delete_index_list = NULL, *p;
efi_uintn_t buf_size;
+ efi_guid_t guid;
buf_size = 128;
var_name16 = malloc(buf_size);
@@ -943,7 +944,6 @@ static efi_status_t efi_bootmgr_delete_invalid_boot_option(struct eficonfig_medi
var_name16[0] = 0;
for (;;) {
int index;
- efi_guid_t guid;
efi_uintn_t tmp;
ret = efi_next_variable_name(&buf_size, &var_name16, &guid);
diff --git a/lib/efi_loader/efi_signature.c b/lib/efi_loader/efi_signature.c
index f99a0c29d2b..c2be5cb61b3 100644
--- a/lib/efi_loader/efi_signature.c
+++ b/lib/efi_loader/efi_signature.c
@@ -647,7 +647,7 @@ static struct efi_signature_store *
efi_sigstore_parse_siglist(struct efi_signature_list *esl)
{
struct efi_signature_store *siglist = NULL;
- struct efi_sig_data *sig_data, *sig_data_next;
+ struct efi_sig_data *sig_data;
struct efi_signature_data *esd;
size_t left;
@@ -690,7 +690,6 @@ efi_sigstore_parse_siglist(struct efi_signature_list *esl)
memcpy(&siglist->sig_type, &esl->signature_type, sizeof(efi_guid_t));
/* Go through the list */
- sig_data_next = NULL;
left = esl->signature_list_size
- (sizeof(*esl) + esl->signature_header_size);
esd = (struct efi_signature_data *)
@@ -709,6 +708,9 @@ efi_sigstore_parse_siglist(struct efi_signature_list *esl)
goto err;
}
+ sig_data->next = siglist->sig_data_list;
+ siglist->sig_data_list = sig_data;
+
/* Append signature data */
memcpy(&sig_data->owner, &esd->signature_owner,
sizeof(efi_guid_t));
@@ -721,15 +723,11 @@ efi_sigstore_parse_siglist(struct efi_signature_list *esl)
}
memcpy(sig_data->data, esd->signature_data, sig_data->size);
- sig_data->next = sig_data_next;
- sig_data_next = sig_data;
-
/* Next */
esd = (struct efi_signature_data *)
((u8 *)esd + esl->signature_size);
left -= esl->signature_size;
}
- siglist->sig_data_list = sig_data_next;
return siglist;