platform/upstream/syslinux.git
12 years agoIn the current Lua.c32 DMI implementation, it is a flat table with dotted names in...
Hung-chi Lihn [Sat, 22 Sep 2012 16:25:49 +0000 (18:25 +0200)]
In the current Lua.c32 DMI implementation, it is a flat table with dotted names in table entries. It also misses a number DMI sub-tables.

This patch, cleans up the DMI table structure using Lua's nested table structure and adds all missing DMI sub-tables. If a DMI sub-table is not supported by the hardware (not filled), then the corresponding sub-table will not be generated. This helps to make the table structure cleaner and reflects the actual DMI information.

Signed-off-by: Hung-chi Lihn <hlihn@google.com>
Signed-off-by: Erwan Velu <erwanaliasr1@gmail.com>
12 years agoBug fix: Added the missing entry (boot_from_pcmcia) in struct s_characteristics.
Hung-chi Lihn [Sat, 22 Sep 2012 16:24:25 +0000 (18:24 +0200)]
Bug fix: Added the missing entry (boot_from_pcmcia) in struct s_characteristics.

In bios_charac_strings[] of /com32/gpllib/dmi/dmi_bios.c there are actually 29 entries. However, BIOS_CHAR_NB_ELEMENTS in /com32/gplinclude/dmi/dmi_bios.h was defined as 28 and struct s_characteristics in the same file also only had 28 entries. It turns out that there was a missing entry "boot_from_pcmcia" (the 16th entry representing bit 18) in s_characteristics.

Signed-off-by: Hung-chi Lihn <hlihn@google.com>
Signed-off-by: Erwan Velu <erwanaliasr1@gmail.com>
12 years agoAdded the native syslinux functions config_file(), ipappend_strs(), and reboot()...
Hung-chi Lihn [Sat, 22 Sep 2012 16:23:38 +0000 (18:23 +0200)]
Added the native syslinux functions config_file(), ipappend_strs(), and reboot() to Lua.c32. This allows the Lua script to query the config file name and the ipappend strings (pxelinux only), as well as to perform reboot (warm and cold) to the system.

In Lua.c32, the extension will be used as the following:
  1. syslinux.config_file() will return the config file string.
  2. syslinux.ipappend_strs() will return a table of IPAPPEND strings with numerical indices.
  3. syslinux.reboot() will perform cold reboot, while syslinux.reboot(1) will perform warm reboot.

Signed-off-by: Hung-chi Lihn <hlihn@google.com>
Signed-off-by: Erwan Velu <erwanaliasr1@gmail.com>
12 years agoThe current Lua.c32 does not enable io.read() due to some missing library functions...
Hung-chi Lihn [Sat, 22 Sep 2012 16:22:55 +0000 (18:22 +0200)]
The current Lua.c32 does not enable io.read() due to some missing library functions. However, this strongly limits the Lua script from getting user inputs and reading files (even in pxelinux via TFTP).

This patch enables io.read() in Lua.c32 with some restrictions:
  1. the io.read("*line") is fully supported.
  2. the io.read("*number") is not supported due to the missing buffering in underlying file I/Os. However, the user can read a line using io.read() and convert the string to numbers using the built in pattern matching and number conversion features.
  3. io.read(bytes) is supported. However, io.read(0) will not be a valid test for EOF due to the missing I/O buffering. io.read() will return nil if EOF is encountered. This offers an alternative way to handle EOF.

Signed-off-by: Hung-chi Lihn <hlihn@google.com>
Signed-off-by: Erwan Velu <erwanaliasr1@gmail.com>
12 years agoNEWS: Adding 'silent' option from HDT
Erwan Velu [Mon, 10 Sep 2012 19:07:14 +0000 (21:07 +0200)]
NEWS: Adding 'silent' option from HDT

12 years agohdt: Release 0.5.2
Erwan Velu [Mon, 10 Sep 2012 19:03:50 +0000 (21:03 +0200)]
hdt: Release 0.5.2

New release with codename Manon

12 years agohdt: Adding Silent mode
Erwan Velu [Mon, 10 Sep 2012 19:02:02 +0000 (21:02 +0200)]
hdt: Adding Silent mode

By using the "silent" option at the cmdline, HDT tries not displaying
any boring message.

This is particulary interesting with the "display" option.

12 years agohdt: Removing remaining printf()
Erwan Velu [Mon, 10 Sep 2012 18:39:37 +0000 (20:39 +0200)]
hdt: Removing remaining printf()

Using more_printf allow to manage more easily several pages printing.

12 years agoNEWS: Updating for HDT & kontron_wdt
Erwan Velu [Mon, 10 Sep 2012 18:26:59 +0000 (20:26 +0200)]
NEWS: Updating for HDT & kontron_wdt

12 years agokontron_wdt: Fixing makefile
Erwan Velu [Mon, 10 Sep 2012 18:21:33 +0000 (20:21 +0200)]
kontron_wdt: Fixing makefile

Typo.

12 years agokontron_wdt: Enforce timeout value if already set
Erwan Velu [Mon, 10 Sep 2012 15:38:16 +0000 (17:38 +0200)]
kontron_wdt: Enforce timeout value if already set

If the watchdog was already engaged, let's rewrite the timeout to insure
the proper value is set.

12 years agokontron_wdt: Adjusting exit path
Erwan Velu [Mon, 10 Sep 2012 15:35:13 +0000 (17:35 +0200)]
kontron_wdt: Adjusting exit path

If we fail, at least let's boot the expected image

12 years agokontron_wdt: Adding watchdog com32 module
Erwan Velu [Mon, 10 Sep 2012 15:05:03 +0000 (17:05 +0200)]
kontron_wdt: Adding watchdog com32 module

When using a Kontron ETX board, it's possible to initialize and start
the watchdog during syslinux booting.

This allow protecting a boot sequence with a defined timeout.

Bootloader is starting, engage the watchdog and then start a default
entry (typically a Linux image).

If the loaded OS, feed or reinitalize the watchdog, nothing occurs
unless the system will reboot

Conflicts:

com32/modules/Makefile

12 years agoMerge remote-tracking branch 'hpa/master'
Erwan Velu [Wed, 5 Sep 2012 19:08:39 +0000 (21:08 +0200)]
Merge remote-tracking branch 'hpa/master'

12 years agoCorrect initialization of the cache doubly-linked list syslinux-4.06-pre11
H. Peter Anvin [Thu, 19 Jul 2012 14:29:55 +0000 (07:29 -0700)]
Correct initialization of the cache doubly-linked list

The initialization of the cache doubly-linked list had
head->next->prev instead of head->prev->next; this entry is supposed
to initialize the ->next entry of the last entry in the list (which
points back to the head node.)

For clarity, consistently use "head" to refer to the head node; the
mixing of "head" and "dev->cache_head" needlessly obfuscated the code.

The wild pointer reference caused crashes on some systems.

Reported-by: Jan Safrata <jsafrata@centrum.cz>
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
12 years agolinux.c32: add missing break; syslinux-4.06-pre10
H. Peter Anvin [Fri, 29 Jun 2012 23:23:36 +0000 (16:23 -0700)]
linux.c32: add missing break;

Add missing break; for ENOMEM.

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
12 years agolinux.c32: allow loading arbitrary setup_data blobs
H. Peter Anvin [Fri, 29 Jun 2012 23:21:13 +0000 (16:21 -0700)]
linux.c32: allow loading arbitrary setup_data blobs

Allow loading arbitrary setup_data blobs via the syntax
blob.NN=filename where NN is a decimal number.

This also allows loading multiple device tree blobs.

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
12 years agosetup_data: if nothing to load and version < 2.09, no harm no foul
H. Peter Anvin [Fri, 29 Jun 2012 22:46:27 +0000 (15:46 -0700)]
setup_data: if nothing to load and version < 2.09, no harm no foul

If the setup_data is empty, it is okay if the version is < 2.09.

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
12 years agosetup_data: check to make sure kernel version >= 0x0209
H. Peter Anvin [Fri, 29 Jun 2012 22:43:20 +0000 (15:43 -0700)]
setup_data: check to make sure kernel version >= 0x0209

Versions before 2.09 had no setup_data support.

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
12 years agolinux.c32: add support for a device tree blob (dtb)
H. Peter Anvin [Fri, 29 Jun 2012 22:24:02 +0000 (15:24 -0700)]
linux.c32: add support for a device tree blob (dtb)

Based on a patch by Thierry Reding, add support for loading a device
tree blob using the generic setup_data framework.

I used the name dtb= instead of fdt= since it looks like dtb= is the
common acronym for the filenames and what is used in the kernel.

Originally-by: Thierry Reding <thierry.reding@avionic-design.de>
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
12 years ago<syslinux/linux.h>: add missing setup_data_init() definition
H. Peter Anvin [Fri, 29 Jun 2012 22:23:19 +0000 (15:23 -0700)]
<syslinux/linux.h>: add missing setup_data_init() definition

Missing prototype.

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
12 years agoChange fdt-specific loader into a generic setup_data loader
H. Peter Anvin [Fri, 29 Jun 2012 22:16:03 +0000 (15:16 -0700)]
Change fdt-specific loader into a generic setup_data loader

Make it a generic setup_data loader keyed by type.

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
Cc: Thierry Reding <thierry.reding@avionic-design.de>
12 years agocom32: Add device tree support
Thierry Reding [Thu, 31 May 2012 15:41:35 +0000 (17:41 +0200)]
com32: Add device tree support

This commit adds support for passing a Flattened Device Tree (FDT) blob
to the Linux kernel.

Signed-off-by: Thierry Reding <thierry.reding@avionic-design.de>
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
12 years agofat: Make mangle behavior similar to the standard one
H. Peter Anvin [Fri, 29 Jun 2012 20:57:42 +0000 (13:57 -0700)]
fat: Make mangle behavior similar to the standard one

Handle mangle in FAT the same as in the generic version, except for \
-> / conversion.

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
12 years agowin: Use lower-case private definition of STORAGE_DEVICE_NUMBER
H. Peter Anvin [Fri, 29 Jun 2012 20:18:55 +0000 (13:18 -0700)]
win: Use lower-case private definition of STORAGE_DEVICE_NUMBER

Since we can't know if <winioctl.h> actually defines
STORAGE_DEVICE_NUMBER, just use a private definition of the structure
but with a lower-case name.

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
12 years agoActually keep track of the pathnames for all elements syslinux-4.06-pre9
H. Peter Anvin [Fri, 29 Jun 2012 02:33:16 +0000 (19:33 -0700)]
Actually keep track of the pathnames for all elements

Actually keep track of the pathnames for all elements for on-disk
filesystems.  This makes sure we can always reconstruct the correct
path.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
12 years agochdir: collapse /./ and /../ in path for conventional filesystems syslinux-4.06-pre8
H. Peter Anvin [Fri, 29 Jun 2012 00:26:19 +0000 (17:26 -0700)]
chdir: collapse /./ and /../ in path for conventional filesystems

For conventional filesystems (i.e. not PXE), collapse /./ and /../ in
the path when doing chdir.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
12 years agowin32: assume STORAGE_DEVICE_NUMBER is defined
H. Peter Anvin [Wed, 27 Jun 2012 15:01:47 +0000 (08:01 -0700)]
win32: assume STORAGE_DEVICE_NUMBER is defined

If using mingw-w64 to build for win32, this will be defined.  This is
confusing, especially since mingw-w64 defined __MINGW32__ but nothing
else... thus hide this definition for now.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
12 years agosyslxopt: fix syntax errors syslinux-4.06-pre7
H. Peter Anvin [Wed, 20 Jun 2012 23:12:29 +0000 (16:12 -0700)]
syslxopt: fix syntax errors

Oops :)

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
12 years agoNEWS: document extlinux --device
H. Peter Anvin [Wed, 20 Jun 2012 23:11:07 +0000 (16:11 -0700)]
NEWS: document extlinux --device

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
12 years agoextlinux: add --device option to override device detect
H. Peter Anvin [Wed, 20 Jun 2012 23:08:53 +0000 (16:08 -0700)]
extlinux: add --device option to override device detect

Add a --device option for scripts and expert users to override the
device detection.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
12 years agoextlinux: centralize and reuse btrfs validation
H. Peter Anvin [Wed, 20 Jun 2012 23:01:43 +0000 (16:01 -0700)]
extlinux: centralize and reuse btrfs validation

We can re-use btrfs device validation now.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
12 years agoextlinux: better methods for finding device matches
H. Peter Anvin [Wed, 20 Jun 2012 00:41:15 +0000 (17:41 -0700)]
extlinux: better methods for finding device matches

1. Support parsing /proc/self/mountinfo for devices;
2. For btrfs, query the device names from btrfs itself.

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
12 years agoMerge remote-tracking branch 'hpa/master'
Erwan Velu [Wed, 13 Jun 2012 19:25:55 +0000 (21:25 +0200)]
Merge remote-tracking branch 'hpa/master'

12 years agoMerge remote-tracking branch 'genec/linux-com32-error-message-for-hpa' syslinux-4.06-pre6
H. Peter Anvin [Tue, 12 Jun 2012 02:58:32 +0000 (19:58 -0700)]
Merge remote-tracking branch 'genec/linux-com32-error-message-for-hpa'

12 years agoisohybrid: Fix building with --as-needed
Micah Gersten [Mon, 11 Jun 2012 22:38:20 +0000 (15:38 -0700)]
isohybrid: Fix building with --as-needed

The library link order was wrong.

This patch was picked from Ubuntu.

Reported-and-tested-by: Tim Fletcher <tim@night-shade.org.uk>
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
12 years agolinux.c32: Make errors clearer for users
Gene Cumm [Sat, 9 Jun 2012 21:58:20 +0000 (17:58 -0400)]
linux.c32: Make errors clearer for users

Signed-off-by: Gene Cumm <gene.cumm@gmail.com>
12 years agobtrfs: Fix booting off a btrfs subvolume.
Alexander E. Patrakov [Mon, 4 Jun 2012 17:59:55 +0000 (23:59 +0600)]
btrfs: Fix booting off a btrfs subvolume.

The subvolume name in path.data is not NUL-terminated, so don't use
strcmp on it.

Before this patch, it would accumulate the following (given
subvolumes with names "ext2_saved", "home", "gentoo" and "boot"):

ext2_saved
home_saved
gentooaved
bootooaved

Signed-off-by: Alexander E. Patrakov <patrakov@gmail.com>
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
12 years agoMerge remote-tracking branch 'hpa/master'
Erwan Velu [Wed, 30 May 2012 19:17:11 +0000 (21:17 +0200)]
Merge remote-tracking branch 'hpa/master'

12 years agorelocs: Move stop to the end
H. Peter Anvin [Tue, 29 May 2012 21:08:11 +0000 (14:08 -0700)]
relocs: Move stop to the end

The Linux kernel puts the stop word at the beginning of the relocation
list (the list is processed backwards); Syslinux puts the stop word at
the beginning of the relocation list (the list is processed forwards.)

Missed that change when syncing with the kernel version.

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
12 years agohdt: Removing builting sleep support in say
Erwan Velu [Tue, 29 May 2012 20:32:14 +0000 (22:32 +0200)]
hdt: Removing builting sleep support in say

If people want to sleep while saying message, they now have to use the
sleep command instead of the previous specific %x syntax.

12 years agohdt: 0.5.2-pre3 release
Erwan Velu [Tue, 29 May 2012 19:46:32 +0000 (21:46 +0200)]
hdt: 0.5.2-pre3 release

12 years agoMerge branch 'master' of git://git.zytor.com/syslinux/syslinux
Erwan Velu [Tue, 29 May 2012 19:45:47 +0000 (21:45 +0200)]
Merge branch 'master' of git://git.zytor.com/syslinux/syslinux

12 years agohdt: Adding sleep command
Erwan Velu [Tue, 29 May 2012 19:14:33 +0000 (21:14 +0200)]
hdt: Adding sleep command

This command will help users getting some delay between two automatic
commands.

As an example, it can be used to show a serie of pictures.

12 years agohdt: Adding display command to change background
Erwan Velu [Tue, 29 May 2012 19:01:17 +0000 (21:01 +0200)]
hdt: Adding display command to change background

This command allow switching the background image. This could be used
for example to give more explicit message to users.

Idea is coming from the FGTC project

12 years agorelocs: sync with the Linux kernel
H. Peter Anvin [Tue, 29 May 2012 08:02:54 +0000 (01:02 -0700)]
relocs: sync with the Linux kernel

Sync the relocs tool with the Linux kernel.  The new version of this
tool correctly verifies that any absolute symbol is either listed as
allowed absolute or is listed as relative.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
12 years agocore: add support for .init/fini_table
H. Peter Anvin [Tue, 29 May 2012 04:39:40 +0000 (21:39 -0700)]
core: add support for .init/fini_table

We don't actually have any constructors/destructors in the core at
this time, but handle .init/fini_table in case that happens...

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
12 years agocom32.ld: handle .init_array and .fini_array syslinux-4.06-pre5
H. Peter Anvin [Tue, 29 May 2012 04:28:52 +0000 (21:28 -0700)]
com32.ld: handle .init_array and .fini_array

Handle constructors/destructors via .init_array and .fini_array, as
generated by newer gccs.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
12 years agoMerge remote-tracking branch 'hdt/master' syslinux-4.06-pre4
H. Peter Anvin [Sun, 27 May 2012 19:57:21 +0000 (12:57 -0700)]
Merge remote-tracking branch 'hdt/master'

12 years agoMerge remote-tracking branch 'genec/diag-mbr-fix-for-hpa'
H. Peter Anvin [Sun, 27 May 2012 19:57:01 +0000 (12:57 -0700)]
Merge remote-tracking branch 'genec/diag-mbr-fix-for-hpa'

12 years agodiag/mbr: Clarify README
Gene Cumm [Sun, 27 May 2012 18:13:05 +0000 (14:13 -0400)]
diag/mbr: Clarify README

Signed-off-by: Gene Cumm <gene.cumm@gmail.com>
12 years agoUpdate diag/mbr instruction to match the current filename.
Jean-Christian de Rivaz [Sat, 26 May 2012 22:26:42 +0000 (00:26 +0200)]
Update diag/mbr instruction to match the current filename.

I suspect that some instructions about how to use the diag/mbr was not
updated when the source file was renamed to handoff.S. Here is a simple
proposition to fix that only into the handoff.S file.

Jean-Christian de Rivaz

Signed-off-by: Gene Cumm <gene.cumm@gmail.com>
12 years agopxechn.c32: PXE NBP chainloader
Gene Cumm [Sun, 27 May 2012 13:23:07 +0000 (09:23 -0400)]
pxechn.c32: PXE NBP chainloader

Designed as a more versatile COM32-based alternative to pxechain.com.
It can use the PXE RESTART or chain to the new NBP without the PXE
stack.  It also enables a user to boot Microsoft Windows Server 2008R2
Windows Deployment Services's wdsnbp.com from PXELINUX.

Signed-off-by: Gene Cumm <gene.cumm@gmail.com>
12 years agoCOM32: add DHCP pack/unpack functions
H. Peter Anvin [Tue, 14 Jun 2011 01:16:46 +0000 (21:16 -0400)]
COM32: add DHCP pack/unpack functions

Signed-off-by: Gene Cumm <gene.cumm@gmail.com>
12 years agohdt: 0.5.2-pre2 release
Erwan Velu [Sun, 27 May 2012 09:59:25 +0000 (11:59 +0200)]
hdt: 0.5.2-pre2 release

12 years agohdt: Adding say & postexec demo
Erwan Velu [Sun, 27 May 2012 09:58:19 +0000 (11:58 +0200)]
hdt: Adding say & postexec demo

When building official hdt image, let's add a say & postexec example.

12 years agohdt: Adding say command
Erwan Velu [Sun, 27 May 2012 09:46:54 +0000 (11:46 +0200)]
hdt: Adding say command

This command is just for displaing a message to the cli during a defined
period of time.

Syntax is like the following : say `my message`%<number_of_seconds>
An example :

say `This is my text message to display during 5 seconds`%5

12 years agohdt: Adding nomodule support in cli
Erwan Velu [Sun, 27 May 2012 09:41:39 +0000 (11:41 +0200)]
hdt: Adding nomodule support in cli

Some new commands might need being able to manage the argv directly
instead of the much more oriented scheme we had until now.

This commit add a .nomodule option to cli object to explically tell they
don't have a module as parameter but only arguments.

This will be needed for the 'say' command.

12 years agohdt: Fixing argument mgmt in cli
Erwan Velu [Sun, 27 May 2012 09:20:01 +0000 (11:20 +0200)]
hdt: Fixing argument mgmt in cli

Sizeof(char *) is definetly wrong for getting the length of a string.

12 years agohdt: Adding more debug traces in cli
Erwan Velu [Sun, 27 May 2012 06:27:49 +0000 (08:27 +0200)]
hdt: Adding more debug traces in cli

Adding more debug traces in the cli management to ease debugging &
feature adding.

12 years agohdt: Fixing chain32 target in makefile
Erwan Velu [Fri, 25 May 2012 21:31:42 +0000 (23:31 +0200)]
hdt: Fixing chain32 target in makefile

chain32 moved, let's adjust the "release" target.

12 years agoMerge remote-tracking branch 'hpa/master'
Erwan Velu [Fri, 25 May 2012 21:08:35 +0000 (23:08 +0200)]
Merge remote-tracking branch 'hpa/master'

12 years agoMerge remote-tracking branch 'genec/diag-geodsp-perl-for-hpa'
H. Peter Anvin [Wed, 25 Apr 2012 22:32:34 +0000 (15:32 -0700)]
Merge remote-tracking branch 'genec/diag-geodsp-perl-for-hpa'

12 years agolibinstaller: Avoid using <linux/ext2_fs.h> syslinux-4.06-pre3
H. Peter Anvin [Tue, 27 Mar 2012 05:51:09 +0000 (22:51 -0700)]
libinstaller: Avoid using <linux/ext2_fs.h>

Don't use <linux/ext2_fs.h> if we can avoid it.

The ioctl constants have been globalized and moved to <linux/fs.h>.
Use a private copy of ext2_fs.h from e2fsprogs with the ioctl
constants removed for the data structures.

Do at least attempt backward compatibility for old kernel headers, but
no real hope of proper operation there...

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
12 years agoversion: Update year to 2012
H. Peter Anvin [Mon, 26 Mar 2012 22:44:15 +0000 (15:44 -0700)]
version: Update year to 2012

It is the year MMXII of the Common Era...

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
12 years agoMakefile: Use -Ox option to NASM
H. Peter Anvin [Mon, 26 Mar 2012 21:59:39 +0000 (14:59 -0700)]
Makefile: Use -Ox option to NASM

We already require a new enough version of NASM that the -Ox option is
supported, so just use it.

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
12 years agoMerge branch 'chaindev'
H. Peter Anvin [Mon, 26 Mar 2012 21:58:42 +0000 (14:58 -0700)]
Merge branch 'chaindev'

12 years agochain.c: Fix misplaced #endif breaking non-DEBUG builds
H. Peter Anvin [Mon, 26 Mar 2012 21:57:54 +0000 (14:57 -0700)]
chain.c: Fix misplaced #endif breaking non-DEBUG builds

Fix misplaced #endif which made it impossible to build without DEBUG.

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
12 years agoisohybrid: Generate MBR even when in EFI mode
Matthew Garrett [Wed, 15 Feb 2012 17:12:17 +0000 (12:12 -0500)]
isohybrid: Generate MBR even when in EFI mode

Various EFI systems insist that there be no active flag in the pMBR in
order to parse the GPT. The only way around this is to also generate a
valid MBR - the firmware will then pick that up and use the system
partition provided there. In order to deal with other EFI "sanity" checks,
the partition type for the non-EFI partitions is set to 0 to skip the
firmware bailing because of overlapping partitions.

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
12 years agoaltmbr: actually invoke the correct partition syslinux-4.06-pre2
H. Peter Anvin [Wed, 21 Mar 2012 22:56:02 +0000 (15:56 -0700)]
altmbr: actually invoke the correct partition

We would fail to correctly invoke primary partitions 2-4 because of a
register usage bug.

Reported-by: Maxim Kammerer <mk@dee.su>
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
12 years agocom32/lib/pci/scan.c: Fix free_pci_domain()
Henri Roosen [Wed, 7 Sep 2011 07:16:11 +0000 (09:16 +0200)]
com32/lib/pci/scan.c: Fix free_pci_domain()

free_pci_domain is releasing the memory too early; should be out
of the for loops, because in the loop the memory is still dereferenced.

12 years agoMerge remote-tracking branch 'hpa/master'
Erwan Velu [Fri, 24 Feb 2012 19:56:32 +0000 (20:56 +0100)]
Merge remote-tracking branch 'hpa/master'

12 years agoNEWS: trivial change
Paulo Alcantara [Sun, 12 Feb 2012 03:05:46 +0000 (00:05 -0300)]
NEWS: trivial change

Change Paulo Cezar to Paulo Alcantara.

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
12 years agontfs: check for index entry which has INDEX_ENTRY_END flag set
Paulo Alcantara [Sun, 12 Feb 2012 02:14:54 +0000 (23:14 -0300)]
ntfs: check for index entry which has INDEX_ENTRY_END flag set

In ntfs_readdir(), if one entry has INDEX_ENTRY_END flag set, it won't
contain indexed_file member, that'd be used afterwards when looking for
the MFT record that is associated with that index entry.

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
12 years agontfs: remove wrong checks
Paulo Alcantara [Sun, 12 Feb 2012 00:24:56 +0000 (21:24 -0300)]
ntfs: remove wrong checks

As an attribute may be stored in a NTFS record rather than the current
record being used, these checks wouldn't work anymore for this case.

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
12 years agontfs: keep looking for attributes with the latest found MFT record
Paulo Alcantara [Mon, 6 Feb 2012 03:43:55 +0000 (00:43 -0300)]
ntfs: keep looking for attributes with the latest found MFT record

Once ntfs_attr_lookup() is called, it may change the MFT record passed
as parameter so that the next calls that need the latest found MFT
record don't have it anymore. So the __ntfs_attr_lookup() variant will
provide support to the ntfs_attr_lookup() function handling both old
and new MFT records.

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
12 years agontfs: MFT record may be changed when invoking ntfs_attr_lookup()
Paulo Alcantara [Sun, 29 Jan 2012 21:14:06 +0000 (18:14 -0300)]
ntfs: MFT record may be changed when invoking ntfs_attr_lookup()

After invoking ntfs_attr_lookup(), the attribute type that we're looking
for may be allocated in a other MFT record, so the parameter which gets
the current MFT record can be changed once to point to the other MFT
record that actually contains the wanted attribute type.

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
12 years agontfs: add missing field in ntfs_attr_list_entry structure
Paulo Alcantara [Tue, 24 Jan 2012 02:38:58 +0000 (23:38 -0300)]
ntfs: add missing field in ntfs_attr_list_entry structure

This missing field just messed up when reading the
ntfs_attr_list_entry's fields to be used in any case. Also add a
check to avoid reading the same MFT record which contains the
attribute list and also the wanted attribute type.

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
12 years agontfs: print function names on debug mode
Paulo Alcantara [Tue, 24 Jan 2012 01:27:37 +0000 (22:27 -0300)]
ntfs: print function names on debug mode

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
12 years agontfs: handle offsets when walking through attribute list's entries
Paulo Alcantara [Thu, 19 Jan 2012 00:18:25 +0000 (21:18 -0300)]
ntfs: handle offsets when walking through attribute list's entries

Instead of either hanging out or printing a fatal message on the screen
when not finding attributes from attribute list's entries, handle
offsets that will determine if we reached end of a attribute list.

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
12 years agontfs: handle MFT records that contain $ATTRIBUTE_LIST attribute
Paulo Alcantara [Sat, 7 Jan 2012 00:39:28 +0000 (21:39 -0300)]
ntfs: handle MFT records that contain $ATTRIBUTE_LIST attribute

MFT records that contain $ATTRIBUTE_LIST attributes, for example, are
those that there are many hards links, or the file itself is very
fragmented, and so on.

So when attributes of a MFT record that don't fit in a MFT record, those
will be stored in one or more MFT records and can be found through the
attribute list's entries of the MFT record being acessed, which are in
the $ATTRIBUTE_LIST attribute.

ntfs_attr_list_lookup() function will be called once we didn't find the
attribute within the MFT record itself so that the attribute will presumably
be stored in another MFT record, according to the information that has
been retrieved from the attribute list's entry.

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
12 years agoldlinux: workaround for avoiding EDD error on btrfs probe
Paulo Alcantara [Sun, 25 Dec 2011 19:33:15 +0000 (16:33 -0300)]
ldlinux: workaround for avoiding EDD error on btrfs probe

When installing Syslinux in an NTFS volume and then booting it up,
Syslinux will print on the screen an EDD error ocurred on btrfs probing
because that volume is not actually a btrfs one. Thus, to work around
that issue add ntfs_fs_ops structure just before the btrfs_fs_ops so
that fs_init() function will execute the ntfs_fs_ops->fs_init() function
first, and on success, btrfs_fs_ops->fs_init() won't be executed either.

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
12 years agontfs: fix POSIX vs Win32 filename compares
Paulo Alcantara [Sun, 25 Dec 2011 18:36:19 +0000 (15:36 -0300)]
ntfs: fix POSIX vs Win32 filename compares

When using the COMBOOT32 module "ls" for listining directory entries on
an NTFS volume, for e.g. directories as "/Foobar" (a Win32 filename)
could be only listed as "ls.c32 /foobar" and neither "ls.c32
"/Foobar" nor "ls.c32 /FOOBAR". POSIX filenames must be handled in a
case-sensitivity way, while Win32 filenames are handled in a
non-case-sensitivity way.

Note also that the POSIX/Win32 filename compare is done in the
ntfs_filename_cmp() function.

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
12 years agontfs: fix license headers
Paulo Alcantara [Sun, 25 Dec 2011 17:54:37 +0000 (14:54 -0300)]
ntfs: fix license headers

Add missing year information in the license headers.

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
12 years agoMerge remote-tracking branch 'pcacjr/mingw-ubuntu-prefix-for-hpa'
H. Peter Anvin [Thu, 9 Feb 2012 00:00:14 +0000 (16:00 -0800)]
Merge remote-tracking branch 'pcacjr/mingw-ubuntu-prefix-for-hpa'

12 years agoextlinux: use sysfs to find the device node if need be
H. Peter Anvin [Wed, 8 Feb 2012 18:15:50 +0000 (10:15 -0800)]
extlinux: use sysfs to find the device node if need be

If neither /proc/mounts nor /etc/mtab contains a functional pointer to
the device node for the installer, try to see if we can find the
device node by looking for a symlink in /sys/dev/block.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
12 years agoextlinux: clean up main.c formatting
H. Peter Anvin [Wed, 8 Feb 2012 17:59:50 +0000 (09:59 -0800)]
extlinux: clean up main.c formatting

Clean up some ugly formatting in main.c.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
12 years agoextlinux: main.c should not be executable
H. Peter Anvin [Wed, 8 Feb 2012 17:57:27 +0000 (09:57 -0800)]
extlinux: main.c should not be executable

Remove stray x bit.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
12 years agobootsect.inc: try to catch obvious .0 problems
H. Peter Anvin [Mon, 6 Feb 2012 20:12:26 +0000 (12:12 -0800)]
bootsect.inc: try to catch obvious .0 problems

A typical Linux kernel will be way, way too big for the low memory
bootstrap area, so throw an error message if we end up in the
bootstrap path with something that cannot possibly fit below 640K.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
12 years agostrreplace: additional cleanups
H. Peter Anvin [Mon, 6 Feb 2012 19:14:39 +0000 (11:14 -0800)]
strreplace: additional cleanups

Additional formatting cleanups.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
12 years agostrreplace: clean up and simplify
H. Peter Anvin [Mon, 6 Feb 2012 19:08:45 +0000 (11:08 -0800)]
strreplace: clean up and simplify

Clean up and simplify strreplace(); in particular there is no need to
call strlen() repeatedly on the same strings.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
12 years agowin32: add new mingw prefix
Paulo Alcantara [Thu, 26 Jan 2012 17:14:50 +0000 (14:14 -0300)]
win32: add new mingw prefix

This prefix is used on at least Ubuntu 12.04 when installing the
mingw-w64 package.

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
Reported-by: Gert Hulselmans <hulselmansgert@gmail.com>
12 years agolua: Adding dhcp support
Timm Gleason [Sat, 7 Jan 2012 16:09:18 +0000 (17:09 +0100)]
lua: Adding dhcp support

Adds DHCPINFO functionality to the lua.c32 binary

 gettable() returns a table of the BOOTP message fields returned by
 the DHCP server for use in a Lua pxeboot script
 See http://tools.ietf.org/html/rfc1542

     lua key value           RFC key
 -----------------------------------------------------------------------
      opcode                  op       message opcode
      hardware.type           htype    Hardware address type
      hardware.length         hlen     Hardware address length
      hops                    hops     Used by relay agents
      transaction.id          xid      transaction id
      elapsed.seconds         secs     Secs elapsed since client boot
      flags                   flags    DHCP Flags field
      client.ip.addr          ciaddr   client IP addr
      your.ip.addr            yiaddr   'Your' IP addr. (from server)
      server.ip.addr          siaddr   Boot server IP addr
      gateway.ip.addr         giaddr   Relay agent IP addr
      client.mac              chaddr   Client hardware addr
      server.hostname         sname    Optl. boot server hostname
      boot.file               file     boot file name (ascii path)
      magic.cookie            cookie   Magic cookie

 getoptions() returns a table of the DHCP Options field of the BOOTP
 message returned by the DHCP server for use in a Lua pxeboot script.
 Many of the options are reurned formatted in as strings in a
 standard,
 recognizable format, such as IP addresses.

 1, 2, and 4 byte numerical options are returned as integers.

 Other Options with non-standard formats are returned as strings of
 the
 raw binary number that was returned by the DHCP server and must be
 decoded in a Lua script

 The Options table returns the Option code as the key except where
 there
 are multiple values returned. In those cases, an extra key increment
 number
 is added to allow individual access to each Option value.

      lua key value           value Name
 -----------------------------------------------------------------------
      1                       Subnet Mask
      6.1                     DNS Server [element 1]
      6.2                     DNS Server [element 2]
      6.3                     DNS Server [element 3]
      209                     PXE Configuration File
      21.1                    Policy Filter [element 1]
      21.2                    Policy Filter [element 2]

 Options that can have a list of values, but contain only one (like
 Option 6)
 will not return with .sub key values.

 Usage:
            t = dhcp.gettable()

            for k,v in pairs(t) do
              print(k.." : "..v)
            end

12 years agoifcpu: Adding hypervisor support
Erwan Velu [Sat, 7 Jan 2012 16:08:02 +0000 (17:08 +0100)]
ifcpu: Adding hypervisor support

This simple hack add the ability to detect the hypervisor presence.

12 years agodiag/geodsp: Use perl to make the image; Fix Makefile
Gene Cumm [Sun, 1 Jan 2012 04:32:44 +0000 (23:32 -0500)]
diag/geodsp: Use perl to make the image; Fix Makefile

This reduces the host binary dependence and prevents the need for a
rebuild of the images after a 'make clean'.

This has the unfortunate side effect of going from 0.03s to 0.30s to
build an image.

Also fix Makefile to include (optional) raw targets and use $(GZIPPROG)

Signed-off-by: Gene Cumm <gene.cumm@gmail.com>
12 years agodiag/geodsp: add mk-lba-img.pl
Gene Cumm [Sun, 24 Apr 2011 23:10:19 +0000 (19:10 -0400)]
diag/geodsp: add mk-lba-img.pl

To be used to replace the native C binary

12 years agogpllib/disk: Massive updates of fs labels
Erwan Velu [Thu, 22 Dec 2011 22:23:06 +0000 (23:23 +0100)]
gpllib/disk: Massive updates of fs labels

Inspired by Gerth and updated from both fdisk list & also from
http://www.win.tue.nl/~aeb/partitions/partition_types-1.html

12 years agohdt: Adding postexec= option
Erwan Velu [Sat, 17 Dec 2011 21:27:07 +0000 (22:27 +0100)]
hdt: Adding postexec= option

When HDT is exiting, you might need executing something else.
This could be used in the following scenario :

You start HDT, do an automatic command like 'dump; exit', but then after
you might need to launch something else from syslinux.

The postexec option will allow you to define what label you'd love
running one HDT got terminated.

Syntaxt is like the following:

postexec='menu_label_to_run_once_hdt_got_exited'

Note the quotes (') after the equal sign (=)

This could looks like :
APPEND auto='dump; exit' postexec='memtest'

12 years agohdt: On the road to 0.5.2
Erwan Velu [Sat, 17 Dec 2011 16:02:43 +0000 (17:02 +0100)]
hdt: On the road to 0.5.2

12 years agoMerge remote-tracking branch 'hpa/master'
Erwan Velu [Sat, 17 Dec 2011 15:23:37 +0000 (16:23 +0100)]
Merge remote-tracking branch 'hpa/master'