# HG changeset patch # User Pascal Bellard # Date 1393966829 0 # Node ID 3bb29e042c1c9a1203cb811e0a9995f153b6bd81 # Parent ead8572c67e90dd6a2685c5628bc9aa438a6873d syslinux/iso2exe: access both local and isofs namespaces diff -r ead8572c67e9 -r 3bb29e042c1c syslinux/stuff/iso2exe/boot.c --- a/syslinux/stuff/iso2exe/boot.c Tue Mar 04 20:34:28 2014 +0000 +++ b/syslinux/stuff/iso2exe/boot.c Tue Mar 04 21:00:29 2014 +0000 @@ -15,7 +15,7 @@ Examples for tazboot.cmd:\n\n\ iso=\\isos\\slitaz-4.0.iso\n\ kernel=boot/bzImage\n\ - initrd=boot/rootfs4.gz,boot/rootfs3.gz,boot/rootfs2.gz,boot/rootfs1.gz\n\ + initrd=boot/rootfs4.gz,boot/rootfs3.gz,boot/rootfs2.gz,boot/rootfs1.gz,\\slitaz\\extrafs.gz\n\ rw root=/dev/null vga=normal autologin\n\n\ kernel=\\slitaz\\vmlinuz\n\ root=/dev/sda5 ro\n",iso,iso,iso); @@ -26,7 +26,7 @@ { char *init = "rdinit=/init.exe", *mode="menu"; char c, rootfs[16], cmdline[256]; - int fd, restart; + int restart; unsigned long magic; if (isoreset(*iso) || isoopen("boot")) return; @@ -75,6 +75,11 @@ while (*s && *s != '\r' && *s != '\n') s++; *s = 0; } + if (*file == '\\') { + static fd = -1; + if (fd >= 0) close(fd); + return open(file, O_RDONLY); + } if (iso) { isoreset(iso); return isoopen(file); diff -r ead8572c67e9 -r 3bb29e042c1c syslinux/stuff/iso2exe/init --- a/syslinux/stuff/iso2exe/init Tue Mar 04 20:34:28 2014 +0000 +++ b/syslinux/stuff/iso2exe/init Tue Mar 04 21:00:29 2014 +0000 @@ -291,7 +291,7 @@ miss many of the failures that are detected by Memtest86.\n " 12 70 [ $? -eq 0 ] || return - cp /media/cdrom/boot/memtest /mnt + cp /media/cdrom/boot/memtest /mnt/memtest.exe } fdmemtest() @@ -319,7 +319,8 @@ from the Web using PXE and HTTP protocols.\n " 12 70 [ $? -eq 0 ] || return - cp /media/cdrom/boot/?pxe /mnt + pxe=$(ls /media/cdrom/boot/?pxe) + cp $pxe /mnt/$(basename $pxe).exe } fdgpxe() @@ -536,12 +537,12 @@ "usbbootkey" "USB boot key (read only)" \ $(fddata "fdbootstrap" "Floppy bootstrap") \ "tazboot" "Get tazboot.exe Linux loader" \ -$(cdfile Xboot/memtest "memtest" "Get Memtest86") \ +$(cdfile boot/memtest "memtest" "Get Memtest86") \ $(cdfile boot/memtest "fdmemtest" "Create a Memtest86 boot floppy") \ -$(cdfile Xboot/gpxe "gpxe" "Get SliTaz Web boot utility") \ -$(cdfile boot/gpxe "fdgpxe" "Create a SliTaz Web boot floppy") \ -$(cdfile Xboot/ipxe "gpxe" "Get SliTaz Web boot utility") \ -$(cdfile boot/ipxe "fdgpxe" "Create a SliTaz Web boot floppy") \ +$(cdfile boot/gpxe "pxe" "Get SliTaz Web boot utility") \ +$(cdfile boot/gpxe "fdpxe" "Create a SliTaz Web boot floppy") \ +$(cdfile boot/ipxe "pxe" "Get SliTaz Web boot utility") \ +$(cdfile boot/ipxe "fdpxe" "Create a SliTaz Web boot floppy") \ $(xfile reboot "restart" "Restart the computer") \ $(xfile poweroff "stop" "Power off") \ "bootlog" "Linux boot messages" \