david/ipxe
Archived
1
0
This repository has been archived on 2020-12-06. You can view files and clone it, but cannot push or open issues or pull requests.
ipxe/src/core
Michael Brown 77a5cc6b13 [ELF] Add ability to boot ELF images generated by wraplinux and mkelfImage
Delete ELF as a generic image type.  The method for invoking an
ELF-based image (as well as any tables that must be set up to allow it
to boot) will always depend on the specific architecture.  core/elf.c
now only provides the elf_load() function, to avoid duplicating
functionality between ELF-based image types.

Add arch/i386/image/elfboot.c, to handle the generic case of 32-bit
x86 ELF images.  We don't currently set up any multiboot tables, ELF
notes, etc.  This seems to be sufficient for loading kernels generated
using both wraplinux and coreboot's mkelfImage.

Note that while Etherboot 5.4 allowed ELF images to return, we don't.
There is no callback mechanism for the loaded image to shut down gPXE,
which means that we have to shut down before invoking the image.  This
means that we lose device state, protection against being trampled on,
etc.  It is not safe to continue afterwards.
2008-06-09 13:50:00 +01:00
..
abft.c Added support for draft version of the AoE Boot Firmware Table. 2007-07-31 14:05:03 +01:00
acpi.c Added generic function for calculating ACPI table checksum 2006-08-27 22:02:08 +00:00
ansiesc.c Added support for interpreting ANSI escape sequences on behalf of 2006-12-18 00:01:30 +00:00
asprintf.c Added [v]asprintf() 2007-06-03 01:50:03 +00:00
basename.c Added dirname() 2007-06-03 01:51:10 +00:00
bitmap.c Reallocate memory for bitmaps only when necessary. 2007-11-29 19:10:10 +00:00
bitops.c Don't get stuck in an infinite loop on negative integers! 2007-09-21 01:14:44 +01:00
btext.c Dead code removal. 2007-07-14 15:42:26 +01:00
config.c [ELF] Add ability to boot ELF images generated by wraplinux and mkelfImage 2008-06-09 13:50:00 +01:00
console.c Add "name" field to struct device to allow human-readable hardware device 2007-01-10 04:22:09 +00:00
cpio.c Add code for constructing single-file cpio archives on the fly 2007-08-01 23:10:30 +01:00
cwuri.c uri_get(NULL) and uri_put(NULL) are explicitly allowed. 2007-08-02 20:26:49 +01:00
debug.c Add missing format qualifier 2007-12-06 21:38:23 +00:00
device.c Add "name" field to struct device to allow human-readable hardware device 2007-01-10 04:22:09 +00:00
downloader.c Make seek information part of the xfer metadata, rather than an entirely 2008-01-08 16:46:55 +00:00
errno.c Split strerror() out from errno.c 2006-12-20 03:49:36 +00:00
exec.c Use stdio.h instead of vsprintf.h 2007-01-19 01:13:12 +00:00
filter.c Make seek information part of the xfer metadata, rather than an entirely 2008-01-08 16:46:55 +00:00
gdbstub.c [GDB] Add GDB stub for remote debugging 2008-06-05 00:45:50 +01:00
getkey.c Modify gPXE core and drivers to work with the new timer subsystem 2008-03-02 03:41:10 +03:00
getopt.c Use stdio.h instead of vsprintf.h 2007-01-19 01:13:12 +00:00
hw.c Make seek information part of the xfer metadata, rather than an entirely 2008-01-08 16:46:55 +00:00
i82365.c Initial revision 2005-03-08 18:53:11 +00:00
ibft.c [Settings] Remove assumption that all settings have DHCP tag values 2008-03-25 20:46:16 +00:00
image.c Set current working URI to be that of the executable image when 2007-08-07 06:50:12 -07:00
init.c Separated out initialisation functions from startup/shutdown functions. 2007-07-03 23:09:56 +01:00
interface.c Add debugging 2007-05-18 15:26:44 +00:00
iobuf.c Add per-file error identifiers 2007-07-24 17:11:31 +01:00
job.c Unplug before sending close() message, to avoid screwing up interfaces 2007-07-10 06:25:30 +01:00
linebuf.c Update HTTP to use data-xfer interface. 2007-05-29 15:37:09 +00:00
main.c [usr] Offer user a second chance to enter the shell on boot failure 2008-03-26 23:16:20 +00:00
malloc.c Separated out initialisation functions from startup/shutdown functions. 2007-07-03 23:09:56 +01:00
misc.c [libc] Fix a validation bug in strtoul() 2008-03-18 03:14:05 +00:00
monojob.c Display name and status of each file as it is downloaded. 2007-08-03 12:49:21 +01:00
nvo.c [Settings] Remove assumption that all settings have DHCP tag values 2008-03-25 20:46:16 +00:00
open.c Added two lines of code that were completely missing! 2007-07-25 13:32:02 +01:00
pc_kbd.c gcc is rather over-aggressive about optimising out static data structures 2006-04-24 18:31:37 +00:00
pcmcia.c Should be using the generic device probe mechanism, when (if) they 2007-07-03 20:39:30 +01:00
posix_io.c [PXEXT] Avoid queueing zero-length buffers in posix_io.c 2008-03-25 21:10:21 +00:00
process.c Add debug messages to process.c 2007-07-10 06:24:30 +01:00
proto_eth_slow.c Dead code removal. 2007-07-14 15:42:26 +01:00
random.c Modify gPXE core and drivers to work with the new timer subsystem 2008-03-02 03:41:10 +03:00
refcnt.c Make ref_get() return the reference, for cleaner code. 2007-07-08 22:02:45 +01:00
resolv.c Make seek information part of the xfer metadata, rather than an entirely 2008-01-08 16:46:55 +00:00
serial_console.c [Serial] Split serial console from serial driver 2008-06-05 00:45:43 +01:00
serial.c [Serial] Split serial console from serial driver 2008-06-05 00:45:43 +01:00
settings.c [Settings] Expose SMBIOS via settings API 2008-03-28 15:35:06 +00:00
string.c move strndup back to string.c - used by strdup 2007-08-02 01:48:20 +02:00
stringextra.c move strndup back to string.c - used by strdup 2007-08-02 01:47:31 +02:00
timer.c [Timers] Initialise timers on first use 2008-03-18 15:23:10 +00:00
uri.c convert to zalloc 2007-07-06 20:42:05 +02:00
uuid.c [SMBIOS] Interpret UUIDs as being in network-endian order 2008-05-20 18:41:36 +01:00
vsprintf.c Move [v]ssnprintf() from iscsi.c into vsprintf.c; we need them 2007-05-31 13:26:50 +00:00
xfer.c Add XFER_INIT() macro. 2008-01-22 18:48:47 +00:00