Syslinux configs commonly use LINUX instead of KERNEL to name the
kernel image. parse_extlinux_conf() only checked for KERNEL, so a
LABEL block using LINUX left entry->kernel unset. parse_extlinux_conf()
requires a kernel path to accept an entry, so the whole extlinux.conf
was rejected instead of just the one line being ignored.

Fixes: b912fa9fc3ca ("Add support for extlinux.conf")
Signed-off-by: Stephano Cetola <[email protected]>
---
 common/extlinux.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/common/extlinux.c b/common/extlinux.c
index caa62923da..92c49ebbce 100644
--- a/common/extlinux.c
+++ b/common/extlinux.c
@@ -132,7 +132,7 @@ static struct extlinux_entry *parse_extlinux_conf(const 
char *abspath,
                }
 
                if (entry) {
-                       if (!strcasecmp(key, "KERNEL"))
+                       if (!strcasecmp(key, "KERNEL") || !strcasecmp(key, 
"LINUX"))
                                entry->kernel = xstrdup(val);
                        else if (!strcasecmp(key, "INITRD"))
                                entry->initrd = xstrdup(val);

---
base-commit: 9bc1a26592a59919d2ee8c60c273d87d3d9f2e81
change-id: 20260822-send-extlinux-linux-keyword-ce52ee90d321


Reply via email to