aboutsummaryrefslogtreecommitdiffstats
path: root/src/image
Commit message (Collapse)AuthorAgeFilesLines
* [pcbios] Add extra debugging messages relating to the system memory mapMichael Brown2008-09-071-0/+2
|
* [bzimage] Kill off the initrd image typeMichael Brown2008-07-081-37/+0
| | | | | | | We can just treat all non-kernel images as initrds, which matches our behaviour for multiboot kernels. This allows us to eliminate initrd as an image type, and treat the "initrd" command as just another synonym for "imgfetch".
* [misc] Fix building on OpenBSDMichael Brown2008-06-271-3/+2
| | | | | | | OpenBSD throws compiler warnings that we can't reproduce on Linux, for some reason. Original patch from Dewey Hylton <dewey@hyltown.com>.
* [script] Remove arbitrary limit on script line lengthsMichael Brown2008-06-181-28/+19
|
* [ELF] Add ability to boot ELF images generated by wraplinux and mkelfImageMichael Brown2008-06-091-23/+6
| | | | | | | | | | | | | | | | | | | 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.
* [embed] Add missing register_image() to image/embedded.cMichael Brown2008-06-041-0/+1
| | | | | | | | When the embedded image is a script, the unregister_image() performed by image/script.c corrupts memory, since image/embedded.c omitted the call to register_image(). This is the first bug fixed using Stefan Hajnoczi's gdb stub for gPXE.
* Added the embedded pxelinux payload patch from hpa.Michael Brown2008-01-082-0/+56
|
* Various warnings fixups for OpenBSD with gcc-3.3.5.Michael Brown2007-12-071-1/+1
|
* Set current working URI to be that of the executable image whenMichael Brown2007-08-071-9/+1
| | | | | executing any image, not just a script. (This will enable pxelinux to use relative URIs, should it wish to.)
* Set current working URI equal to script URI during script execution.Michael Brown2007-08-021-1/+9
|
* Cope with non-newline-terminated scripts.Michael Brown2007-08-021-2/+3
| | | | Print error status using strerror().
* Scripts temporarily deregister themselves while executing. ThisMichael Brown2007-06-091-3/+16
| | | | | allows us to avoid execution loops without having to hack around the image registration order.
* Actually, the initrd image should be architecture-independent.Michael Brown2007-01-141-0/+37
|
* Replace image->entry with image->priv.Michael Brown2007-01-141-2/+2
|
* Make DEBUG=script echo the commands as they are executedMichael Brown2007-01-121-0/+1
|
* Use systematic names for XXX_IMAGE.Michael Brown2007-01-121-0/+113
| | | | Add scripts as an image format (since it's trivial to do).
* Force probing of multiboot before ELF.Michael Brown2007-01-121-2/+2
|
* Rename copy_user() to memcpy_user(). Add memmove_user() andMichael Brown2007-01-121-1/+1
| | | | userptr_add().
* Provide registration mechanism for loaded images, so that we can e.g.Michael Brown2007-01-111-5/+11
| | | | | | | | refer to them by name from the command line, or build them into a multiboot module list. Use setting image->type to disambiguate between "not my image" and "bad image"; this avoids relying on specific values of the error code.
* Add placeholder elf_execute()Michael Brown2007-01-111-0/+11
|
* Limit -ENOEXEC to mean "this is not in my format".Michael Brown2007-01-111-3/+3
|
* Use generic "struct image" rather than "struct elf".Michael Brown2007-01-111-11/+18
|
* Create include/gpxe/elf.h for the ELF bits that aren't part of the ELFMichael Brown2007-01-111-8/+4
| | | | standard and so don't belong in include/elf.h
* Removed the Etherboot-specific ELF-image code and replaced it with aMichael Brown2007-01-111-0/+130
| | | | generic ELF loader, to be used by the multiboot code.
* Remove osloader.c and replace with a prep_segment() that uses userptr_tMichael Brown2007-01-111-0/+72
and get_memmap() in image/segment.c