people/xl0/gpxe-arm.git
13 years agoMildly ugly hack to force correct linkage.
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
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 origin/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
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.

13 years agoAdd xfer_[v]printf() functions.
Michael Brown [Mon, 28 May 2007 20:09:44 +0000 (20:09 +0000)]
Add xfer_[v]printf() functions.

13 years agoAdd sanity check and extra debug message
Michael Brown [Mon, 28 May 2007 20:06:41 +0000 (20:06 +0000)]
Add sanity check and extra debug message

13 years agoMake URI structures reference-counted.
Michael Brown [Mon, 28 May 2007 17:35:15 +0000 (17:35 +0000)]
Make URI structures reference-counted.

13 years agoIntroduce name resolution interface and named socket opener.
Michael Brown [Sun, 27 May 2007 01:07:00 +0000 (01:07 +0000)]
Introduce name resolution interface and named socket opener.

13 years agoMove increment/decrement debug messages to DBG2 level
Michael Brown [Sun, 27 May 2007 01:04:52 +0000 (01:04 +0000)]
Move increment/decrement debug messages to DBG2 level

13 years agoEliminate 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.

13 years agoEliminate 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.

13 years agoAdded EPIPE description.
Michael Brown [Sat, 26 May 2007 15:05:31 +0000 (15:05 +0000)]
Added EPIPE description.

13 years agoModify data-xfer semantics: it is no longer necessary to call one of
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.

13 years agoModify data-xfer semantics: it is no longer necessary to call one of
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.

13 years agoModify process semantics; rescheduling is now automatic.
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.

13 years agoFree I/O buffers when we are finished with them!
Michael Brown [Fri, 25 May 2007 16:01:31 +0000 (16:01 +0000)]
Free I/O buffers when we are finished with them!

13 years agoUpdated tcp.c to provide a standardised data transfer interface.
Michael Brown [Fri, 25 May 2007 15:58:42 +0000 (15:58 +0000)]
Updated tcp.c to provide a standardised data transfer interface.

13 years agoUse list_for_each_entry_safe() when flushing queue.
Michael Brown [Sat, 19 May 2007 22:05:16 +0000 (22:05 +0000)]
Use list_for_each_entry_safe() when flushing queue.

13 years agoAdd local address to socket openers.
Michael Brown [Sat, 19 May 2007 20:14:18 +0000 (20:14 +0000)]
Add local address to socket openers.

13 years agoRename pkbpad.c to iobpad.c
Michael Brown [Sat, 19 May 2007 18:42:27 +0000 (18:42 +0000)]
Rename pkbpad.c to iobpad.c

13 years agopkbuff->iobuf changeover
Michael Brown [Sat, 19 May 2007 18:39:40 +0000 (18:39 +0000)]
pkbuff->iobuf changeover

Achieved via Perl using:

perl -pi -e 's/pk_buff/io_buffer/g; s/Packet buffer/I\/O buffer/ig; ' \
-e 's/pkbuff\.h/iobuf.h/g; s/pkb_/iob_/g; s/_pkb/_iob/g; ' \
-e 's/pkb/iobuf/g; s/PKB/IOB/g;'

13 years agoAdd explicit "freeing" debug messages.
Michael Brown [Fri, 18 May 2007 15:42:02 +0000 (15:42 +0000)]
Add explicit "freeing" debug messages.

13 years agoMust request data before anything actually happens...
Michael Brown [Fri, 18 May 2007 15:36:11 +0000 (15:36 +0000)]
Must request data before anything actually happens...

13 years agoAdd debugging
Michael Brown [Fri, 18 May 2007 15:26:44 +0000 (15:26 +0000)]
Add debugging

13 years agoAdd alloc_iob() and free_iob(). (Direct search-and-replace
Michael Brown [Fri, 18 May 2007 14:45:16 +0000 (14:45 +0000)]
Add alloc_iob() and free_iob().  (Direct search-and-replace
equivalents for alloc_pkb() and free_pkb(), which will be retired in
due course).

13 years agoUpdated to use POSIX-style file I/O layer.
Michael Brown [Fri, 18 May 2007 14:33:20 +0000 (14:33 +0000)]
Updated to use POSIX-style file I/O layer.

13 years agoAdded POSIX-style blocking I/O calls, for use by PXE TFTP API.
Michael Brown [Fri, 18 May 2007 14:19:22 +0000 (14:19 +0000)]
Added POSIX-style blocking I/O calls, for use by PXE TFTP API.

13 years agoAllow construction of PXE status code from internal error number.
Michael Brown [Fri, 18 May 2007 14:17:35 +0000 (14:17 +0000)]
Allow construction of PXE status code from internal error number.

13 years agoPrefix all the open()-family routines with xfer_, to disambiguate them
Michael Brown [Fri, 18 May 2007 14:16:06 +0000 (14:16 +0000)]
Prefix all the open()-family routines with xfer_, to disambiguate them
from the normal POSIX-style open()

13 years agoDo not hold self-references. This then avoids the problem of having to
Michael Brown [Tue, 15 May 2007 16:53:46 +0000 (16:53 +0000)]
Do not hold self-references.  This then avoids the problem of having to
ensure that we only drop our self-reference exactly once.

To maintain the guarantee that an object won't go out of scope
unexpectedly while one of its event handlers is being called, the
event-calling functions now automatically obtain and drop extra
references.

13 years agoData-transfer interface should now be functionally complete.
Michael Brown [Tue, 15 May 2007 15:23:09 +0000 (15:23 +0000)]
Data-transfer interface should now be functionally complete.

13 years agoAdd always_inline attribute to force gcc to inline single-instruction
Michael Brown [Tue, 1 May 2007 10:17:29 +0000 (10:17 +0000)]
Add always_inline attribute to force gcc to inline single-instruction
functions.

13 years agoAdded (non-functional) reference count to struct image
Michael Brown [Tue, 1 May 2007 00:11:34 +0000 (00:11 +0000)]
Added (non-functional) reference count to struct image

13 years agoInitial sketch for a downloader object
Michael Brown [Tue, 1 May 2007 00:09:19 +0000 (00:09 +0000)]
Initial sketch for a downloader object

13 years agoAdd start() event
Michael Brown [Tue, 1 May 2007 00:07:57 +0000 (00:07 +0000)]
Add start() event

Add "xfer" to all xfer functions and "job" to all job functions.

13 years agoClarify behaviour of plug() by using intf_put() and intf_get().
Michael Brown [Tue, 1 May 2007 00:06:21 +0000 (00:06 +0000)]
Clarify behaviour of plug() by using intf_put() and intf_get().

13 years agoDocument the fact that a zeroed-out refcounted object will behave in
Michael Brown [Tue, 1 May 2007 00:04:21 +0000 (00:04 +0000)]
Document the fact that a zeroed-out refcounted object will behave in
the most generally useful way.

13 years agoD'oh
Michael Brown [Mon, 30 Apr 2007 01:24:52 +0000 (01:24 +0000)]
D'oh

13 years agoAdded plug_plug()
Michael Brown [Mon, 30 Apr 2007 01:23:01 +0000 (01:23 +0000)]
Added plug_plug()

13 years agoAdd (and use) generic reference counter, to improve signal:noise ratio
Michael Brown [Sun, 29 Apr 2007 23:53:39 +0000 (23:53 +0000)]
Add (and use) generic reference counter, to improve signal:noise ratio
in code defining reference-counted objects.

13 years agoSkeleton job control interface
Michael Brown [Sun, 29 Apr 2007 02:08:39 +0000 (02:08 +0000)]
Skeleton job control interface

13 years agoAdd seek()
Michael Brown [Sun, 29 Apr 2007 02:03:58 +0000 (02:03 +0000)]
Add seek()

Dehyphenate "data-transfer".

13 years agoPreliminary support for opening data-transfer interfaces
Michael Brown [Sat, 28 Apr 2007 20:56:24 +0000 (20:56 +0000)]
Preliminary support for opening data-transfer interfaces

13 years agoAdded PF_INET[6] and SOCK_{STREAM,DGRAM} definitions and debug
Michael Brown [Sat, 28 Apr 2007 20:53:48 +0000 (20:53 +0000)]
Added PF_INET[6] and SOCK_{STREAM,DGRAM} definitions and debug
functions.

13 years agoAdded deliver-as-iobuf/deliver-as-raw concepts.
Michael Brown [Fri, 27 Apr 2007 00:02:23 +0000 (00:02 +0000)]
Added deliver-as-iobuf/deliver-as-raw concepts.

13 years agoInitial sketch for the generic data-transfer interface.
Michael Brown [Thu, 26 Apr 2007 22:44:52 +0000 (22:44 +0000)]
Initial sketch for the generic data-transfer interface.

13 years agoTrivial ASN.1 decoding functions.
Michael Brown [Sat, 21 Apr 2007 18:53:26 +0000 (18:53 +0000)]
Trivial ASN.1 decoding functions.

13 years agohoffmeis: Preparations for syslog support (LOGSERVER in DHCP, linewise
Anselm Martin Hoffmeister [Mon, 9 Apr 2007 18:01:43 +0000 (18:01 +0000)]
hoffmeis: Preparations for syslog support (LOGSERVER in DHCP, linewise
output buffering defintions and the like)

13 years agohoffmeis: Fixing situation where absence of a newdata() handler for UDP
Anselm Martin Hoffmeister [Mon, 9 Apr 2007 17:34:10 +0000 (17:34 +0000)]
hoffmeis: Fixing situation where absence of a newdata() handler for UDP
connections might break things. Only-sending applications like syslog()
do not need a newdata() handler, so added a check if that handler exists.

13 years agoAdd 32-bit support.
Michael Brown [Thu, 22 Mar 2007 16:18:46 +0000 (16:18 +0000)]
Add 32-bit support.

Generate DHCP data block for images.

13 years agoProvide a buffer in base memory for code to fill with generated DHCP data.
Michael Brown [Thu, 22 Mar 2007 16:18:07 +0000 (16:18 +0000)]
Provide a buffer in base memory for code to fill with generated DHCP data.

13 years agoTypo
Michael Brown [Tue, 20 Mar 2007 18:55:00 +0000 (18:55 +0000)]
Typo

13 years agoSupport 32-bit (linear) NBI images. We don't yet provide a bootp data
Michael Brown [Wed, 14 Mar 2007 00:39:12 +0000 (00:39 +0000)]
Support 32-bit (linear) NBI images.  We don't yet provide a bootp data
block, so first32.c dies immediately.

13 years agoPorted bnx2 driver from Etherboot 5.4.
James Harper [Tue, 13 Mar 2007 23:03:50 +0000 (23:03 +0000)]
Ported bnx2 driver from Etherboot 5.4.

13 years agoAdded .nbi as a format.
Michael Brown [Sun, 11 Mar 2007 00:57:26 +0000 (00:57 +0000)]
Added .nbi as a format.

13 years agoMake _load_size accurately reflect the number of bytes in the actual
Michael Brown [Sun, 11 Mar 2007 00:54:35 +0000 (00:54 +0000)]
Make _load_size accurately reflect the number of bytes in the actual
image file.