diff options
author | H. Peter Anvin <hpa@zytor.com> | 2009-04-29 15:55:21 -0700 |
---|---|---|
committer | H. Peter Anvin <hpa@zytor.com> | 2009-04-29 15:55:21 -0700 |
commit | 09c6e1db4388070a480395cb3244c1d37c67c09c (patch) | |
tree | 0f58e76bbb0cd15e4e8da3a99b4174a5b14ff3b3 /core/parseconfig.inc | |
parent | 95cbcc17daf68855198b5a67b6e4795bf97f3f5f (diff) | |
download | syslinux-09c6e1db4388070a480395cb3244c1d37c67c09c.tar.gz |
core: make localboot another vkernel typesyslinux-3.80-pre4
Change "localboot" to be another vkernel type. It still needs some
special treatment (because it doesn't take a filename), but overall
this makes it a lot cleaner than what it was before. It should also
avoid the problem of empty labels (e.g. menu quit) doing weird things.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
Diffstat (limited to 'core/parseconfig.inc')
-rw-r--r-- | core/parseconfig.inc | 15 |
1 files changed, 3 insertions, 12 deletions
diff --git a/core/parseconfig.inc b/core/parseconfig.inc index 5159a1a3..ce5450c9 100644 --- a/core/parseconfig.inc +++ b/core/parseconfig.inc @@ -83,24 +83,15 @@ pc_ipappend: call getint %endif ; -; "localboot" command (PXELINUX, ISOLINUX) +; "localboot" command ; %if HAS_LOCALBOOT pc_localboot: call getint cmp byte [VKernel],0 ; ("label" section only) je .err - mov di,VKernelBuf+vk_rname - xor ax,ax - mov cx,FILENAME_MAX - rep stosb ; Null kernel name -%if IS_PXELINUX - ; PXELINUX uses the first 4 bytes of vk_rname for the - ; mangled IP address - mov [VKernelBuf+vk_rname+5], bx ; Return type -%else - mov [VKernelBuf+vk_rname+1], bx ; Return type -%endif + mov [VKernelBuf+vk_rname],bx + mov byte [VKernelBuf+vk_type],VK_LOCALBOOT .err: ret %endif ; HAS_LOCALBOOT |