[PATCH] boot: don't use the nfs:// mount path after freeing it
Ahmad Fatoum
a.fatoum at pengutronix.de
Wed Aug 26 03:13:33 PDT 2026
We free nfspath, while there is still a dangling reference to it in
the `name' variable:
nfspath = parse_nfs_url(name);
if (nfspath)
name = nfspath;
...
free(nfspath);
if (IS_ENABLED(CONFIG_COMMAND_SUPPORT) && !found) {
const char *path;
if (*name != '/')
Fix this by freeing it at the end of function.
Fixes: b5c00912524d ("boot: move nfs:// parsing out of bootloader spec code")
Reported-by: Chali Anis <chalianis1 at gmail.com>
Assisted-by: Claude:opus-5
Signed-off-by: Ahmad Fatoum <a.fatoum at pengutronix.de>
---
common/boot.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/common/boot.c b/common/boot.c
index dc1441d0dc91..0dbe8784d40c 100644
--- a/common/boot.c
+++ b/common/boot.c
@@ -473,8 +473,6 @@ int bootentry_create_from_name(struct bootentries *bootentries,
bootentries_merge(bootentries, &provider_bootentries);
}
- free(nfspath);
-
if (IS_ENABLED(CONFIG_COMMAND_SUPPORT) && !found) {
const char *path;
@@ -490,6 +488,8 @@ int bootentry_create_from_name(struct bootentries *bootentries,
free_const(path);
}
+ free(nfspath);
+
return found;
}
--
2.47.3
More information about the barebox
mailing list