profile/ivi/syslinux.git
16 years agombr/Makefile: run checksize on the proper binaries... syslinux-3.72-pre4
H. Peter Anvin [Mon, 8 Sep 2008 05:57:49 +0000 (22:57 -0700)]
mbr/Makefile: run checksize on the proper binaries...

There is a reason other than stylistic for using macros like $@ in
explicit rules, and that is that they get copied and pasted around...

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
16 years agogPXE: enable NFS, FTP, HTTPS
H. Peter Anvin [Mon, 8 Sep 2008 05:56:45 +0000 (22:56 -0700)]
gPXE: enable NFS, FTP, HTTPS

Enable the NFS, FTP, and HTTPS protocols in the gpxelinux.0
configuration.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
16 years agogPXE: update gPXE to current git
H. Peter Anvin [Mon, 8 Sep 2008 05:41:29 +0000 (22:41 -0700)]
gPXE: update gPXE to current git

Update gPXE to current git.

gpxe-for-syslinux e3ef2094cfa26f874c5f8dbd687eb311830efcf0
gpxe main tree 8223084afc206000312611a3fcfa30a28500d1a3

16 years agoisohybrid: remove Perl modules we don't actually need
H. Peter Anvin [Mon, 8 Sep 2008 02:27:16 +0000 (19:27 -0700)]
isohybrid: remove Perl modules we don't actually need

Remove Perl "use" statements that aren't actually required.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
16 years agoisohybrid: verify we have a hybrid-compatible isolinux.bin
H. Peter Anvin [Mon, 8 Sep 2008 02:23:31 +0000 (19:23 -0700)]
isohybrid: verify we have a hybrid-compatible isolinux.bin

Verify that the PXE boot loader is a hybrid-compatible isolinux.bin by
looking for the hybrid boot signature, otherwise print an error
message.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
16 years agoisohybrid, mkdiskimage: don't use sysopen(), sysread()
H. Peter Anvin [Mon, 8 Sep 2008 02:17:03 +0000 (19:17 -0700)]
isohybrid, mkdiskimage: don't use sysopen(), sysread()

Don't use sysopen() and sysread() when it doesn't make sense.
Especially avoid using sysread() -- sysopen() can be used with read();
the C fdopen() is implicit.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
16 years agoisolinux: display BIOS type
H. Peter Anvin [Sat, 6 Sep 2008 01:02:17 +0000 (18:02 -0700)]
isolinux: display BIOS type

Display the BIOS type for isolinux in the same way we do for
ldlinux/extlinux.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
16 years agoisohybrid: fix partition table generation, document syslinux-3.72-pre3
H. Peter Anvin [Fri, 5 Sep 2008 22:21:40 +0000 (15:21 -0700)]
isohybrid: fix partition table generation, document

Fix the generation of the partition table in isohybrid; also document
the operation of the partition table.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
16 years agoISOLINUX: document hybrid mode syslinux-3.72-pre2
H. Peter Anvin [Fri, 5 Sep 2008 22:07:35 +0000 (15:07 -0700)]
ISOLINUX: document hybrid mode

Document ISOLINUX hybrid mode.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
16 years agoISOLINUX: fix EBIOS information passing in hybrid HDD mode
H. Peter Anvin [Fri, 5 Sep 2008 22:00:40 +0000 (15:00 -0700)]
ISOLINUX: fix EBIOS information passing in hybrid HDD mode

We were incorrectly not passing the EBIOS flag in hybrid HDD mode;
also compute the EBIOS LBA correctly in hybrid HDD mode.  Allow a
34-bit LBA for this, that way we still support up to 2^32 CD-ROM
sectors (8 TB).

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
16 years agoISOLINUX: support for hybrid mode (CD-ROM/USB key)
H. Peter Anvin [Fri, 5 Sep 2008 21:49:42 +0000 (14:49 -0700)]
ISOLINUX: support for hybrid mode (CD-ROM/USB key)

Still a work in progress.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
16 years agocore/Makefile: iso%.bin depends on checksumiso.pl
H. Peter Anvin [Fri, 5 Sep 2008 21:48:01 +0000 (14:48 -0700)]
core/Makefile: iso%.bin depends on checksumiso.pl

iso%.bin depends on checksumiso.pl

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
16 years agochecksumiso: pad isolinux.bin to a sector boundary
H. Peter Anvin [Fri, 5 Sep 2008 21:47:22 +0000 (14:47 -0700)]
checksumiso: pad isolinux.bin to a sector boundary

Always pad isolinux.bin to a full CD-ROM sector boundary.  This avoids
a lot of potential special cases.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
16 years agokeytab-lilo: don't try to be too smart
H. Peter Anvin [Thu, 4 Sep 2008 12:40:38 +0000 (05:40 -0700)]
keytab-lilo: don't try to be too smart

The keytab-lilo script tried to add pathname and extension, but
loadkeys does that better.  Therefore, don't try to be smart.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
16 years agoNEWS: update NEWS (sdi.c32, ISOLINUX fix) syslinux-3.72-pre1
H. Peter Anvin [Tue, 2 Sep 2008 23:18:28 +0000 (16:18 -0700)]
NEWS: update NEWS (sdi.c32, ISOLINUX fix)

16 years agoisolinux: return failure when opening a zero-length file
H. Peter Anvin [Tue, 2 Sep 2008 23:14:28 +0000 (16:14 -0700)]
isolinux: return failure when opening a zero-length file

In the Syslinux view of the world, a zero-length file doesn't exist
and therefore should return error on open.  A lot of the code relies
on this, but ISOLINUX allowed a zero-length file to be opened, which
could cause all kinds of trouble.

It would be nicer to not have that restriction, but removing it will
probably not happen until the configuration code is rewritten in C.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
16 years agosdi.c32: credit where credit is due
H. Peter Anvin [Tue, 2 Sep 2008 21:44:22 +0000 (14:44 -0700)]
sdi.c32: credit where credit is due

This doesn't use Remi's code, but definitely used some concepts from
his patch.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
16 years agosdi.c32: support gzipped SDI images
H. Peter Anvin [Tue, 2 Sep 2008 21:42:23 +0000 (14:42 -0700)]
sdi.c32: support gzipped SDI images

Support gzipped SDI images, simply by replacing loadfile() with
zloadfile().  Suggested by Remi Lefevre.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
16 years agoMakefile: add modules to BSUBDIRS
Sebastian Herbszt [Fri, 29 Aug 2008 19:56:30 +0000 (21:56 +0200)]
Makefile: add modules to BSUBDIRS

Add modules directory to BSUBDIRS.

16 years agoNEWS: update for 3.72
H. Peter Anvin [Wed, 27 Aug 2008 23:25:41 +0000 (16:25 -0700)]
NEWS: update for 3.72

16 years agoAdd pxechain.com; new modules direction; reorganize installation
H. Peter Anvin [Wed, 27 Aug 2008 23:23:24 +0000 (16:23 -0700)]
Add pxechain.com; new modules direction; reorganize installation

Add the pxechain module from Jeffery Hutzelman at CMU.
Create new modules directory for non-com32 modules.
Centralize installation, since we have three types of install, and
only one of them was distributed.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
16 years agomenu: avoid leaving obvious password turds in memory
H. Peter Anvin [Tue, 26 Aug 2008 21:46:36 +0000 (14:46 -0700)]
menu: avoid leaving obvious password turds in memory

Avoid leaving obvious password turds in memory.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
16 years agocore/Makefile: The core is an embedded target
H. Peter Anvin [Fri, 22 Aug 2008 21:43:43 +0000 (14:43 -0700)]
core/Makefile: The core is an embedded target

The core is an embedded target, so use MCONFIG.embedded.

16 years agoClean up embedded Makefile targets; fix build failure
H. Peter Anvin [Fri, 22 Aug 2008 21:42:40 +0000 (14:42 -0700)]
Clean up embedded Makefile targets; fix build failure

Unify common pieces to "embedded" targets (those that produce code
that runs neither in the host nor in a com32 environment); this fixes
the broken sample/ directory Makefile.

16 years agoMajor Makefile cleanups; gcc 4.3.0 compatiblity
H. Peter Anvin [Wed, 20 Aug 2008 22:15:34 +0000 (15:15 -0700)]
Major Makefile cleanups; gcc 4.3.0 compatiblity

Cleanup and centralize the Makefile system even more.
Fix a gcc 4.3 incompatibility in memdisk (definition of strlen).

16 years agoMEMDISK: document the pause option
H. Peter Anvin [Fri, 15 Aug 2008 01:19:23 +0000 (18:19 -0700)]
MEMDISK: document the pause option

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
16 years agopci: fix pci_scan()
Sebastian Herbszt [Mon, 11 Aug 2008 20:00:29 +0000 (22:00 +0200)]
pci: fix pci_scan()

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
16 years agopci: cosmetic fixes
Sebastian Herbszt [Mon, 11 Aug 2008 19:51:21 +0000 (21:51 +0200)]
pci: cosmetic fixes

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
16 years agopci: revamp the PCI system to have a hierarchial format
H. Peter Anvin [Tue, 12 Aug 2008 18:30:19 +0000 (11:30 -0700)]
pci: revamp the PCI system to have a hierarchial format

Create the concept of a PCI domain, as a hierarcy of busses, devices
and functions.  This avoids large static-sized arrays and allows for
geographical addressing of devices.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
16 years agoctype.h: change extern inline to static inline
H. Peter Anvin [Tue, 12 Aug 2008 18:28:59 +0000 (11:28 -0700)]
ctype.h: change extern inline to static inline

Make -std=gnu99 happy...

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
16 years agostdio.h: change fflush() from "extern inline" to "static inline"
H. Peter Anvin [Tue, 12 Aug 2008 18:20:34 +0000 (11:20 -0700)]
stdio.h: change fflush() from "extern inline" to "static inline"

When compiling with -std=gnu99, apparently gcc doesn't like "extern
inline" anymore.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
16 years agocom32: compile with -std=gnu99
H. Peter Anvin [Tue, 12 Aug 2008 18:18:28 +0000 (11:18 -0700)]
com32: compile with -std=gnu99

Compile with -std=gnu99, this allows us to define initializers inside
for() loops, which makes certain kinds of ugly macros easier to write.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
16 years agostdio.h: revamp fread/fwrite to make gcc less unhappy
H. Peter Anvin [Tue, 12 Aug 2008 18:17:06 +0000 (11:17 -0700)]
stdio.h: revamp fread/fwrite to make gcc less unhappy

Implement the special case size == 1 in terms of a macro; this makes
gcc 4.3 less unhappy.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
16 years agoMerge updated version of the gPXE code
H. Peter Anvin [Tue, 12 Aug 2008 17:34:51 +0000 (10:34 -0700)]
Merge updated version of the gPXE code

Merge gPXE up to upstream git version gpxe-0.9.3-release-197-gff2b6a5
(ff2b6a512d7a4f351e48dc9a042099a1010342a3).

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
16 years agoFix lrand48() and rand()
H. Peter Anvin [Mon, 11 Aug 2008 16:14:40 +0000 (09:14 -0700)]
Fix lrand48() and rand()

lrand48() and rand() had improper parenthesization, which caused it to
return negative values.

Spotted by Stefan Bucur :)

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
16 years agoAdd version.mk to .gitignore
H. Peter Anvin [Thu, 7 Aug 2008 23:10:30 +0000 (16:10 -0700)]
Add version.mk to .gitignore

16 years agocom32/lib: add zalloc()
H. Peter Anvin [Fri, 1 Aug 2008 21:03:21 +0000 (14:03 -0700)]
com32/lib: add zalloc()

Add the nonstandard, but often useful, zalloc() function.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
16 years agopci: inlines for extracting part of a PCI device address
H. Peter Anvin [Fri, 1 Aug 2008 19:56:54 +0000 (12:56 -0700)]
pci: inlines for extracting part of a PCI device address

The inverse operations of pci_mkaddr()

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
16 years agopci: store device address
H. Peter Anvin [Fri, 1 Aug 2008 19:51:28 +0000 (12:51 -0700)]
pci: store device address

When scanning PCI devices, store the device address for reference.
Based on a patch by Sebastian Herbszt.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
16 years agoMerge commit 'origin/for-3.72'
H. Peter Anvin [Fri, 1 Aug 2008 00:34:00 +0000 (17:34 -0700)]
Merge commit 'origin/for-3.72'

16 years agoversion: bump version number
H. Peter Anvin [Fri, 1 Aug 2008 00:33:19 +0000 (17:33 -0700)]
version: bump version number

Next version will presumably be 3.72...

16 years agoDocument search for MinGW syslinux-3.71
H. Peter Anvin [Fri, 1 Aug 2008 00:21:15 +0000 (17:21 -0700)]
Document search for MinGW

16 years agoDocument remaining fixes.
H. Peter Anvin [Fri, 1 Aug 2008 00:20:02 +0000 (17:20 -0700)]
Document remaining fixes.

16 years agochain.c32: error out on missing boot sector signature
H. Peter Anvin [Thu, 31 Jul 2008 02:22:07 +0000 (19:22 -0700)]
chain.c32: error out on missing boot sector signature

If we're booting a disk or partition, then error out if the loaded
sector doesn't have a boot sector signature, rather than the
otherwise-inevitable crash.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
16 years agoklibc/compiler.h: add __weak macro
H. Peter Anvin [Thu, 24 Jul 2008 02:17:08 +0000 (22:17 -0400)]
klibc/compiler.h: add __weak macro

Add a macro for weak symbols.

16 years agoklibc/compiler.h: booleanize likely/unlikely
H. Peter Anvin [Thu, 24 Jul 2008 02:15:53 +0000 (22:15 -0400)]
klibc/compiler.h: booleanize likely/unlikely

__likely() and __unlikely() should explicitly booleanize their
arguments.

16 years agoSimplify and fix label string scanning
H. Peter Anvin [Tue, 22 Jul 2008 17:41:07 +0000 (13:41 -0400)]
Simplify and fix label string scanning

Simplify and fix bugs in the code to store and match label names
without filename mangling.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
16 years agoparseconfig, ui: store the label name unmangled
Sebastian Herbszt [Tue, 22 Jul 2008 15:09:55 +0000 (17:09 +0200)]
parseconfig, ui: store the label name unmangled

Store the label names unmangled and match those against command_line.

- Sebastian

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
16 years agocore/runkernel.inc: remove dead code syslinux-3.71-pre16
Sergey Vlasov [Tue, 22 Jul 2008 09:46:09 +0000 (13:46 +0400)]
core/runkernel.inc: remove dead code

Signed-off-by: Sergey Vlasov <vsu@altlinux.ru>
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
16 years agoFix initrd overwriting the kernel for some kernel sizes
Sergey Vlasov [Tue, 22 Jul 2008 09:46:08 +0000 (13:46 +0400)]
Fix initrd overwriting the kernel for some kernel sizes

The address in EDI returned by the load_high call used to load the
kernel needs to be passed to parse_load_initrd, but the code which
clears memory after setup sectors for 1.2.x kernels was corrupting
low 16 bits of EDI.  In most cases this corruption was not noticed,
because with usual setup sizes DI was set to 0xf800, therefore the
chance of getting the kernel size such that initrd would actually
overwrite the kernel was about 3%.

Signed-off-by: Sergey Vlasov <vsu@altlinux.ru>
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
16 years agoFix loading of *.lkrn images from gPXE
Sergey Vlasov [Tue, 22 Jul 2008 09:46:07 +0000 (13:46 +0400)]
Fix loading of *.lkrn images from gPXE

Attempts to load *.lkrn images were failing with "Not enough memory
to load specified image".  These images have the su_ramdisk_max
header field set to zero, and the code in core/runkernel.inc was
limiting MyHighMemSize too early (before the load_high call used to
load the main part of the kernel).

Signed-off-by: Sergey Vlasov <vsu@altlinux.ru>
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
16 years agovesamenu: avoid strcmp() with NULL
H. Peter Anvin [Tue, 22 Jul 2008 01:36:44 +0000 (21:36 -0400)]
vesamenu: avoid strcmp() with NULL

Avoid touching memory at address zero when going from a background to
a non-background.

16 years agopci: resize pci_device arrays syslinux-3.71-pre15
Sebastian Herbszt [Sat, 19 Jul 2008 20:26:48 +0000 (22:26 +0200)]
pci: resize pci_device arrays

pci_bus->pci_device get's populated with functions so it
should take up to MAX_PCI_DEVICES * MAX_PCI_FUNC elements.
pci_device_list->pci_device get's populated with functions
for every possible pci bus. Therefore it should take up to
MAX_PCI_BUS * MAX_PCI_DEVICES * MAX_PCI_FUNC elements.
Also adjust count variable types.

- Sebastian

16 years agoethersel: use library functions
Sebastian Herbszt [Sat, 19 Jul 2008 19:54:34 +0000 (21:54 +0200)]
ethersel: use library functions

Replace get_config() and execute() with syslinux_config_file() and
syslinux_run_command().

- Sebastian

16 years agoDocument SERIAL fix
H. Peter Anvin [Thu, 17 Jul 2008 22:18:46 +0000 (15:18 -0700)]
Document SERIAL fix

16 years agoCorrectly parse "serial" statements with no baud rate
H. Peter Anvin [Thu, 17 Jul 2008 21:54:31 +0000 (14:54 -0700)]
Correctly parse "serial" statements with no baud rate

People often don't bother specifying a baud rate for virtual serial
ports.  Handle parsing correctly.

16 years agowin32: run shell script in the current dir with ./
H. Peter Anvin [Thu, 17 Jul 2008 20:47:51 +0000 (13:47 -0700)]
win32: run shell script in the current dir with ./

Need leading ./ to run shell script in the current directory.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
16 years agoisolinux: rename CurDir to CurrentDir
Sebastian Herbszt [Wed, 16 Jul 2008 23:13:48 +0000 (01:13 +0200)]
isolinux: rename CurDir to CurrentDir

ldlinux and extlinux are both using CurrentDir variable name.
Rename CurDir to make it consistent with those.

- Sebastian

16 years ago<sys/cpu.h>: asm() formatting cleanup
H. Peter Anvin [Thu, 17 Jul 2008 01:57:28 +0000 (18:57 -0700)]
<sys/cpu.h>: asm() formatting cleanup

Minor asm() formatting cleanup.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
16 years ago<sys/cpu.h>: drop redundant "return"
H. Peter Anvin [Thu, 17 Jul 2008 01:56:50 +0000 (18:56 -0700)]
<sys/cpu.h>: drop redundant "return"

Drop "return" for function returning void.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
16 years agocom32: move cpuid inlines to <sys/cpu.h>
H. Peter Anvin [Thu, 17 Jul 2008 01:56:01 +0000 (18:56 -0700)]
com32: move cpuid inlines to <sys/cpu.h>

<sys/cpu.h> already has most of the CPUID inlines, put them all there.
<cpuid.h> still have structures for the code that really should be
librarized at some point.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
16 years agowin32: search for a mingw compiler under several names
H. Peter Anvin [Thu, 17 Jul 2008 00:01:33 +0000 (17:01 -0700)]
win32: search for a mingw compiler under several names

Search for the MinGW compiler under several names, since different
distros like to install it under different names.  What's wrong with a
simple mingw- prefix??

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
16 years agoifcpu64.c32: clean up the sources syslinux-3.71-pre14
H. Peter Anvin [Wed, 16 Jul 2008 22:42:20 +0000 (15:42 -0700)]
ifcpu64.c32: clean up the sources

Clean up the sources to make them easier to read.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
16 years agocpuid.h: add __constfunc
H. Peter Anvin [Wed, 16 Jul 2008 22:39:40 +0000 (15:39 -0700)]
cpuid.h: add __constfunc

Add __constfunc to CPUID calls, so gcc knows it can CSE them.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
16 years agocpufeature.h: remove unused macros syslinux-3.71-pre13
H. Peter Anvin [Wed, 16 Jul 2008 22:25:06 +0000 (15:25 -0700)]
cpufeature.h: remove unused macros

Remove a bunch of unused macros (from Linux) which we don't need or
use.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
16 years agoifcpu64.c32: simple module to choose a 32, 32pae, or 64-bit kernel
H. Peter Anvin [Wed, 16 Jul 2008 22:21:21 +0000 (15:21 -0700)]
ifcpu64.c32: simple module to choose a 32, 32pae, or 64-bit kernel

A very simple module to choose between a 32-bit, 32-bit PAE, or a
64-bit kernel depending on the capabilities of the CPU.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
16 years agocpuid.[ch]: various cleanups
H. Peter Anvin [Wed, 16 Jul 2008 22:12:47 +0000 (15:12 -0700)]
cpuid.[ch]: various cleanups

Minor cleanups to the CPUID code

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
16 years agoNEWS: document ADV CBIOS fix. syslinux-3.71-pre12
H. Peter Anvin [Wed, 16 Jul 2008 18:32:09 +0000 (11:32 -0700)]
NEWS: document ADV CBIOS fix.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
16 years agoadv: fix the handling of the ADV with CBIOS
H. Peter Anvin [Wed, 16 Jul 2008 18:27:00 +0000 (11:27 -0700)]
adv: fix the handling of the ADV with CBIOS

Fix numerous problems in the way we handled the ADV with CBIOS.  The
EBIOS code was largely correct, but the CBIOS code was just busted.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
16 years agoparseconfig: fix invalid mangle_name assumption
H. Peter Anvin [Wed, 16 Jul 2008 18:25:57 +0000 (11:25 -0700)]
parseconfig: fix invalid mangle_name assumption

Remove assumption that mangle_name leaves DI beyond the end of the
buffer.  This was true back when the mangled filename buffer was an
11-byte DOS filename, but it is definitely not true anymore.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
16 years agochain.c32: fix test for partition types which can be hidden syslinux-3.71-pre11
Sergey Vlasov [Wed, 16 Jul 2008 11:13:21 +0000 (15:13 +0400)]
chain.c32: fix test for partition types which can be hidden

The result of shift in C is undefined if the shift count is greater
than the width of type.  On x86 the corresponding CPU instruction
masks the shift count with 0x1f, therefore (mask >> (t & ~0x10)) & 1)
gives false positives for types greater than 0x1f (e.g., the partition
type 0x8e (Linux LVM) could be "hidden" to 0x9e).

Signed-off-by: Sergey Vlasov <vsu@altlinux.ru>
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
16 years agochain.c32: fix bounce buffer handling
Sergey Vlasov [Wed, 16 Jul 2008 11:13:20 +0000 (15:13 +0400)]
chain.c32: fix bounce buffer handling

Fix breakage in the "hide" option support patch:

 - The code which initialized the global variable "dapa" was lost in
   commit 81c203f2, therefore EBIOS access did not work properly.
   Fixed by removing the global variable completely and moving all
   bounce buffer handling into read_sector() and write_sector().

 - write_sector() copied data to the bounce buffer, but then tried
   to use the pointer to the original buffer in BIOS calls.

Signed-off-by: Sergey Vlasov <vsu@altlinux.ru>
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
16 years agogen-id: only truncate tags starting with syslinux-<version>-
H. Peter Anvin [Tue, 15 Jul 2008 23:10:46 +0000 (16:10 -0700)]
gen-id: only truncate tags starting with syslinux-<version>-

If git-describe comes up with a tag not starting with
syslinux-<version>- then leave it as-is.

16 years agoUse "git describe" in generating build signatures
H. Peter Anvin [Tue, 15 Jul 2008 23:06:14 +0000 (16:06 -0700)]
Use "git describe" in generating build signatures

We got rid of the 10-character limitation a long time ago, so we might
as well use "git describe" in generating the build signatures.

16 years agoReformat overwide comment
H. Peter Anvin [Tue, 15 Jul 2008 16:53:47 +0000 (09:53 -0700)]
Reformat overwide comment

16 years agoNEWS: KEYMAP -> KBDMAP
H. Peter Anvin [Mon, 14 Jul 2008 20:40:54 +0000 (13:40 -0700)]
NEWS: KEYMAP -> KBDMAP

16 years agokeymap, font: use readc, so we can handle indeterminate file sizes syslinux-3.71-pre10
H. Peter Anvin [Mon, 14 Jul 2008 19:44:21 +0000 (12:44 -0700)]
keymap, font: use readc, so we can handle indeterminate file sizes

The keymap and font commands still assumed that we knew the file size,
which is no longer true.  Fix that by instead using "readc" and
checking the CF.

16 years agogetc: add "readc" function to do block reads
H. Peter Anvin [Mon, 14 Jul 2008 19:43:50 +0000 (12:43 -0700)]
getc: add "readc" function to do block reads

Add "readc" function to do block reads.  Currently it just does a loop
around "call getc/stosb".

16 years agoconio: jump to loadkeys_ret in loadkeys if size not 256 bytes syslinux-3.71-pre9
Sebastian Herbszt [Mon, 14 Jul 2008 15:04:02 +0000 (17:04 +0200)]
conio: jump to loadkeys_ret in loadkeys if size not 256 bytes

Add back jump to loadkeys_ret if the file size was not 256 bytes;
inadvertently deleted when removing DX:AX 16-bitism.

16 years agoDocument unbreaking of KEYMAP syslinux-3.71-pre8
H. Peter Anvin [Sun, 13 Jul 2008 23:09:43 +0000 (16:09 -0700)]
Document unbreaking of KEYMAP

16 years agoFix residual use of DX:AX in the KEYMAP command
H. Peter Anvin [Sun, 13 Jul 2008 23:08:44 +0000 (16:08 -0700)]
Fix residual use of DX:AX in the KEYMAP command

The KEYMAP command still expected length in DX:AX, and so got broken.

16 years agochain.c32: explicitly verify after writing MBR syslinux-3.71-pre7
H. Peter Anvin [Fri, 11 Jul 2008 05:29:49 +0000 (01:29 -0400)]
chain.c32: explicitly verify after writing MBR

If we write the MBR, do verify by reading it back and comparing.
Right now all we do is print an error, though.

16 years agochain.c32: new "hide" option
H. Peter Anvin [Fri, 11 Jul 2008 05:22:15 +0000 (01:22 -0400)]
chain.c32: new "hide" option

Option for chain.c32 to hide primary partitions on the boot drive.

16 years agosyslinux.txt: update; add INITRD
H. Peter Anvin [Thu, 10 Jul 2008 00:33:15 +0000 (20:33 -0400)]
syslinux.txt: update; add INITRD

Add the INITRD statement and a few other updates.

16 years agoDocument fix for RootDir
H. Peter Anvin [Wed, 9 Jul 2008 19:56:42 +0000 (15:56 -0400)]
Document fix for RootDir

16 years agoldlinux: CurrentDir not set if syslinux.cfg is missing
Sebastian Herbszt [Wed, 9 Jul 2008 19:02:39 +0000 (21:02 +0200)]
ldlinux: CurrentDir not set if syslinux.cfg is missing

If a syslinux floppy does not contain a config file (syslinux.cfg) modules are
not being found unless specified with a directory prefix (e.g. /pcitest.c32).
The reason is that CurrentDir is only set if there is a config file present. This is a
possible regression since commit 68eefb79e2cbb590ebf958dd0c50ce00b941abd2.
Before this change RootDir was used in searchdir and now it's CurrentDir unless
the filename starts with '/'. Possible fix is to set CurrentDir to RootDir if no config
file is found.

Actually it seems better to move this to the top of the "check for config file" block.
Initialize CurrentDir to RootDir and change it if a config file is found.

- Sebastian

16 years agoMake version.mk optional, so cleaning commands work syslinux-3.71-pre6
H. Peter Anvin [Mon, 7 Jul 2008 23:11:42 +0000 (16:11 -0700)]
Make version.mk optional, so cleaning commands work

For cleaning commands, we need version.mk to be optional.

16 years agoShare the gen-id stuff between core and memdisk
H. Peter Anvin [Mon, 7 Jul 2008 22:32:21 +0000 (15:32 -0700)]
Share the gen-id stuff between core and memdisk

Both core and memdisk wants to use the gen-id stuff, so let it.

16 years agoCentralize more of the version number machinery
H. Peter Anvin [Mon, 7 Jul 2008 22:21:56 +0000 (15:21 -0700)]
Centralize more of the version number machinery

Centralize more (most) of the version number machinery to version.pl.

16 years agoDrop macros that just point to other macros
H. Peter Anvin [Mon, 7 Jul 2008 22:00:56 +0000 (15:00 -0700)]
Drop macros that just point to other macros

Drop macros for "date" and "version_str", which are nothing but
redefined names of macros we already define (DATE_STR and VERSION).

16 years agocomboot: re-enable the idle call syslinux-3.71-pre5
H. Peter Anvin [Mon, 7 Jul 2008 21:54:53 +0000 (14:54 -0700)]
comboot: re-enable the idle call

Try again to enable the idle call.

16 years agopcitest: display "1 bus found" instead of "1 buses found"
Sebastian Herbszt [Mon, 7 Jul 2008 20:28:16 +0000 (22:28 +0200)]
pcitest: display "1 bus found" instead of "1 buses found"

Fix the text for pci_bus_list->count == 1 ("1 bus found").

- Sebastian

16 years agocomboot: make sure we CLD at all relevant entry points
H. Peter Anvin [Mon, 7 Jul 2008 20:20:05 +0000 (13:20 -0700)]
comboot: make sure we CLD at all relevant entry points

DF is undefined on entry, so make sure we clear it at all entry points
where it could possibly matter.

16 years agocomboot.inc: add missing "section .text"
H. Peter Anvin [Mon, 7 Jul 2008 19:46:48 +0000 (12:46 -0700)]
comboot.inc: add missing "section .text"

16 years agocomboot: save/restore all the DOS vectors; handle a few more
H. Peter Anvin [Mon, 7 Jul 2008 19:43:15 +0000 (12:43 -0700)]
comboot: save/restore all the DOS vectors; handle a few more

- save and restore all the DOS vectors around COMBOOT invocations.
- handle INT 28h and INT 29h, and IRET on INT 2Dh, 2Fh, 33h.

16 years agoInclude the git ID in the build string
H. Peter Anvin [Mon, 7 Jul 2008 19:08:47 +0000 (12:08 -0700)]
Include the git ID in the build string

If we're doing an unofficial build from git, put the git id and a
dirty flag in the build string, instead of a timestamp.  This is a lot
more useful.

16 years agoAllow the initrd to be specified on a separate line syslinux-3.71-pre4
H. Peter Anvin [Fri, 4 Jul 2008 01:45:42 +0000 (18:45 -0700)]
Allow the initrd to be specified on a separate line

Allow the initrd to be specified on a separate line from command-line
options (append).  This apparently can help certain tools.

16 years agoNEWS: handle being the only floppy better.
H. Peter Anvin [Thu, 3 Jul 2008 22:32:39 +0000 (15:32 -0700)]
NEWS: handle being the only floppy better.

16 years agodoc/memdisk.txt: document INT 1Eh fields
H. Peter Anvin [Thu, 3 Jul 2008 22:29:57 +0000 (15:29 -0700)]
doc/memdisk.txt: document INT 1Eh fields

Document the fields to recover the original INT 1Eh vector.

16 years agomemdisk: install a DPT if needed in INT 1Eh; better zero-drive detection
H. Peter Anvin [Thu, 3 Jul 2008 22:22:39 +0000 (15:22 -0700)]
memdisk: install a DPT if needed in INT 1Eh; better zero-drive detection

Per the Interrupt list, treat INT 13 08 returning with CL=0 as a
failure, meaning single drive only.

If we find ourselves the only floppy drive, install a DPT into INT
1Eh.  This appears to be needed for PC-DOS 7.0 to boot.  This can be
overridden with the "nodpt" option, and forced with the "dpt" option.