Michael Brown [Mon, 2 Jul 2007 23:57:04 +0000 (00:57 +0100)]
Enable/disable interrupts on open/close.
Michael Brown [Mon, 2 Jul 2007 23:15:53 +0000 (00:15 +0100)]
Add trivial net device statistics (TX and RX packet count), reported
via UNDI API and also by ifstat command; may be useful for debugging.
Michael Brown [Mon, 2 Jul 2007 23:02:26 +0000 (00:02 +0100)]
Ensure that pxe_netdev is set before starting up PXE NBP.
Michael Brown [Mon, 2 Jul 2007 23:02:06 +0000 (00:02 +0100)]
Place netdev_open()/netdev_close() calls in appropriate places.
Michael Brown [Mon, 2 Jul 2007 22:49:00 +0000 (23:49 +0100)]
Add mechanism for providing TX completion events.
Marty Connor [Mon, 2 Jul 2007 19:36:19 +0000 (15:36 -0400)]
Merge branch 'master' of ssh://rom.etherboot.org/gpxe
Marty Connor [Mon, 2 Jul 2007 19:33:34 +0000 (15:33 -0400)]
Warnings purge
Marty Connor [Mon, 2 Jul 2007 19:29:37 +0000 (15:29 -0400)]
Warnings purge
Marty Connor [Mon, 2 Jul 2007 19:28:55 +0000 (15:28 -0400)]
Warnings purge
Marty Connor [Mon, 2 Jul 2007 19:26:40 +0000 (15:26 -0400)]
Warnings purge of src/core
Michael Brown [Mon, 2 Jul 2007 19:05:58 +0000 (20:05 +0100)]
Add untested support for UNDI transmit and receive.
Michael Brown [Mon, 2 Jul 2007 17:33:41 +0000 (18:33 +0100)]
Use a common base-memory packet buffer for DHCP construction (as used
by PXE and NBI) and UNDI packets (as used by undinet and UNDI).
Michael Brown [Mon, 2 Jul 2007 16:43:32 +0000 (17:43 +0100)]
pxe_netdev now holds a reference to the network device.
Use generic fields in struct device_description rather than assuming
that the struct device * is contained within a pci_device or
isapnp_device; this assumption is broken when using the undionly
driver.
Add PXENV_UNDI_SET_STATION_ADDRESS.
Michael Brown [Mon, 2 Jul 2007 02:14:27 +0000 (03:14 +0100)]
Build bochs with ne2000 support, and add sample lines in bochsrc.txt
to match.
Michael Brown [Mon, 2 Jul 2007 02:12:35 +0000 (03:12 +0100)]
Call shutdown() from pxenv_undi_shutdown(). Probably not totally
correct, but it's enough to get RIS working.
Michael Brown [Sun, 1 Jul 2007 21:04:19 +0000 (22:04 +0100)]
Improve debugging
Michael Brown [Sun, 1 Jul 2007 14:30:12 +0000 (15:30 +0100)]
Removing obsolete files.
Michael Brown [Sun, 1 Jul 2007 14:22:12 +0000 (15:22 +0100)]
Support cards such as natsemi which treat the data as little-endian
(i.e. LSB transmitted first on the wire), even though SPI commands and
addresses always have to be big-endian.
Michael Brown [Sun, 1 Jul 2007 02:22:28 +0000 (03:22 +0100)]
Can't use strncpy() to copy strings that aren't NUL-terminated to
begin with.
Michael Brown [Sat, 30 Jun 2007 23:37:29 +0000 (00:37 +0100)]
Hack together far enough to support ne2k-pci.
Michael Brown [Sat, 30 Jun 2007 23:36:48 +0000 (00:36 +0100)]
How has the legacy wrapper been working for the past month or so...?
Michael Brown [Sat, 30 Jun 2007 23:05:36 +0000 (00:05 +0100)]
DUMP_GDBSYM should not be enabled by default.
Michael Brown [Sat, 30 Jun 2007 21:59:15 +0000 (22:59 +0100)]
Add ability to resolve relative symbols as well as locate absolute ones.
Michael Brown [Sat, 30 Jun 2007 21:43:31 +0000 (22:43 +0100)]
Add gdbsym.c object to help with running gdb-to-qemu
Michael Brown [Sat, 30 Jun 2007 20:36:54 +0000 (21:36 +0100)]
Place the actual version string in .data16, rather than just the
pointer to it.
Michael Brown [Sat, 30 Jun 2007 14:56:00 +0000 (15:56 +0100)]
Implement the two UNDI API calls used by RIS.
Michael Brown [Sat, 30 Jun 2007 14:13:18 +0000 (15:13 +0100)]
Implement the "overwrite TFTP filename" Microsoft RIS bug workaround.
Michael Brown [Sat, 30 Jun 2007 13:56:35 +0000 (14:56 +0100)]
Separate out pxe_start_nbp() from pxe_image.c into pxe_call.c
Implement PXENV_RESTART_TFTP.
Michael Brown [Sat, 30 Jun 2007 00:32:53 +0000 (01:32 +0100)]
Don't build option-overloaded packets; they just confuse people (ISC
DHCPD and Windows RIS in particular).
Michael Brown [Fri, 29 Jun 2007 19:16:30 +0000 (20:16 +0100)]
I really, really screwed up the semantics of BufferSize and BufferLimit.
Michael Brown [Fri, 29 Jun 2007 00:42:59 +0000 (01:42 +0100)]
Windows RIS now gets as far as downloading NTLDR.
Michael Brown [Thu, 28 Jun 2007 23:15:36 +0000 (00:15 +0100)]
Initial notes on RIS
Michael Brown [Thu, 28 Jun 2007 22:37:49 +0000 (23:37 +0100)]
Fix stack on return from PXE NBP so that we can return properly.
Michael Brown [Thu, 28 Jun 2007 20:56:14 +0000 (21:56 +0100)]
Use internal real-mode stack from non-returnable prefixes
Michael Brown [Thu, 28 Jun 2007 20:50:36 +0000 (21:50 +0100)]
Revert "Move stack to below 0x7c00; leaving it at the default location"
This reverts commit
03ca71c38da9cc6df01ecd9ef16e97a0edb6a4e9.
Michael Brown [Thu, 28 Jun 2007 20:22:25 +0000 (21:22 +0100)]
Set current working URI based on TFTP server specified by DHCP.
Michael Brown [Thu, 28 Jun 2007 20:16:39 +0000 (21:16 +0100)]
Current bochs has a 128kB BIOS, not 64kB
Michael Brown [Thu, 28 Jun 2007 20:15:47 +0000 (21:15 +0100)]
Move stack to below 0x7c00; leaving it at the default location
(0x7ef4) tends to really screw up anything that loads at 0x7c00...
Michael Brown [Thu, 28 Jun 2007 18:28:26 +0000 (19:28 +0100)]
Obsoleted by downloader.c
Michael Brown [Thu, 28 Jun 2007 17:49:57 +0000 (18:49 +0100)]
Added missing config.[ch] lines for FTP protocol
Michael Brown [Thu, 28 Jun 2007 17:38:50 +0000 (18:38 +0100)]
Bugfix: iobuf->data always points to the start of the allocated
portion, not to the bit we want to currently write to...
Michael Brown [Thu, 28 Jun 2007 17:06:25 +0000 (18:06 +0100)]
Mildly ugly hack to force correct linkage.
Michael Brown [Thu, 28 Jun 2007 16:57:10 +0000 (17:57 +0100)]
Removed debugging statements that should not have been checked in.
Michael Brown [Thu, 28 Jun 2007 16:55:29 +0000 (17:55 +0100)]
Quick hack to get image booting working again
Michael Brown [Thu, 28 Jun 2007 14:22:20 +0000 (15:22 +0100)]
Use monojob and dhcp_configure_netdev().
Michael Brown [Thu, 28 Jun 2007 14:18:26 +0000 (15:18 +0100)]
Add dhcp_configure_netdev()
Michael Brown [Thu, 28 Jun 2007 13:53:12 +0000 (14:53 +0100)]
Added monojob controller in lieu of a full working shell.
Michael Brown [Thu, 28 Jun 2007 00:55:01 +0000 (01:55 +0100)]
Forgot to set initial session state. Now works!
Michael Brown [Thu, 28 Jun 2007 00:09:45 +0000 (01:09 +0100)]
Kill off job::start() (it was only ever added as part of an aborted
attempt at triggering TCP-related protocols to start).
Michael Brown [Wed, 27 Jun 2007 22:20:36 +0000 (23:20 +0100)]
Update DHCP to use data-xfer interface (not yet tested).
Michael Brown [Wed, 27 Jun 2007 13:48:31 +0000 (14:48 +0100)]
Kill off hotplug.h and just make net devices normal reference-counted
structures.
DHCP still broken and #if 0'd out.
Michael Brown [Wed, 20 Jun 2007 00:13:35 +0000 (01:13 +0100)]
Partial migration of UDP to data-xfer interface. (Will not link at
present; DHCP is broken).
Michael Brown [Wed, 20 Jun 2007 00:12:21 +0000 (01:12 +0100)]
Add iob_ensure_headroom() placeholder.
Michael Brown [Wed, 13 Jun 2007 15:28:32 +0000 (16:28 +0100)]
Treat URIs opened via xfer_open() and friends as relative to the
current working URI.
Michael Brown [Mon, 11 Jun 2007 22:54:51 +0000 (23:54 +0100)]
Add concept of "current working URI".
Michael Brown [Mon, 11 Jun 2007 22:40:34 +0000 (23:40 +0100)]
Remove unused headers.
Michael Brown [Mon, 11 Jun 2007 22:36:50 +0000 (23:36 +0100)]
DNS code now records a whole struct sockaddr for the name server.
Michael Brown [Mon, 11 Jun 2007 22:30:44 +0000 (23:30 +0100)]
Updated DNS to use not-yet-implemented UDP data-xfer API.
Michael Brown [Mon, 11 Jun 2007 20:36:22 +0000 (21:36 +0100)]
Merge branch 'master' into mcb-tcp-xfer
Michael Brown [Mon, 11 Jun 2007 20:36:10 +0000 (21:36 +0100)]
Renamed _calloc() to zalloc(), ready to be used as a standalone function.
Michael Brown [Mon, 11 Jun 2007 17:11:29 +0000 (18:11 +0100)]
Updated TFTP and PXE UDP API code to use not-yet-implemented data-xfer
UDP API.
Michael Brown [Mon, 11 Jun 2007 14:04:39 +0000 (15:04 +0100)]
Add concept of transfer metadata, to be used by UDP in order to
implement sendto()/recvfrom() equivalents.
Michael Brown [Sun, 10 Jun 2007 17:34:10 +0000 (18:34 +0100)]
Merge branch 'master' into mcb-tcp-xfer
Michael Brown [Sun, 10 Jun 2007 17:33:42 +0000 (18:33 +0100)]
Add missing call to free_iob().
Michael Brown [Sat, 9 Jun 2007 23:31:31 +0000 (00:31 +0100)]
Merge branch 'master' into mcb-tcp-xfer
Michael Brown [Sat, 9 Jun 2007 17:11:07 +0000 (18:11 +0100)]
Add our own trivial version of stdarg.h. This makes our build
entirely self-hosted (which avoids problems when building the same
tree on multiple systems - e.g. when you have /home NFS-mounted).
Also saves around 50 bytes in total - not sure why.
Michael Brown [Sat, 9 Jun 2007 21:58:27 +0000 (22:58 +0100)]
Merge branch 'master' into mcb-tcp-xfer
Michael Brown [Sat, 9 Jun 2007 21:58:04 +0000 (22:58 +0100)]
Ignore external directories (bochs, qemu) within contrib/bochs.
Michael Brown [Sat, 9 Jun 2007 21:57:00 +0000 (22:57 +0100)]
Rename .cvsignore files to .gitignore
Michael Brown [Sat, 9 Jun 2007 21:26:50 +0000 (22:26 +0100)]
Merge branch 'master' into mcb-tcp-xfer
Marty Connor [Sat, 9 Jun 2007 19:23:17 +0000 (15:23 -0400)]
Update email addresses in drivers
Michael Brown [Sat, 9 Jun 2007 18:00:34 +0000 (19:00 +0100)]
Scripts temporarily deregister themselves while executing. This
allows us to avoid execution loops without having to hack around the
image registration order.
Michael Brown [Sat, 9 Jun 2007 17:20:08 +0000 (18:20 +0100)]
Allow xfer_open() to take a struct uri as well as a URI string.
Michael Brown [Sat, 9 Jun 2007 17:11:07 +0000 (18:11 +0100)]
Add our own trivial version of stdarg.h. This makes our build
entirely self-hosted (which avoids problems when building the same
tree on multiple systems - e.g. when you have /home NFS-mounted).
Also saves around 50 bytes in total - not sure why.
Michael Brown [Sat, 9 Jun 2007 16:42:46 +0000 (17:42 +0100)]
Use standard xfer_open() argument list for downloader instantiator
Michael Brown [Sat, 9 Jun 2007 16:32:27 +0000 (17:32 +0100)]
Add reference counting to register/unregister procedure.
Michael Brown [Fri, 8 Jun 2007 15:41:54 +0000 (16:41 +0100)]
Merge branch 'master' into mcb-tcp-xfer
Michael Brown [Fri, 8 Jun 2007 15:33:24 +0000 (16:33 +0100)]
Merge branch 'master' into mcb-tcp-xfer
Marty Connor [Fri, 8 Jun 2007 15:23:26 +0000 (11:23 -0400)]
Updated email mdc's email address
Michael Brown [Fri, 8 Jun 2007 12:37:35 +0000 (12:37 +0000)]
Conflicts with native asn1.c
Michael Brown [Sun, 3 Jun 2007 02:15:00 +0000 (02:15 +0000)]
Add a couple of tests for the URI parsing and resolving code.
Michael Brown [Sun, 3 Jun 2007 02:11:25 +0000 (02:11 +0000)]
Added missing va_end()
Michael Brown [Sun, 3 Jun 2007 02:01:02 +0000 (02:01 +0000)]
Add facility for resolving base+relative URIs (and paths).
Michael Brown [Sun, 3 Jun 2007 01:51:10 +0000 (01:51 +0000)]
Added dirname()
Michael Brown [Sun, 3 Jun 2007 01:50:03 +0000 (01:50 +0000)]
Added [v]asprintf()
Michael Brown [Thu, 31 May 2007 13:26:50 +0000 (13:26 +0000)]
Move [v]ssnprintf() from iscsi.c into vsprintf.c; we need them
elsewhere as well.
Michael Brown [Tue, 29 May 2007 15:37:30 +0000 (15:37 +0000)]
Should call ftp_done() if constructor fails.
Michael Brown [Tue, 29 May 2007 15:37:09 +0000 (15:37 +0000)]
Update HTTP to use data-xfer interface.
Michael Brown [Mon, 28 May 2007 20:11:02 +0000 (20:11 +0000)]
Updated FTP to use data-xfer API.
Michael Brown [Mon, 28 May 2007 20:09:44 +0000 (20:09 +0000)]
Add xfer_[v]printf() functions.
Michael Brown [Mon, 28 May 2007 20:06:41 +0000 (20:06 +0000)]
Add sanity check and extra debug message
Michael Brown [Mon, 28 May 2007 17:35:15 +0000 (17:35 +0000)]
Make URI structures reference-counted.
Michael Brown [Sun, 27 May 2007 01:07:00 +0000 (01:07 +0000)]
Introduce name resolution interface and named socket opener.
Michael Brown [Sun, 27 May 2007 01:04:52 +0000 (01:04 +0000)]
Move increment/decrement debug messages to DBG2 level
Michael Brown [Sat, 26 May 2007 20:41:23 +0000 (20:41 +0000)]
Eliminate PF_INET; just use the AF_INET from the struct sockaddr instead.
Michael Brown [Sat, 26 May 2007 20:41:23 +0000 (20:41 +0000)]
Eliminate PF_INET; just use the AF_INET from the struct sockaddr instead.
Michael Brown [Sat, 26 May 2007 15:05:31 +0000 (15:05 +0000)]
Added EPIPE description.
Michael Brown [Sat, 26 May 2007 15:04:36 +0000 (15:04 +0000)]
Modify data-xfer semantics: it is no longer necessary to call one of
request(), seek() or deliver_xxx() in order to start the data flow.
Autonomous generators must be genuinely autonomous (having their own
process), or otherwise arrange to be called. TCP does this by
starting the retry timer immediately.
Add some debugging statements.
Michael Brown [Sat, 26 May 2007 15:04:36 +0000 (15:04 +0000)]
Modify data-xfer semantics: it is no longer necessary to call one of
request(), seek() or deliver_xxx() in order to start the data flow.
Autonomous generators must be genuinely autonomous (having their own
process), or otherwise arrange to be called. TCP does this by
starting the retry timer immediately.
Add some debugging statements.
Michael Brown [Sat, 26 May 2007 15:00:56 +0000 (15:00 +0000)]
Modify process semantics; rescheduling is now automatic.
Add reference-counting to processes.
Add timer_running() test.