aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorH. Peter Anvin <hpa@zytor.com>2009-07-28 20:19:14 -0700
committerH. Peter Anvin <hpa@zytor.com>2009-07-28 20:20:16 -0700
commit3cdc491e358508621ce19d851f148aa2932b87bf (patch)
tree9292e9b52b49adb1b0a071db046085187c6d5652
parentf4b44a7b44faf9bcc345153f3ba23cabc68135da (diff)
downloadsyslinux.git-3cdc491e358508621ce19d851f148aa2932b87bf.tar.gz
syslinux.git-3cdc491e358508621ce19d851f148aa2932b87bf.tar.xz
syslinux.git-3cdc491e358508621ce19d851f148aa2932b87bf.zip
PXELINUX: allow filenames up to 251 characters longsyslinux-3.83-pre2
At least one users really need this, so be nice and provide it... Signed-off-by: H. Peter Anvin <hpa@zytor.com>
-rw-r--r--NEWS1
-rw-r--r--core/parsecmd.inc2
-rw-r--r--core/pxelinux.asm2
3 files changed, 4 insertions, 1 deletions
diff --git a/NEWS b/NEWS
index 3f14e48d..41b01569 100644
--- a/NEWS
+++ b/NEWS
@@ -8,6 +8,7 @@ Changes in 3.83:
* PXELINUX: fix localboot after NBP chainloading on certain
BIOSes (including ASUS A8N-E, but possibly others.)
* chain.c32: support chainloaded bootloaders on ISOLINUX.
+ * PXELINUX: allow filenames up to 251 characters.
Changes in 3.82:
* isohybrid: fix the -partok logic for loading from a partition.
diff --git a/core/parsecmd.inc b/core/parsecmd.inc
index e63c205e..1ddd5a0e 100644
--- a/core/parsecmd.inc
+++ b/core/parsecmd.inc
@@ -117,6 +117,8 @@ VKernelBuf: resb vk_size ; "Current" vkernel
AppendBuf resb max_cmd_len+1 ; append=
Ontimeout resb max_cmd_len+1 ; ontimeout
Onerror resb max_cmd_len+1 ; onerror
+ ; This could be in .uibss but that makes PXELINUX overflow
+ section .bss
KbdMap resb 256 ; Keyboard map
FKeyName resb MAX_FKEYS*FILENAME_MAX ; File names for F-key help
KernelCNameLen resw 1 ; Length of unmangled kernel name
diff --git a/core/pxelinux.asm b/core/pxelinux.asm
index 58201a0b..190f4c66 100644
--- a/core/pxelinux.asm
+++ b/core/pxelinux.asm
@@ -29,7 +29,7 @@
; Some semi-configurable constants... change on your own risk.
;
my_id equ pxelinux_id
-FILENAME_MAX_LG2 equ 7 ; log2(Max filename size Including final null)
+FILENAME_MAX_LG2 equ 8 ; log2(Max filename size Including final null)
FILENAME_MAX equ (1 << FILENAME_MAX_LG2)
NULLFILE equ 0 ; Zero byte == null file name
NULLOFFSET equ 4 ; Position in which to look