Displaying 5 results from an estimated 5 matches for "syslinux_local_boot".
2010 Jul 27
1
Return from syslinux_local_boot(), syslinux_run_command() and syslinux_boot_linux()
gfxboot uses those three calls, but currently doesn't really handle returns from them.
syslinux_boot_linux (lib/syslinux/load_linux.c) can return ("bail" label).
syslinux_local_boot (lib/syslinux/localboot.c) has a comment which says "returns
only on failure". The documentation for "Local boot" in doc/comboot.txt says "Does
not return". Which is correct?
syslinux_run_command (lib/syslinux/run_command.c) should not return according to
the comment...
2012 Apr 26
2
Problems booting from local hd
Hi,
I've got a question regarding pxelinux:
It seems that there is a buck in syslinux 3.86 (or still is in the current build) in the reset_pxe function. If I call "syslinux_local_boot(0)" (in a COM32 binary) the KeepPXE variable is always 1 which resets the PXE stack instead of unloading it:
local_boot:
push cs
pop ds
mov [LocalBootType],ax
call vgaclearmode
mov si,localboot_msg
call writestr_early
; Restore the environment we were called with
call reset_px...
2011 Aug 17
1
[patch 1/1] syslinux: add suport for com32 entries in the menu
...menu_ptr->com32 = strdup(t);
+ continue;
+ }
+
if(!strcasecmp(s, "initrd") && menu_ptr) {
menu_ptr->initrd = strdup(t);
continue;
@@ -866,7 +872,13 @@ void boot_entry(menu_t *menu_ptr, char *
if(menu_ptr->localboot) {
gfx_done();
syslinux_local_boot(strtol(menu_ptr->localboot, NULL, 0));
+ return;
+ }
+ if(menu_ptr->com32) {
+ gfx_done();
+ asprintf(&cmd_buf, "%s %s", menu_ptr->com32, arg);
+ syslinux_run_command(cmd_buf);
return;
}
2010 Apr 23
1
Path simple menu integrated progress indicator
...ireg);
-
kernel = q;
p = cmdline;
while (*p && !my_isspace(*p)) {
@@ -48,22 +151,60 @@ void execute(const char *cmdline, enum k
}
if (type == KT_LOCALBOOT) {
- ireg.eax.w[0] = 0x0014; /* Local boot */
- ireg.edx.w[0] = strtoul(kernel, NULL, 0);
+ syslinux_local_boot(strtoul(kernel,NULL,0));
} else {
- if (type < KT_KERNEL)
- type = KT_KERNEL;
- ireg.eax.w[0] = 0x0016; /* Run kernel image */
- ireg.esi.w[0] = OFFS(kernel);
- ireg.ds = SEG(kernel);
- ireg.ebx.w[0] = OFFS(args);
- ireg.es = SEG(args);
-...
2007 Apr 10
1
[PATCH] Add support for DHCP-Options
..._subst(argv[i]);
+ append_output(&cmdline, &cmd_len, out, strlen(out));
+ free(out);
+ if (i+1 < argc)
+ append_output(&cmdline, &cmd_len, " ", 1);
+ }
+ printf("subst: cmdline=%s\n", cmdline);
+ if (memcmp(cmdline, ".localboot ", 11) == 0) {
+ syslinux_local_boot(strtol(cmdline+11, NULL, 0));
+ }
+ syslinux_run_command(cmdline);
+
+ return 0;
+}