people/holger/gpxe.git
13 years agoWork around Etherboot 5.4 bug when multiple packets are received.
Michael Brown [Tue, 3 Jul 2007 14:53:29 +0000 (15:53 +0100)]
Work around Etherboot 5.4 bug when multiple packets are received.

13 years agoKill off now-redundant _irq() methods.
Michael Brown [Tue, 3 Jul 2007 14:37:56 +0000 (15:37 +0100)]
Kill off now-redundant _irq() methods.

13 years agoKill off PXENV_UNDI_FORCE_INTERRUPT support; we have no reason to
Michael Brown [Tue, 3 Jul 2007 14:36:29 +0000 (15:36 +0100)]
Kill off PXENV_UNDI_FORCE_INTERRUPT support; we have no reason to
suspect that we need it, and implementing it would require needlessly
complicating the net device API.

13 years agoAvoid double free on I/O buffer when rtl_transmit() returns failure.
Michael Brown [Tue, 3 Jul 2007 13:44:33 +0000 (14:44 +0100)]
Avoid double free on I/O buffer when rtl_transmit() returns failure.

Convert printf() to DBG(); printf() is not allowed in drivers.

13 years agoIt's not just Etherboot that fails to generate TX completions.
Michael Brown [Tue, 3 Jul 2007 13:43:57 +0000 (14:43 +0100)]
It's not just Etherboot that fails to generate TX completions.

13 years agoNever attempt to route the broadcast address.
Michael Brown [Tue, 3 Jul 2007 12:55:45 +0000 (13:55 +0100)]
Never attempt to route the broadcast address.

13 years agoDocument TX completion bug.
Michael Brown [Tue, 3 Jul 2007 12:17:58 +0000 (13:17 +0100)]
Document TX completion bug.

13 years agoEnable/disable interrupts in driver open/close.
Michael Brown [Tue, 3 Jul 2007 11:50:58 +0000 (12:50 +0100)]
Enable/disable interrupts in driver open/close.

13 years agoReserve space for link-layer header in pxenv_undi_transmit() when not
Michael Brown [Tue, 3 Jul 2007 03:05:30 +0000 (04:05 +0100)]
Reserve space for link-layer header in pxenv_undi_transmit() when not
handed a P_UNKNOWN packet.

13 years agoEnable/disable interrupts at open/close time.
Michael Brown [Tue, 3 Jul 2007 02:34:08 +0000 (03:34 +0100)]
Enable/disable interrupts at open/close time.

13 years agoAdd missing call to free_iob() in pxenv_undi_isr().
Michael Brown [Mon, 2 Jul 2007 23:57:53 +0000 (00:57 +0100)]
Add missing call to free_iob() in pxenv_undi_isr().

Correct typo in pxenv_set_station_address().

13 years agoEnable/disable interrupts on open/close.
Michael Brown [Mon, 2 Jul 2007 23:57:04 +0000 (00:57 +0100)]
Enable/disable interrupts on open/close.

13 years agoAdd trivial net device statistics (TX and RX packet count), reported
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.

13 years agoEnsure that pxe_netdev is set before starting up PXE NBP.
Michael Brown [Mon, 2 Jul 2007 23:02:26 +0000 (00:02 +0100)]
Ensure that pxe_netdev is set before starting up PXE NBP.

13 years agoPlace netdev_open()/netdev_close() calls in appropriate places.
Michael Brown [Mon, 2 Jul 2007 23:02:06 +0000 (00:02 +0100)]
Place netdev_open()/netdev_close() calls in appropriate places.

13 years agoAdd mechanism for providing TX completion events.
Michael Brown [Mon, 2 Jul 2007 22:49:00 +0000 (23:49 +0100)]
Add mechanism for providing TX completion events.

13 years agoMerge branch 'master' of ssh://rom.etherboot.org/pub/scm/gpxe
Marty Connor [Mon, 2 Jul 2007 19:36:19 +0000 (15:36 -0400)]
Merge branch 'master' of ssh://rom.etherboot.org/gpxe

13 years agoWarnings purge
Marty Connor [Mon, 2 Jul 2007 19:33:34 +0000 (15:33 -0400)]
Warnings purge

13 years agoWarnings purge
Marty Connor [Mon, 2 Jul 2007 19:29:37 +0000 (15:29 -0400)]
Warnings purge

13 years agoWarnings purge
Marty Connor [Mon, 2 Jul 2007 19:28:55 +0000 (15:28 -0400)]
Warnings purge

13 years agoWarnings purge of src/core
Marty Connor [Mon, 2 Jul 2007 19:26:40 +0000 (15:26 -0400)]
Warnings purge of src/core

13 years agoAdd untested support for UNDI transmit and receive.
Michael Brown [Mon, 2 Jul 2007 19:05:58 +0000 (20:05 +0100)]
Add untested support for UNDI transmit and receive.

13 years agoUse a common base-memory packet buffer for DHCP construction (as used
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).

13 years agopxe_netdev now holds a reference to the network device.
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.

13 years agoBuild bochs with ne2000 support, and add sample lines in bochsrc.txt mcb-known-working-with-ris
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.

13 years agoCall shutdown() from pxenv_undi_shutdown(). Probably not totally
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.

13 years agoImprove debugging
Michael Brown [Sun, 1 Jul 2007 21:04:19 +0000 (22:04 +0100)]
Improve debugging

13 years agoRemoving obsolete files.
Michael Brown [Sun, 1 Jul 2007 14:30:12 +0000 (15:30 +0100)]
Removing obsolete files.

13 years agoSupport cards such as natsemi which treat the data as little-endian
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.

13 years agoCan't use strncpy() to copy strings that aren't NUL-terminated to
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.

13 years agoHack together far enough to support ne2k-pci.
Michael Brown [Sat, 30 Jun 2007 23:37:29 +0000 (00:37 +0100)]
Hack together far enough to support ne2k-pci.

13 years agoHow has the legacy wrapper been working for the past month or so...?
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...?

13 years agoDUMP_GDBSYM should not be enabled by default.
Michael Brown [Sat, 30 Jun 2007 23:05:36 +0000 (00:05 +0100)]
DUMP_GDBSYM should not be enabled by default.

13 years agoAdd ability to resolve relative symbols as well as locate absolute ones.
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.

13 years agoAdd gdbsym.c object to help with running gdb-to-qemu
Michael Brown [Sat, 30 Jun 2007 21:43:31 +0000 (22:43 +0100)]
Add gdbsym.c object to help with running gdb-to-qemu

13 years agoPlace the actual version string in .data16, rather than just the
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.

13 years agoImplement the two UNDI API calls used by RIS.
Michael Brown [Sat, 30 Jun 2007 14:56:00 +0000 (15:56 +0100)]
Implement the two UNDI API calls used by RIS.

13 years agoImplement the "overwrite TFTP filename" Microsoft RIS bug workaround.
Michael Brown [Sat, 30 Jun 2007 14:13:18 +0000 (15:13 +0100)]
Implement the "overwrite TFTP filename" Microsoft RIS bug workaround.

13 years agoSeparate out pxe_start_nbp() from pxe_image.c into pxe_call.c
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.

13 years agoDon't build option-overloaded packets; they just confuse people (ISC
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).

13 years agoI really, really screwed up the semantics of BufferSize and BufferLimit.
Michael Brown [Fri, 29 Jun 2007 19:16:30 +0000 (20:16 +0100)]
I really, really screwed up the semantics of BufferSize and BufferLimit.

13 years agoWindows RIS now gets as far as downloading NTLDR.
Michael Brown [Fri, 29 Jun 2007 00:42:59 +0000 (01:42 +0100)]
Windows RIS now gets as far as downloading NTLDR.

13 years agoInitial notes on RIS
Michael Brown [Thu, 28 Jun 2007 23:15:36 +0000 (00:15 +0100)]
Initial notes on RIS

13 years agoFix stack on return from PXE NBP so that we can return properly.
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.

13 years agoUse internal real-mode stack from non-returnable prefixes
Michael Brown [Thu, 28 Jun 2007 20:56:14 +0000 (21:56 +0100)]
Use internal real-mode stack from non-returnable prefixes

13 years agoRevert "Move stack to below 0x7c00; leaving it at the default location"
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.

13 years agoSet current working URI based on TFTP server specified by DHCP.
Michael Brown [Thu, 28 Jun 2007 20:22:25 +0000 (21:22 +0100)]
Set current working URI based on TFTP server specified by DHCP.

13 years agoCurrent bochs has a 128kB BIOS, not 64kB
Michael Brown [Thu, 28 Jun 2007 20:16:39 +0000 (21:16 +0100)]
Current bochs has a 128kB BIOS, not 64kB

13 years agoMove stack to below 0x7c00; leaving it at the default location
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...

13 years agoObsoleted by downloader.c
Michael Brown [Thu, 28 Jun 2007 18:28:26 +0000 (19:28 +0100)]
Obsoleted by downloader.c

13 years agoAdded missing config.[ch] lines for FTP protocol
Michael Brown [Thu, 28 Jun 2007 17:49:57 +0000 (18:49 +0100)]
Added missing config.[ch] lines for FTP protocol

13 years agoBugfix: iobuf->data always points to the start of the allocated
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...

13 years agoMildly ugly hack to force correct linkage. upstream/mcb-tcp-xfer
Michael Brown [Thu, 28 Jun 2007 17:06:25 +0000 (18:06 +0100)]
Mildly ugly hack to force correct linkage.

13 years agoRemoved debugging statements that should not have been checked in.
Michael Brown [Thu, 28 Jun 2007 16:57:10 +0000 (17:57 +0100)]
Removed debugging statements that should not have been checked in.

13 years agoQuick hack to get image booting working again
Michael Brown [Thu, 28 Jun 2007 16:55:29 +0000 (17:55 +0100)]
Quick hack to get image booting working again

13 years agoUse monojob and dhcp_configure_netdev().
Michael Brown [Thu, 28 Jun 2007 14:22:20 +0000 (15:22 +0100)]
Use monojob and dhcp_configure_netdev().

13 years agoAdd dhcp_configure_netdev()
Michael Brown [Thu, 28 Jun 2007 14:18:26 +0000 (15:18 +0100)]
Add dhcp_configure_netdev()

13 years agoAdded monojob controller in lieu of a full working shell.
Michael Brown [Thu, 28 Jun 2007 13:53:12 +0000 (14:53 +0100)]
Added monojob controller in lieu of a full working shell.

13 years agoForgot to set initial session state. Now works!
Michael Brown [Thu, 28 Jun 2007 00:55:01 +0000 (01:55 +0100)]
Forgot to set initial session state.  Now works!

13 years agoKill off job::start() (it was only ever added as part of an aborted
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).

13 years agoUpdate DHCP to use data-xfer interface (not yet tested).
Michael Brown [Wed, 27 Jun 2007 22:20:36 +0000 (23:20 +0100)]
Update DHCP to use data-xfer interface (not yet tested).

13 years agoKill off hotplug.h and just make net devices normal reference-counted
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.

13 years agoPartial migration of UDP to data-xfer interface. (Will not link at
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).

13 years agoAdd iob_ensure_headroom() placeholder.
Michael Brown [Wed, 20 Jun 2007 00:12:21 +0000 (01:12 +0100)]
Add iob_ensure_headroom() placeholder.

13 years agoTreat URIs opened via xfer_open() and friends as relative to the mcb-tcp-xfer origin/mcb-tcp-xfer
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.

13 years agoAdd concept of "current working URI".
Michael Brown [Mon, 11 Jun 2007 22:54:51 +0000 (23:54 +0100)]
Add concept of "current working URI".

13 years agoRemove unused headers.
Michael Brown [Mon, 11 Jun 2007 22:40:34 +0000 (23:40 +0100)]
Remove unused headers.

13 years agoDNS code now records a whole struct sockaddr for the name server.
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.

13 years agoUpdated DNS to use not-yet-implemented UDP data-xfer API.
Michael Brown [Mon, 11 Jun 2007 22:30:44 +0000 (23:30 +0100)]
Updated DNS to use not-yet-implemented UDP data-xfer API.

13 years agoMerge branch 'master' into mcb-tcp-xfer
Michael Brown [Mon, 11 Jun 2007 20:36:22 +0000 (21:36 +0100)]
Merge branch 'master' into mcb-tcp-xfer

13 years agoRenamed _calloc() to zalloc(), ready to be used as a standalone function.
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.

13 years agoUpdated TFTP and PXE UDP API code to use not-yet-implemented data-xfer
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.

13 years agoAdd concept of transfer metadata, to be used by UDP in order to
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.

13 years agoMerge branch 'master' into mcb-tcp-xfer
Michael Brown [Sun, 10 Jun 2007 17:34:10 +0000 (18:34 +0100)]
Merge branch 'master' into mcb-tcp-xfer

13 years agoAdd missing call to free_iob().
Michael Brown [Sun, 10 Jun 2007 17:33:42 +0000 (18:33 +0100)]
Add missing call to free_iob().

13 years agoMerge branch 'master' into mcb-tcp-xfer
Michael Brown [Sat, 9 Jun 2007 23:31:31 +0000 (00:31 +0100)]
Merge branch 'master' into mcb-tcp-xfer

13 years agoAdd our own trivial version of stdarg.h. This makes our build
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.

13 years agoMerge branch 'master' into mcb-tcp-xfer
Michael Brown [Sat, 9 Jun 2007 21:58:27 +0000 (22:58 +0100)]
Merge branch 'master' into mcb-tcp-xfer

13 years agoIgnore external directories (bochs, qemu) within contrib/bochs.
Michael Brown [Sat, 9 Jun 2007 21:58:04 +0000 (22:58 +0100)]
Ignore external directories (bochs, qemu) within contrib/bochs.

13 years agoRename .cvsignore files to .gitignore
Michael Brown [Sat, 9 Jun 2007 21:57:00 +0000 (22:57 +0100)]
Rename .cvsignore files to .gitignore

13 years agoMerge branch 'master' into mcb-tcp-xfer
Michael Brown [Sat, 9 Jun 2007 21:26:50 +0000 (22:26 +0100)]
Merge branch 'master' into mcb-tcp-xfer

13 years agoUpdate email addresses in drivers
Marty Connor [Sat, 9 Jun 2007 19:23:17 +0000 (15:23 -0400)]
Update email addresses in drivers

13 years agoScripts temporarily deregister themselves while executing. This
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.

13 years agoAllow xfer_open() to take a struct uri as well as a URI string.
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.

13 years agoAdd our own trivial version of stdarg.h. This makes our build
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.

13 years agoUse standard xfer_open() argument list for downloader instantiator
Michael Brown [Sat, 9 Jun 2007 16:42:46 +0000 (17:42 +0100)]
Use standard xfer_open() argument list for downloader instantiator

13 years agoAdd reference counting to register/unregister procedure.
Michael Brown [Sat, 9 Jun 2007 16:32:27 +0000 (17:32 +0100)]
Add reference counting to register/unregister procedure.

13 years agoMerge branch 'master' into mcb-tcp-xfer
Michael Brown [Fri, 8 Jun 2007 15:41:54 +0000 (16:41 +0100)]
Merge branch 'master' into mcb-tcp-xfer

13 years agoMerge 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

13 years agoUpdated email mdc's email address
Marty Connor [Fri, 8 Jun 2007 15:23:26 +0000 (11:23 -0400)]
Updated email mdc's email address

13 years agoConflicts with native asn1.c origin origin/origin
Michael Brown [Fri, 8 Jun 2007 12:37:35 +0000 (12:37 +0000)]
Conflicts with native asn1.c

13 years agoAdd a couple of tests for the URI parsing and resolving code.
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.

13 years agoAdded missing va_end()
Michael Brown [Sun, 3 Jun 2007 02:11:25 +0000 (02:11 +0000)]
Added missing va_end()

13 years agoAdd facility for resolving base+relative URIs (and paths).
Michael Brown [Sun, 3 Jun 2007 02:01:02 +0000 (02:01 +0000)]
Add facility for resolving base+relative URIs (and paths).

13 years agoAdded dirname()
Michael Brown [Sun, 3 Jun 2007 01:51:10 +0000 (01:51 +0000)]
Added dirname()

13 years agoAdded [v]asprintf()
Michael Brown [Sun, 3 Jun 2007 01:50:03 +0000 (01:50 +0000)]
Added [v]asprintf()

13 years agoMove [v]ssnprintf() from iscsi.c into vsprintf.c; we need them
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.

13 years agoShould call ftp_done() if constructor fails.
Michael Brown [Tue, 29 May 2007 15:37:30 +0000 (15:37 +0000)]
Should call ftp_done() if constructor fails.

13 years agoUpdate HTTP to use data-xfer interface.
Michael Brown [Tue, 29 May 2007 15:37:09 +0000 (15:37 +0000)]
Update HTTP to use data-xfer interface.

13 years agoUpdated FTP to use data-xfer API.
Michael Brown [Mon, 28 May 2007 20:11:02 +0000 (20:11 +0000)]
Updated FTP to use data-xfer API.