Michael Brown
f87bc837f4
Updated DNS to use not-yet-implemented UDP data-xfer API.
2007-06-11 23:30:44 +01:00
Michael Brown
a74ecf3057
Merge branch 'master' into mcb-tcp-xfer
2007-06-11 21:36:22 +01:00
Michael Brown
058b200529
Renamed _calloc() to zalloc(), ready to be used as a standalone function.
2007-06-11 21:36:10 +01:00
Michael Brown
01b4bde8a0
Updated TFTP and PXE UDP API code to use not-yet-implemented data-xfer
...
UDP API.
2007-06-11 18:11:29 +01:00
Michael Brown
95adce0ce1
Add concept of transfer metadata, to be used by UDP in order to
...
implement sendto()/recvfrom() equivalents.
2007-06-11 15:04:39 +01:00
Michael Brown
11ec23f454
Merge branch 'master' into mcb-tcp-xfer
2007-06-09 22:58:27 +01:00
Michael Brown
0f8d7d705d
Rename .cvsignore files to .gitignore
2007-06-09 22:57:00 +01:00
Michael Brown
2c569fb240
Allow xfer_open() to take a struct uri as well as a URI string.
2007-06-09 18:20:08 +01:00
Michael Brown
7c8cc3ef6c
Use standard xfer_open() argument list for downloader instantiator
2007-06-09 17:42:46 +01:00
Michael Brown
6f0a6c09db
Merge branch 'master' into mcb-tcp-xfer
2007-06-08 16:33:24 +01:00
Michael Brown
a6f0a098da
Add facility for resolving base+relative URIs (and paths).
2007-06-03 02:01:02 +00:00
Michael Brown
182e3ed61d
Added dirname()
2007-06-03 01:51:10 +00:00
Michael Brown
816c8f3b89
Added [v]asprintf()
2007-06-03 01:50:03 +00:00
Michael Brown
335b99a39d
Move [v]ssnprintf() from iscsi.c into vsprintf.c; we need them
...
elsewhere as well.
2007-05-31 13:26:50 +00:00
Michael Brown
735e07268e
Update HTTP to use data-xfer interface.
2007-05-29 15:37:09 +00:00
Michael Brown
0dfd5b84fd
Updated FTP to use data-xfer API.
2007-05-28 20:11:02 +00:00
Michael Brown
a6a18ae9af
Add xfer_[v]printf() functions.
2007-05-28 20:09:44 +00:00
Michael Brown
656485c1f1
Make URI structures reference-counted.
2007-05-28 17:35:15 +00:00
Michael Brown
63719deea9
Introduce name resolution interface and named socket opener.
2007-05-27 01:07:00 +00:00
Michael Brown
a1210e4fca
Eliminate PF_INET; just use the AF_INET from the struct sockaddr instead.
2007-05-26 20:41:23 +00:00
Michael Brown
10d0a1f8c7
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.
2007-05-26 15:04:36 +00:00
Michael Brown
3601103381
Modify process semantics; rescheduling is now automatic.
...
Add reference-counting to processes.
Add timer_running() test.
2007-05-26 15:00:56 +00:00
Michael Brown
1136c19fa4
Updated tcp.c to provide a standardised data transfer interface.
2007-05-25 15:58:42 +00:00
Michael Brown
5e25a89e74
Add local address to socket openers.
2007-05-19 20:14:18 +00:00
Michael Brown
3e2c6b6736
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;'
2007-05-19 18:39:40 +00:00
Michael Brown
68dd826b86
Add alloc_iob() and free_iob(). (Direct search-and-replace
...
equivalents for alloc_pkb() and free_pkb(), which will be retired in
due course).
2007-05-18 14:45:16 +00:00
Michael Brown
86a948ccbe
Added POSIX-style blocking I/O calls, for use by PXE TFTP API.
2007-05-18 14:19:22 +00:00
Michael Brown
6b6fc1d5ea
Allow construction of PXE status code from internal error number.
2007-05-18 14:17:35 +00:00
Michael Brown
59e738d756
Prefix all the open()-family routines with xfer_, to disambiguate them
...
from the normal POSIX-style open()
2007-05-18 14:16:06 +00:00
Michael Brown
b1755462ab
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.
2007-05-15 16:53:46 +00:00
Michael Brown
5471bfbbbe
Data-transfer interface should now be functionally complete.
2007-05-15 15:23:09 +00:00
Michael Brown
817a446cc6
Add always_inline attribute to force gcc to inline single-instruction
...
functions.
2007-05-01 10:17:29 +00:00
Michael Brown
123a98db26
Added (non-functional) reference count to struct image
2007-05-01 00:11:34 +00:00
Michael Brown
53da1f1402
Initial sketch for a downloader object
2007-05-01 00:09:19 +00:00
Michael Brown
e3dcb9a1ad
Add start() event
...
Add "xfer" to all xfer functions and "job" to all job functions.
2007-05-01 00:07:57 +00:00
Michael Brown
a90a9adbd7
Clarify behaviour of plug() by using intf_put() and intf_get().
2007-05-01 00:06:21 +00:00
Michael Brown
7ff81f6654
Document the fact that a zeroed-out refcounted object will behave in
...
the most generally useful way.
2007-05-01 00:04:21 +00:00
Michael Brown
0898b0b3b1
Added plug_plug()
2007-04-30 01:23:01 +00:00
Michael Brown
d40761d725
Add (and use) generic reference counter, to improve signal:noise ratio
...
in code defining reference-counted objects.
2007-04-29 23:53:39 +00:00
Michael Brown
36bfb6edbb
Skeleton job control interface
2007-04-29 02:08:39 +00:00
Michael Brown
280160139d
Add seek()
...
Dehyphenate "data-transfer".
2007-04-29 02:03:58 +00:00
Michael Brown
ff1222a8d3
Preliminary support for opening data-transfer interfaces
2007-04-28 20:56:24 +00:00
Michael Brown
27b3bd10c9
Added PF_INET[6] and SOCK_{STREAM,DGRAM} definitions and debug
...
functions.
2007-04-28 20:53:48 +00:00
Michael Brown
1c765b3988
Added deliver-as-iobuf/deliver-as-raw concepts.
2007-04-27 00:02:23 +00:00
Michael Brown
2575ddc889
Initial sketch for the generic data-transfer interface.
2007-04-26 22:44:52 +00:00
Michael Brown
95206577a7
Trivial ASN.1 decoding functions.
2007-04-21 18:53:26 +00:00
Anselm Martin Hoffmeister
ed7dc02a95
hoffmeis: Preparations for syslog support (LOGSERVER in DHCP, linewise
...
output buffering defintions and the like)
2007-04-09 18:01:43 +00:00
Michael Brown
520d9c36af
Updated ISAPnP, EISA, MCA and ISA buses to current device model.
...
ISA 3c509 is currently non-functional, although the EISA (3c509-eisa) and
MCA (3c529) variants should build OK.
None of this code is yet tested.
2007-03-10 18:08:33 +00:00
Michael Brown
0050378f51
SHA1_DIGEST_SIZE also available as a static constant
2007-02-01 06:36:45 +00:00
Michael Brown
cc8f9e4b7f
Make context sizes available for statically-allocated structures
2007-02-01 05:48:56 +00:00