summaryrefslogtreecommitdiffstats
path: root/src/include/gpxe
Commit message (Collapse)AuthorAgeFilesLines
...
* Use total free memory as advertised window. This seems to be sufficientMichael Brown2007-01-181-25/+14Star
| | | | to avoid drops even on slow NICs.
* Move include/malloc.h to include/gpxe/malloc.h, since everything in thereMichael Brown2007-01-181-0/+57
| | | | | | | is now gPXE-specific. (The standard malloc() et al have been in stdlib.h for a while). Add free memory counter.
* Increase window size to 64kB. Line rate downloads on a 100Mbps link,Michael Brown2007-01-181-9/+30
| | | | anyone?
* Allow buffers to be pre-expanded on demand.Michael Brown2007-01-181-0/+21
|
* HTTP/DNS now working fully asynchronously. HTTP/IP addresses and anyMichael Brown2007-01-181-0/+2
| | | | other protocol won't work at the moment.
* Replacement for fetch() which operates asynchronously and identifiesMichael Brown2007-01-181-0/+59
| | | | protocols by URI scheme.
* Use struct sockaddr rather than struct sockaddr_tcpipMichael Brown2007-01-181-5/+11
| | | | Tidy up code
* Added async_uninit() to simplify failure paths.Michael Brown2007-01-181-0/+1
|
* Add utility function to parse port from URIMichael Brown2007-01-181-0/+1
|
* Ensure that struct sockaddr is long enough...Michael Brown2007-01-182-4/+12
|
* Rename e{malloc,realloc,free} to u{malloc,realloc,free}, to more obviouslyMichael Brown2007-01-162-17/+17
| | | | | reflect the fact that they allocate and deallocate user memory (i.e. things reached through a userptr_t).
* Create and use async_block() macro; it cuts down on the visual overheadMichael Brown2007-01-161-0/+36
| | | | | of blocking on asynchronous operations, when that isn't an important aspect of the code.
* A working DNS resolver (not yet tied in to anything)Michael Brown2007-01-151-0/+109
|
* Update TFTP and FTP to take the same temporary URI scheme as HTTPMichael Brown2007-01-152-17/+15Star
|
* Unmaintained example code is probably worse than useless.Michael Brown2007-01-151-52/+0Star
|
* Gave asynchronous operations approximate POSIX signal semantics. ThisMichael Brown2007-01-158-61/+168
| | | | | | | | | | | will enable us to cascade async operations, which is necessary in order to properly support DNS. (For example, an HTTP request may have to redirect to a new location and will have to perform a new DNS lookup, so we can't just rely on doing the name lookup at the time of parsing the initial URL). Anything other than HTTP is probably broken right now; I'll fix the others up asap.
* Added a URI parser that should be standards conformant. (It can certainlyMichael Brown2007-01-151-0/+116
| | | | | | handle something as convoluted as ftp://joe:secret@insecure.org:8081/hidden/path/to?what=is#this
* TypoMichael Brown2007-01-141-1/+1
|
* Actually, the initrd image should be architecture-independent.Michael Brown2007-01-141-0/+14
|
* Can almost start a kernel now. It dies with "No setup signature found"Michael Brown2007-01-141-0/+1
|
* Replace image->entry with image->priv.Michael Brown2007-01-141-2/+5
|
* Call hide_etherboot() from startup(), rather than requiring the prefix toMichael Brown2007-01-141-0/+2
| | | | do it.
* Make shutdown functions callable by OS image's exec methods.Michael Brown2007-01-141-0/+10
|
* Some operating systems get a nasty shock if a region of the E820 map seemsMichael Brown2007-01-141-25/+3Star
| | | | | to start on a non-page boundary. Make life safer by rounding out our edited regions.
* Advertise a larger MSS to improve TCP performance.Michael Brown2007-01-131-1/+23
|
* Fixed HTTPMichael Brown2007-01-121-28/+28
|
* Whitespace fixMichael Brown2007-01-121-1/+1
|
* Damn it; my lovely resilient scheme falls down when you have a protocolMichael Brown2007-01-121-16/+7Star
| | | | | that switches from line-oriented to byte-oriented partway through, such as HTTP.
* No need to maintain a received byte count; we always fill in sequentialMichael Brown2007-01-121-2/+0Star
| | | | order so we can just use buffer->fill.
* Added generic line-buffering code (a la stdio)Michael Brown2007-01-121-0/+37
|
* Let ifmgmt.c take care of calling efree(), since it's the once whichMichael Brown2007-01-121-1/+1
| | | | | | | took out the contract to eventually call efree() when it called fetch(). Maintain the most recently loaded image at the start of the list, so that imgautoselect() will pick it.
* Rearrange struct image to reflect usage of the fieldsMichael Brown2007-01-121-7/+4Star
|
* API change: the raw image will no longer be (hypothetically) discardedMichael Brown2007-01-121-4/+2Star
| | | | after a call to load().
* Force probing of multiboot before ELF.Michael Brown2007-01-121-8/+20
|
* fetch() now knows nothing about struct image; it simply loads a file andMichael Brown2007-01-121-8/+0Star
| | | | returns the allocated buffer.
* Add free_imageMichael Brown2007-01-121-0/+1
|
* Added IMAGE_LOADED flag and find_image()Michael Brown2007-01-121-0/+7
|
* Added missing declaration.Michael Brown2007-01-121-0/+2
|
* Place command-line inline, to save on memory allocation hassles.Michael Brown2007-01-121-1/+12
|
* Build automatically expanding buffers from struct buffer and erealloc().Michael Brown2007-01-121-0/+13
|
* First version of an external memory allocator (not tested)Michael Brown2007-01-121-0/+17
|
* Allow external code to update hidden memory regions.Michael Brown2007-01-121-0/+45
|
* Add UNULLMichael Brown2007-01-121-0/+3
|
* Provide registration mechanism for loaded images, so that we can e.g.Michael Brown2007-01-121-17/+44
| | | | | | | | 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 command line that can be passed to executed images.Michael Brown2007-01-111-0/+3
|
* Limit -ENOEXEC to mean "this is not in my format".Michael Brown2007-01-111-0/+8
|
* Use generic "struct image" rather than "struct elf".Michael Brown2007-01-111-12/+1Star
|
* Rename "image" field to "data", because "image->image" is just confusing.Michael Brown2007-01-111-1/+1
|
* Move include/image.h to include/gpxe/image.hMichael Brown2007-01-111-0/+60
|
* Create include/gpxe/elf.h for the ELF bits that aren't part of the ELFMichael Brown2007-01-111-0/+26
| | | | standard and so don't belong in include/elf.h