Michael Brown
f135a37f30
Cleaner separation between imgXXX() functions and image_cmd.c
18 년 전
Michael Brown
742f242863
Add free_image
18 년 전
Michael Brown
9817f93094
Add basic "fetch" and "imgstat" commands.
18 년 전
Michael Brown
b9fea9cbac
Added IMAGE_LOADED flag and find_image()
18 년 전
Michael Brown
e96041872e
Added missing declaration.
18 년 전
Michael Brown
9debfed07a
Place command-line inline, to save on memory allocation hassles.
18 년 전
Michael Brown
f15482d85f
Added basename() to make automatically naming images easier.
18 년 전
Michael Brown
29dadc5ec6
Build automatically expanding buffers from struct buffer and erealloc().
18 년 전
Michael Brown
45ec9c907e
First version of an external memory allocator (not tested)
18 년 전
Michael Brown
859da6bd32
Allow external code to update hidden memory regions.
18 년 전
Michael Brown
2c66588f3e
Add UNULL
18 년 전
Michael Brown
f59ad50504
Provide registration mechanism for loaded images, so that we can e.g.
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.
18 년 전
Michael Brown
79a399c05a
alloca() can be useful in some (limited) circumstances.
18 년 전
Michael Brown
c468c68661
Add command line that can be passed to executed images.
18 년 전
Michael Brown
819cd3f41c
Limit -ENOEXEC to mean "this is not in my format".
18 년 전
Michael Brown
6a03552381
Distinguish between ENOMEM (as representing a lack of internal memory
as allocated by malloc()) versus all other errors, in particular
ENOBUFS (representing a lack of external buffer space, e.g. in a
device's TX queue or a user buffer).
18 년 전
Michael Brown
c810baad37
Use generic "struct image" rather than "struct elf".
18 년 전
Michael Brown
c6c63d954d
Rename "image" field to "data", because "image->image" is just confusing.
18 년 전
Michael Brown
4fc9333159
Move include/image.h to include/gpxe/image.h
18 년 전
Michael Brown
230f16538f
Create include/gpxe/elf.h for the ELF bits that aren't part of the ELF
standard and so don't belong in include/elf.h
18 년 전
Michael Brown
0010e10ef3
Update TFTP to use a struct buffer rather than a callback.
Add debug autocolourisation to TFTP.
18 년 전
Michael Brown
7ad1c2eaa8
Removed the Etherboot-specific ELF-image code and replaced it with a
generic ELF loader, to be used by the multiboot code.
18 년 전
Michael Brown
3634e705b7
Remove osloader.c and replace with a prep_segment() that uses userptr_t
and get_memmap() in image/segment.c
18 년 전
Michael Brown
c980cdd0aa
Move memmap.h out of arch/i386; it no longer contains anything
architecture-dependent and is needed by the ELF code.
18 년 전
Michael Brown
fbfed96965
buffer.c should be using copy_{to,from}_user, rather than
copy_{to,from}_phys.
18 년 전
Michael Brown
a3ed0cbbc7
Extract packet-padding login from rtl8139.c to a separate pkbpad.c file.
18 년 전
Michael Brown
6918cf9e9e
Change FTP to use a data buffer rather than a callback function.
18 년 전
Michael Brown
e2dcd05b67
Update buffer-handling code to enable expandable buffers.
18 년 전
Michael Brown
bb2024c6d6
Move include/buffer.h to include/gpxe/buffer.h
18 년 전
Michael Brown
d9ba8f790b
Add route() function to display routing table.
18 년 전
Michael Brown
1fa5cd0e2b
Add find_pci_netdev()
18 년 전
Michael Brown
fdc97499bf
Add device description fields to struct device.
18 년 전
Michael Brown
dad5274522
Add "name" field to struct device to allow human-readable hardware device
names.
Add "dev" pointer in struct net_device to tie network interfaces back to a
hardware device.
Force natural alignment of data types in __table() macros. This seems to
prevent gcc from taking the unilateral decision to occasionally increase
their alignment (which screws up the table packing).
18 년 전
Michael Brown
c821a7b20d
Add udp_sendto_via() to allow e.g. DHCP to transmit without first having
to set up dummy routing entries.
18 년 전
Michael Brown
f008b77ba2
Allow an explicit network device to be specified for IP-layer
transmissions.
18 년 전
Michael Brown
55e590ab3a
Move header file for usr/autoboot.c to include/usr
18 년 전
Michael Brown
d24b80acf2
Added network interface management commands
18 년 전
Michael Brown
98b6154c3e
Add "name" field to network device, to facilitate netdev commands.
18 년 전
Michael Brown
c65fae2475
Add RX quotas to the net device poll() method. This avoids the problem
of alloc_pkb() exhaustion when e.g. an iSCSI-booted DOS session is left
idle for a long time at the C:\ prompt and builds up a huge packet
backlog.
18 년 전
Michael Brown
18e5353bed
Rename pkb_available() to pkb_tailroom() for consistency with Linux's
skb_tailroom(). Add pkb_headroom().
18 년 전
Michael Brown
b7fcfe8ece
Added net device TX queue; this will be needed to support the PXE UNDI API
(which will need us to wait for TX completions).
Added debug autocolourisation to netdevice.c
18 년 전
Michael Brown
76525294ee
Clean up connection closing and permanent failure logic.
18 년 전
Michael Brown
79c5f0ba04
Added PCI_BASE_CLASS() macro
18 년 전
Michael Brown
5af4918356
Added support for wildcard device/vendor ID matches
18 년 전
Michael Brown
20c9fc407e
Remove types and prototypes now provided in the undi*.h headers.
18 년 전
Michael Brown
9780fef360
Partial implementation of UNDI loader caller.
18 년 전
Michael Brown
0638945c7e
Add PXE driver-scanning code, capable of locating all PXE ROMs in a system
and matching them up to (e.g. PCI) devices.
18 년 전
Michael Brown
7e07dfb2f4
Added PXE bus driver (with support only for using PXE structures found
lying about in memory, not for loading from ROM), and UNDI net driver.
18 년 전
Michael Brown
350603cb86
Don't include __FUNCTION__ in assert() messages; it was causing the
function name to appear within the objects even in non-asserting
builds. (This could be considered a gcc bug.)
Removing __FUNCTION__ from assert() reduces the size of bin/blib.a by
around 2.5%!
18 년 전
Michael Brown
0c03bb5a9a
Make open() and close() an official part of the netdevice API.
Call netdevice's poll() and transmit() methods only when device is open.
18 년 전