[PATCH] efi_loader: Prevent leak of memory from tmp_files
Andrew Goodbody
andrew.goodbody at linaro.org
Fri Oct 3 16:54:34 CEST 2025
After the malloc of tmp_files and before its value is recorded an early
exit will need to free tmp_files to prevent leaking that memory.
This issue was found by Smatch.
Signed-off-by: Andrew Goodbody <andrew.goodbody at linaro.org>
---
lib/efi_loader/efi_capsule.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/lib/efi_loader/efi_capsule.c b/lib/efi_loader/efi_capsule.c
index f19e78ae9d1e250f7bf8362f043877c6d10a9675..31b47a20186e036f6852c6baa4f353a5d7b97632 100644
--- a/lib/efi_loader/efi_capsule.c
+++ b/lib/efi_loader/efi_capsule.c
@@ -1096,8 +1096,10 @@ static efi_status_t efi_capsule_scan_dir(u16 ***files, unsigned int *num)
while (1) {
tmp_size = dirent_size;
ret = EFI_CALL((*dirh->read)(dirh, &tmp_size, dirent));
- if (ret != EFI_SUCCESS)
+ if (ret != EFI_SUCCESS) {
+ free(tmp_files);
goto err;
+ }
if (!tmp_size)
break;
---
base-commit: 8d22c596c6f82132c006ba89481275c60b5b0e2d
change-id: 20251003-efi_capsule-48cd72edc60a
Best regards,
--
Andrew Goodbody <andrew.goodbody at linaro.org>
More information about the U-Boot
mailing list