Michael Brown
74fd544101
Added the embedded pxelinux payload patch from hpa.
17 lat temu
Michael Brown
9747c1a486
Remove the obsolete pre-aBFT AoE boot table.
17 lat temu
Michael Brown
fb809da2df
Remove some assumptions about DHCP obtaining only a single options block.
17 lat temu
Michael Brown
218651e125
Display name and status of each file as it is downloaded.
17 lat temu
Michael Brown
710c6c1be1
Error message cleanups.
17 lat temu
Michael Brown
d4947c05b2
Allow images to hold references to the originating URI.
Some shuffling around of the image management code; this needs tidying up.
17 lat temu
Michael Brown
291d69d7fd
Added support for draft version of the AoE Boot Firmware Table.
17 lat temu
Michael Brown
dde3f99e4e
Fix endianness of "shelf" field
17 lat temu
Michael Brown
d0abffc2f6
Added the AoE boot information table as used by Vampyre's AoE
initiator. This table needs to be replaced by something similar to
iBFT (i.e. scanned for and identified by signature, rather than being
at a fixed address), but it works for now.
17 lat temu
Michael Brown
43013da9bf
Quick hack to get AoE back in to the tree, on a par with the current
iSCSI hack.
17 lat temu
Holger Lubitz
1ec846b038
make netboot() static
17 lat temu
Michael Brown
47a86bca2d
Prepare for iBFT merge when possible. iscsiboot.c contains a really,
really ugly hack at present, but that doesn't hugely matter since I'm
aiming to change the interface to iSCSI devices anyway within the next
week.
17 lat temu
Michael Brown
487dc5be56
Fix up iscsiboot missing prototype warnings
17 lat temu
Michael Brown
b94420a52b
Ready to start testing
17 lat temu
Michael Brown
539ff45fd0
Allow recording of TX and RX errors to aid in end-user debugging.
17 lat temu
Marty Connor
9b3c4e4d79
Warnings purge: src/arch/i386, src/core/disk.c, ramdisk, autoboot
17 lat temu
Michael Brown
4968caab82
Add trivial net device statistics (TX and RX packet count), reported
via UNDI API and also by ifstat command; may be useful for debugging.
17 lat temu
Michael Brown
e4c9c91d6e
Removed debugging statements that should not have been checked in.
17 lat temu
Michael Brown
4b08f4cf0f
Quick hack to get image booting working again
17 lat temu
Michael Brown
7d6e4aab6f
Use monojob and dhcp_configure_netdev().
17 lat temu
Michael Brown
07dc294de8
Update DHCP to use data-xfer interface (not yet tested).
17 lat temu
Michael Brown
e708137029
DNS code now records a whole struct sockaddr for the name server.
17 lat temu
Michael Brown
b256900d4f
Scripts temporarily deregister themselves while executing. This
allows us to avoid execution loops without having to hack around the
image registration order.
17 lat temu
Anselm Martin Hoffmeister
ed7dc02a95
hoffmeis: Preparations for syslog support (LOGSERVER in DHCP, linewise
output buffering defintions and the like)
17 lat temu
Michael Brown
160e66dbb9
Typo
18 lat temu
Michael Brown
bde8878eef
Keep HTTP progress updated, and display a progress indicator during the
download
18 lat temu
Michael Brown
73b09ecba6
Use stdio.h instead of vsprintf.h
18 lat temu
Michael Brown
4e3976711d
A working name resolution framework
18 lat temu
Michael Brown
dd6d94004f
HTTP/DNS now working fully asynchronously. HTTP/IP addresses and any
other protocol won't work at the moment.
18 lat temu
Michael Brown
544fa25928
Rename e{malloc,realloc,free} to u{malloc,realloc,free}, to more obviously
reflect the fact that they allocate and deallocate user memory (i.e.
things reached through a userptr_t).
18 lat temu
Michael Brown
ff8528ea9a
Create and use async_block() macro; it cuts down on the visual overhead
of blocking on asynchronous operations, when that isn't an important
aspect of the code.
18 lat temu
Michael Brown
f11da20f25
When a network device is specified to tcpip_tx() or it's children, treat
it as a fallback network device rather than an explicitly forced network
device.
Clear routing table entries before re-attempting DHCP.
18 lat temu
Michael Brown
df0397f334
Update TFTP and FTP to take the same temporary URI scheme as HTTP
18 lat temu
Michael Brown
afa752f5fb
Protocol's get() method no longer takes ownership of the URI. HTTP is the
exception rather than the rule; we may as well keep things clean for other
protocols.
18 lat temu
Michael Brown
4e20d73bb5
Gave asynchronous operations approximate POSIX signal semantics. This
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.
18 lat temu
Michael Brown
341c0b9cfb
Add HTTP test support
18 lat temu
Michael Brown
49fc8dcdc3
Use dhcp(), imgfetch() etc. to boot rather than dhcp_test().
18 lat temu
Michael Brown
9952df9b52
Add "dhcp" command
18 lat temu
Michael Brown
e2c0055e23
Let ifmgmt.c take care of calling efree(), since it's the once which
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.
18 lat temu
Michael Brown
39ede8c7e8
Added dhcp() user-level command.
18 lat temu
Michael Brown
475d6d1f7c
fetch() now knows nothing about struct image; it simply loads a file and
returns the allocated buffer.
18 lat temu
Michael Brown
2876197306
Allow "imgexec" with no arguments to boot the file that was loaded with
"kernel".
18 lat temu
Michael Brown
f135a37f30
Cleaner separation between imgXXX() functions and image_cmd.c
18 lat temu
Michael Brown
9817f93094
Add basic "fetch" and "imgstat" commands.
18 lat temu
Michael Brown
de042993c0
Warn when net device on an active route is not open.
18 lat temu
Michael Brown
d9ba8f790b
Add route() function to display routing table.
18 lat temu
Michael Brown
78ded6604a
Try booting from the "boot" network device first (i.e. the one which we
were loaded from). The code to identify this device isn't present yet,
but the code to act upon the knowledge is.
18 lat temu
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 lat temu
Michael Brown
55e590ab3a
Move header file for usr/autoboot.c to include/usr
18 lat temu
Michael Brown
d24b80acf2
Added network interface management commands
18 lat temu