H. Peter Anvin [Thu, 31 May 2007 18:53:55 +0000 (11:53 -0700)]
Add missing parenthesis
H. Peter Anvin [Thu, 31 May 2007 18:47:01 +0000 (11:47 -0700)]
Fix problem where the command line would get truncated during edit
Fix a problem where, during edit, the command line would occationally lose
the last character.
H. Peter Anvin [Thu, 31 May 2007 18:46:13 +0000 (11:46 -0700)]
Improve comment
H. Peter Anvin [Thu, 31 May 2007 18:39:53 +0000 (11:39 -0700)]
Remove Linux test compilation
Remove support for Linux test compilation. Use Qemu for testing, instead.
H. Peter Anvin [Thu, 31 May 2007 18:37:20 +0000 (11:37 -0700)]
Change \2#0 -> \1#
Now when attribute codes can be different lengths, use that...
H. Peter Anvin [Thu, 31 May 2007 04:31:41 +0000 (21:31 -0700)]
Handle color tables with more than 100 entries
For sane handling of message files with attributes, we need to be able
to do more than 256 attributes. The easiest way is to simply allow a
table to be that large; we have enough memory for the job.
Otavio Salvador [Thu, 31 May 2007 02:26:08 +0000 (23:26 -0300)]
Add support to change menu vertical and horizontal shifting
Two new options has been add to allow to change the menu position and
also makes it backward compatible with previous configuration files.
The new options are 'vshift' and 'hshift'
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
H. Peter Anvin [Thu, 31 May 2007 00:45:32 +0000 (17:45 -0700)]
Parse F-key help commands in the menu system
This adds support for parsing the F-key help commands in the menu
system; it still doesn't actually do anything with them.
H. Peter Anvin [Thu, 31 May 2007 00:17:11 +0000 (17:17 -0700)]
Allow binding help text to F11 and F12.
Fix the odd anomaly that one can't bind help text to F11 and F12.
H. Peter Anvin [Wed, 30 May 2007 23:49:57 +0000 (16:49 -0700)]
Add "help" to the comment
Add the "help" entry to list in comment
Luciano Rocha [Wed, 23 May 2007 20:50:16 +0000 (21:50 +0100)]
Don't clobber /dev/null when compiling as root
Compiling as root is highly discouraged, but some people do it anyway.
gcc_ok, however, can clobber /dev/null due to "-o /dev/null"; this is
bad. Instead, write a temporary file and delete it.
H. Peter Anvin [Wed, 23 May 2007 06:58:32 +0000 (23:58 -0700)]
Drop TFTP_MTU to 1440.
Drop TFTP_MTU to 1440. This gives TFTP_LARGE_BLK = 1408 = 0x580, which
is the roundest number without dropping the MTU significantly below the
standard Ethernet MTU.
H. Peter Anvin [Wed, 23 May 2007 06:27:46 +0000 (23:27 -0700)]
Make it safe to call close_file on an already closed file.
The SYSLINUX internal API closes a file automatically upon reading
to block EOF (not necessarily file EOF!) Thus, it's fairly likely
we'll get SI == 0 (closed file) passed to close_file at some point
or another.
Just plain admit it, and make close_file accept SI == 0 by spec.
H. Peter Anvin [Wed, 23 May 2007 06:03:47 +0000 (23:03 -0700)]
Make the menu system understand INCLUDE as well.
This adds support for INCLUDE (as opposed to MENU INCLUDE) to the
menu system.
H. Peter Anvin [Wed, 23 May 2007 06:03:08 +0000 (23:03 -0700)]
Document INCLUDE
H. Peter Anvin [Wed, 23 May 2007 05:58:57 +0000 (22:58 -0700)]
Add "include" command to the core syslinux parser
H. Peter Anvin [Wed, 23 May 2007 05:46:25 +0000 (22:46 -0700)]
getc: make sure EOF is "sticky"
Make sure to keep all the counters at zero if we hit EOF, so that
subsequent calls will also hit EOF (we rely on that in some places.)
H. Peter Anvin [Wed, 23 May 2007 05:40:39 +0000 (22:40 -0700)]
New stackable getc interface, using the real_mode_seg for buffers.
Change the getc system so that it is fully stackable. We use the
real_mode_seg for the necessary buffers, so using the real_mode_seg
across use of open/getc/close is not permitted.
H. Peter Anvin [Wed, 23 May 2007 04:39:11 +0000 (21:39 -0700)]
Revert "ISOLINUX: Include the caching code"
This reverts commit
c9bd66193212de58d1f7de78e3076b01e0172640.
We don't need the functionality after all.
H. Peter Anvin [Wed, 23 May 2007 04:38:34 +0000 (21:38 -0700)]
Revert "Add subroutines to add/remove blocks from the expiry chain"
This reverts commit
8920cf3559c034c947c2dd63892c9dd25453d245.
The functionality needs some more polish, but we don't actually need
it at the moment.
H. Peter Anvin [Wed, 23 May 2007 04:02:34 +0000 (21:02 -0700)]
Use a segment layout more similar to the other derivatives
As the difference between the derivatives has decreased, make the
segment layout closer to the same (with pktbuf_seg == cache_seg.)
H. Peter Anvin [Wed, 23 May 2007 03:19:34 +0000 (20:19 -0700)]
Add a proper internal close function (close_file)
Add a "close_file" function and hook it up to the long-standing comboot
API function. At the moment, all it does is free up internal
resources; in particular, for PXELINUX it should also really send an
ERROR packet to the server to terminate the connection on that end.
H. Peter Anvin [Wed, 23 May 2007 03:18:13 +0000 (20:18 -0700)]
Add subroutines to add/remove blocks from the expiry chain
Add subroutines to add/remove blocks from the expiry chain. This allows
a user to remove a block from expiration and thus hold on to the buffer
for some time.
H. Peter Anvin [Wed, 23 May 2007 02:41:50 +0000 (19:41 -0700)]
ISOLINUX: Include the caching code
Include the caching code in isolinux, and adjust the segments accordingly.
This is currently unused, but is indend to be used by getc shortly.
H. Peter Anvin [Wed, 23 May 2007 00:43:18 +0000 (17:43 -0700)]
We need to bloody well set KernelVersion before using it...
H. Peter Anvin [Tue, 22 May 2007 22:46:32 +0000 (15:46 -0700)]
Fix loading pre-2.00 protocol kernels.
Fix loading pre-2.00 protocol kernels. This is surprisingly important,
since at least memtest86+ mimics such an ancient kernel.
H. Peter Anvin [Sat, 12 May 2007 01:39:29 +0000 (18:39 -0700)]
PXELINUX: Use the client-identifier instead when DHCP doesn't have a MAC.
For networks without a stable MAC, or where the MAC is just way too long,
the MAC length in the DHCP header is zero and we are supposed to use
the client-identifier instead. Use that as the "interface address"
for the purpose of getting the config file and in the BOOTIF= option.
Right now I have a limit (MAC_MAX) of 32 bytes for this; since that
turns into a 99-character filename.
While we're at it, clean up the parsing of DHCP config options.
H. Peter Anvin [Thu, 10 May 2007 18:17:35 +0000 (11:17 -0700)]
Remove stale file
H. Peter Anvin [Thu, 10 May 2007 04:45:06 +0000 (21:45 -0700)]
Fix <Ctrl-N> for printing network information
- di needs to be pushed to the stack;
- need to crlf before printing...
H. Peter Anvin [Thu, 10 May 2007 01:31:23 +0000 (18:31 -0700)]
PXELINUX: Add <Ctrl-N> to print the network information
Pressing <Ctrl-N> at the boot prompt will output the ipappend strings.
H. Peter Anvin [Thu, 10 May 2007 01:23:40 +0000 (18:23 -0700)]
Document update of Linux boot protocol.
H. Peter Anvin [Mon, 7 May 2007 20:47:10 +0000 (13:47 -0700)]
More tweaks to allow bigger stack/heap, and boot protocol adjustments
Seems the su_heapend field was never set up right; also sanitize the
way the pre-2.02 command line is handled.
H. Peter Anvin [Sun, 6 May 2007 02:23:14 +0000 (19:23 -0700)]
Make more space for the heap when doing so is possible
If we have a modern kernel which is loaded high, we can allow a lot
more space for the real-mode heap.
H. Peter Anvin [Fri, 27 Apr 2007 00:39:27 +0000 (17:39 -0700)]
Update the default names of the MinGW tools.
H. Peter Anvin [Fri, 27 Apr 2007 00:35:55 +0000 (17:35 -0700)]
Document the use of the MinGW compiler.
H. Peter Anvin [Thu, 26 Apr 2007 22:25:40 +0000 (15:25 -0700)]
Add wrapper function syslinux_run_kernel_image()
Add syslinux_run_kernel_image() wrapper function for API function 0016h.
H. Peter Anvin [Thu, 26 Apr 2007 22:24:41 +0000 (15:24 -0700)]
linux.c32: saturate memory size to 32 bits if too large
H. Peter Anvin [Tue, 10 Apr 2007 23:19:52 +0000 (16:19 -0700)]
Make the pixel format canonicalization code a bit easier to read.
H. Peter Anvin [Tue, 10 Apr 2007 22:24:31 +0000 (15:24 -0700)]
Document recent additions.
H. Peter Anvin [Tue, 10 Apr 2007 22:23:30 +0000 (15:23 -0700)]
MBR: fix problems when LBA > 65535*sectors.
Fix division overflow bug when LBA > 65535*sectors. Bug report by
Devin Bayer.
H. Peter Anvin [Tue, 10 Apr 2007 22:20:15 +0000 (15:20 -0700)]
Fix expansion of palette images to ABGR.
We would expand palette images to BGR, but not to ABGR. Fix.
H. Peter Anvin [Wed, 4 Apr 2007 23:13:49 +0000 (16:13 -0700)]
Add syslinux_local_boot() wrapper function
Add API wrapper function for the Local Boot function.
H. Peter Anvin [Tue, 3 Apr 2007 23:13:02 +0000 (16:13 -0700)]
pxe_get_cached.c: readability improvement.
H. Peter Anvin [Tue, 3 Apr 2007 22:14:00 +0000 (15:14 -0700)]
intcall, farcall: readability improvements.
H. Peter Anvin [Tue, 3 Apr 2007 22:07:31 +0000 (15:07 -0700)]
A few more syslinux wrapper function
Add implementations of a few more syslinux wrapper functions:
syslinux_run_command()
syslinux_run_default()
syslinux_final_cleanup()
H. Peter Anvin [Tue, 3 Apr 2007 22:04:54 +0000 (15:04 -0700)]
Final cleanup *does* return.
H. Peter Anvin [Tue, 3 Apr 2007 19:51:46 +0000 (12:51 -0700)]
set -e so the build stops on error.
H. Peter Anvin [Tue, 3 Apr 2007 19:50:50 +0000 (12:50 -0700)]
Move the PCI-scanning code into the library proper.
H. Peter Anvin [Tue, 3 Apr 2007 17:35:03 +0000 (10:35 -0700)]
pci.c: change from GPL to MIT license; Erwan has OK'd this change.
H. Peter Anvin [Tue, 3 Apr 2007 17:33:44 +0000 (10:33 -0700)]
pcitest.c: remove obsolete fields; formatting cleanups
Ferenc Wagner [Tue, 3 Apr 2007 17:07:20 +0000 (19:07 +0200)]
Fix the handling of namelen and argument parsing in linux.c32
H. Peter Anvin [Sun, 1 Apr 2007 23:36:38 +0000 (16:36 -0700)]
ethersel: move RID range parsing into its own function.
H. Peter Anvin [Sun, 1 Apr 2007 23:36:00 +0000 (16:36 -0700)]
Remove bogus clobbering of the mask
Remove bogus clobbering of the DID mask, effectively making the option
to set a mask for the DID unusable.
H. Peter Anvin [Sun, 1 Apr 2007 23:29:28 +0000 (16:29 -0700)]
Return first match in list, not first match in PCI hierarchy
Return the first match we find in the list, not the first match we
can find on the PCI bus. This allows us to have more specific matches
first followed by less specific matches.
H. Peter Anvin [Sun, 1 Apr 2007 23:25:56 +0000 (16:25 -0700)]
Remove useless attempt at reading pci.ids
We try to read pci.ids over and over to get human-readable strings,
and reserve enormous amounts of memory for them. We don't ever
actually use them. If we want to have a PCI database we should do
that elsewhere, and better.
H. Peter Anvin [Fri, 30 Mar 2007 20:33:47 +0000 (13:33 -0700)]
Support chaining shuffle descriptors when buffer is too small
Provide a method for re-loading shuffle descriptors from a buffer in
high memory when the shuffle descriptors are too many to fit in the
buffer. This can happen when trying to stitch an initramfs together
from parts. Still need library support for this, however.
H. Peter Anvin [Fri, 30 Mar 2007 20:28:48 +0000 (13:28 -0700)]
Move extlinux boot stuff into /boot/extlinux; /etc/extlinux.conf symlink
- Move extlinux boot stuff into /boot/extlinux
- /etc/extlinux.conf -> /boot/extlinux/extlinux.conf symlink.
H. Peter Anvin [Tue, 20 Mar 2007 18:11:46 +0000 (11:11 -0700)]
SYSLINUX API headers, and beginning of implementation.
H. Peter Anvin [Tue, 20 Mar 2007 17:45:14 +0000 (10:45 -0700)]
Stealth whitespace cleanup
H. Peter Anvin [Tue, 20 Mar 2007 17:43:36 +0000 (10:43 -0700)]
Add interface for querying the syslinux feature flags.
H. Peter Anvin [Tue, 20 Mar 2007 15:31:26 +0000 (08:31 -0700)]
Move <syslinux.h> to <syslinux/idle.h>; clean up libutil do_idle()
Move <syslinux.h> to <syslinux/idle.h> since that was all that was there;
do_idle() in libutil can simply be a macro for syslinux_idle() or
sched_yield() as appropriate.
H. Peter Anvin [Tue, 20 Mar 2007 15:21:22 +0000 (08:21 -0700)]
Rename the new version 3.50 instead of 3.40; too many new things.
H. Peter Anvin [Fri, 16 Mar 2007 01:20:55 +0000 (18:20 -0700)]
Linux-loading module with optional DHCP generation.
Load a Linux module, generate initramfs and optionally add
/dhcpinfo.dat with the DHCP query information.
H. Peter Anvin [Fri, 16 Mar 2007 00:17:29 +0000 (17:17 -0700)]
initramfs chain handling: add support for forcing the alignment.
cpio has annoying alignment constraints; make it possible to enforce
them without adding padding to the end of last member (which breaks things
which relies on gzip and need to know the final length.)
H. Peter Anvin [Thu, 15 Mar 2007 23:57:43 +0000 (16:57 -0700)]
Library functions for manipulating initramfs
Library support for constructing initramfs. This version is *not*
complete, as it doesn't take into account alignment requirements
properly.
H. Peter Anvin [Thu, 15 Mar 2007 18:38:16 +0000 (11:38 -0700)]
Initial library support for booting a Linux kernel
H. Peter Anvin [Thu, 15 Mar 2007 07:57:29 +0000 (00:57 -0700)]
PXE header support; higher-level function for PXE GET_CACHED_INFO
Beginnings of higher-level functions for PXE support. For now, only
pxe_get_cached_info() is actually supported.
H. Peter Anvin [Thu, 15 Mar 2007 05:12:34 +0000 (22:12 -0700)]
Restore intentional blank lines at the end of sample/sample.msg
H. Peter Anvin [Thu, 15 Mar 2007 05:07:09 +0000 (22:07 -0700)]
Stealth whitespace cleanup (automated)
H. Peter Anvin [Thu, 15 Mar 2007 04:50:36 +0000 (21:50 -0700)]
Add a register-setting shuffle and boot for real mode; clean up headers.
- Add an API function to shuffle and boot which sets *all* RM registers;
- Move those structures to <syslinux/bootpm.h> and <syslinux/bootrm.h>
H. Peter Anvin [Thu, 15 Mar 2007 02:22:07 +0000 (19:22 -0700)]
Move the loadfile() routine into the syslinux/ namespace, and use it.
- Move the loadfile() routine into <syslinux/loadfile.h>.
- Actually use the loadfile() routine.
H. Peter Anvin [Thu, 15 Mar 2007 02:06:36 +0000 (19:06 -0700)]
Finish the shuffle and boot interface, and add an ELF loading module.
The shuffle and boot interface, including the library support, should now
work as advertised. Add an ELF-loading module as a demo, and it's probably
useful for someone, too.
H. Peter Anvin [Thu, 15 Mar 2007 01:59:40 +0000 (18:59 -0700)]
Fix the shuffle and boot interface. It was probably always broken.
H. Peter Anvin [Wed, 14 Mar 2007 23:49:34 +0000 (16:49 -0700)]
Dummy <assert.h>
H. Peter Anvin [Tue, 13 Mar 2007 23:35:56 +0000 (16:35 -0700)]
INT 22h, AX=001Ah: we have FS:SI pointing to the register data, not DS:SI
H. Peter Anvin [Tue, 13 Mar 2007 22:57:03 +0000 (15:57 -0700)]
Add support for using a shuffle descriptor to bzero rather than bcopy
When source address is set to -1, do a bzero instead of a bcopy.
H. Peter Anvin [Mon, 12 Mar 2007 20:17:35 +0000 (13:17 -0700)]
Wrapper infrastructure for "shuffle and boot"
Initial checkin of a wrapper infrastructure for the "shuffle and boot"
interface, both real and protected mode. This code automatically will
figure out the necessary sequence of moves, taking into account swaps
and overlaps as necessary.
H. Peter Anvin [Sun, 11 Mar 2007 23:26:35 +0000 (16:26 -0700)]
New API call: cleanup, shuffle and boot to flat protected mode
Add an API call to invoke flat protected mode; e.g. to boot an ELF kernel.
H. Peter Anvin [Wed, 7 Mar 2007 19:07:52 +0000 (11:07 -0800)]
Formatting cleanups
Erwan Velu [Thu, 8 Feb 2007 20:39:47 +0000 (21:39 +0100)]
Ethersel must use the pci com32 module instead of builtin pci detection code
From : Erwan Velu <erwan.velu@free.fr>
This patch
- remove the pci detection code from ethersel
- add a find_pci_device() function in the PCI com32 module
- make ethersel using the pci com32 module instead of builtin pci
detection code
Testing and feedback are welcome.
Signed-off-by:Erwan Velu <erwan.velu@free.fr>
H. Peter Anvin [Tue, 6 Mar 2007 06:06:07 +0000 (22:06 -0800)]
menu system: make the help message end row a configurable.
H. Peter Anvin [Tue, 6 Mar 2007 01:40:09 +0000 (17:40 -0800)]
TEXT HELP: Multiline per-entry help messages in the simple menu system.
H. Peter Anvin [Sat, 3 Mar 2007 00:27:35 +0000 (16:27 -0800)]
mkdiskimage: shortcut for zipdisk geometry
H. Peter Anvin [Fri, 2 Mar 2007 03:45:35 +0000 (19:45 -0800)]
Update copyright date
H. Peter Anvin [Wed, 28 Feb 2007 23:46:58 +0000 (15:46 -0800)]
Simple menu system: unified way to handle message strings; add NOTABMSG
A unified way to handle the message strings (for i18n/customization);
add a MENU NOTABMSG customizable string.
H. Peter Anvin [Wed, 28 Feb 2007 06:47:32 +0000 (22:47 -0800)]
Teach the menu system to ignore TEXT blocks for now.
H. Peter Anvin [Wed, 28 Feb 2007 06:38:10 +0000 (22:38 -0800)]
Support customization of menu messages.
H. Peter Anvin [Wed, 28 Feb 2007 06:15:29 +0000 (22:15 -0800)]
Correctly ignore TEXT blocks.
H. Peter Anvin [Sat, 24 Feb 2007 00:37:26 +0000 (16:37 -0800)]
Do not overwrite pointer "p" when calling is_kernel_type()
If is_kernel_type() returns NULL, we don't want it to set p to NULL,
or subsequent options won't be parsed.
Bug report from Ram Yalamanchili.
H. Peter Anvin [Tue, 20 Feb 2007 22:41:23 +0000 (14:41 -0800)]
Remove now-unnecessary push/pop.
H. Peter Anvin [Tue, 20 Feb 2007 02:25:32 +0000 (18:25 -0800)]
Make sure we can read the config file name even after changing it...
H. Peter Anvin [Tue, 20 Feb 2007 01:41:35 +0000 (17:41 -0800)]
Support multiple image types in the menu system
H. Peter Anvin [Tue, 20 Feb 2007 01:41:21 +0000 (17:41 -0800)]
Add new PXE keyword (we might have to distinguish from BOOT at some point)
H. Peter Anvin [Tue, 20 Feb 2007 00:27:42 +0000 (16:27 -0800)]
Assume 3.40 will be the first version which fixes Read Disk.
H. Peter Anvin [Tue, 20 Feb 2007 00:26:52 +0000 (16:26 -0800)]
Merge with syslinux-3.3x
H. Peter Anvin [Mon, 19 Feb 2007 23:54:58 +0000 (15:54 -0800)]
Comboot function READ DISK corrupts its arguments; fix.
H. Peter Anvin [Sat, 10 Feb 2007 21:22:40 +0000 (13:22 -0800)]
Merge ... git+ssh:///boot/syslinux/syslinux.git#syslinux-3.3x
H. Peter Anvin [Fri, 9 Feb 2007 02:05:23 +0000 (18:05 -0800)]
Set up the LRU chain correctly (d'oh!)
H. Peter Anvin [Fri, 9 Feb 2007 00:02:41 +0000 (16:02 -0800)]
Fix -fno-stack-protector per bug report from Gilles Espinasse
H. Peter Anvin [Thu, 8 Feb 2007 18:14:55 +0000 (10:14 -0800)]
%ifndef IS_PXELINUX won't do much good... %if IS_PXELINUX == 0 is correct