Michael Brown
8f6a4e8140
Add gdbsym.c object to help with running gdb-to-qemu
před 17 roky
Michael Brown
4472e22b5e
Implement the two UNDI API calls used by RIS.
před 17 roky
Michael Brown
acd598b4f9
Don't build option-overloaded packets; they just confuse people (ISC
DHCPD and Windows RIS in particular).
před 17 roky
Michael Brown
dffdc285b3
Obsoleted by downloader.c
před 17 roky
Michael Brown
5de837cc67
Mildly ugly hack to force correct linkage.
před 17 roky
Michael Brown
4b08f4cf0f
Quick hack to get image booting working again
před 17 roky
Michael Brown
1ec7bb789d
Add dhcp_configure_netdev()
před 17 roky
Michael Brown
6209d20779
Added monojob controller in lieu of a full working shell.
před 17 roky
Michael Brown
73fe1ba9dd
Kill off job::start() (it was only ever added as part of an aborted
attempt at triggering TCP-related protocols to start).
před 17 roky
Michael Brown
07dc294de8
Update DHCP to use data-xfer interface (not yet tested).
před 17 roky
Michael Brown
f77815f2b1
Kill off hotplug.h and just make net devices normal reference-counted
structures.
DHCP still broken and #if 0'd out.
před 17 roky
Michael Brown
e381714c07
Partial migration of UDP to data-xfer interface. (Will not link at
present; DHCP is broken).
před 17 roky
Michael Brown
564ac70a42
Add iob_ensure_headroom() placeholder.
před 17 roky
Michael Brown
15dae1e042
Add concept of "current working URI".
před 17 roky
Michael Brown
2d4c72b762
Remove unused headers.
před 17 roky
Michael Brown
f87bc837f4
Updated DNS to use not-yet-implemented UDP data-xfer API.
před 17 roky
Michael Brown
058b200529
Renamed _calloc() to zalloc(), ready to be used as a standalone function.
před 17 roky
Michael Brown
01b4bde8a0
Updated TFTP and PXE UDP API code to use not-yet-implemented data-xfer
UDP API.
před 17 roky
Michael Brown
95adce0ce1
Add concept of transfer metadata, to be used by UDP in order to
implement sendto()/recvfrom() equivalents.
před 17 roky
Michael Brown
0f8d7d705d
Rename .cvsignore files to .gitignore
před 17 roky
Michael Brown
2c569fb240
Allow xfer_open() to take a struct uri as well as a URI string.
před 17 roky
Michael Brown
7c8cc3ef6c
Use standard xfer_open() argument list for downloader instantiator
před 17 roky
Michael Brown
a6f0a098da
Add facility for resolving base+relative URIs (and paths).
před 17 roky
Michael Brown
182e3ed61d
Added dirname()
před 17 roky
Michael Brown
816c8f3b89
Added [v]asprintf()
před 17 roky
Michael Brown
335b99a39d
Move [v]ssnprintf() from iscsi.c into vsprintf.c; we need them
elsewhere as well.
před 17 roky
Michael Brown
735e07268e
Update HTTP to use data-xfer interface.
před 17 roky
Michael Brown
0dfd5b84fd
Updated FTP to use data-xfer API.
před 17 roky
Michael Brown
a6a18ae9af
Add xfer_[v]printf() functions.
před 17 roky
Michael Brown
656485c1f1
Make URI structures reference-counted.
před 17 roky
Michael Brown
63719deea9
Introduce name resolution interface and named socket opener.
před 17 roky
Michael Brown
a1210e4fca
Eliminate PF_INET; just use the AF_INET from the struct sockaddr instead.
před 17 roky
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.
před 17 roky
Michael Brown
3601103381
Modify process semantics; rescheduling is now automatic.
Add reference-counting to processes.
Add timer_running() test.
před 17 roky
Michael Brown
1136c19fa4
Updated tcp.c to provide a standardised data transfer interface.
před 17 roky
Michael Brown
5e25a89e74
Add local address to socket openers.
před 17 roky
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;'
před 17 roky
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).
před 17 roky
Michael Brown
86a948ccbe
Added POSIX-style blocking I/O calls, for use by PXE TFTP API.
před 17 roky
Michael Brown
6b6fc1d5ea
Allow construction of PXE status code from internal error number.
před 17 roky
Michael Brown
59e738d756
Prefix all the open()-family routines with xfer_, to disambiguate them
from the normal POSIX-style open()
před 17 roky
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.
před 17 roky
Michael Brown
5471bfbbbe
Data-transfer interface should now be functionally complete.
před 17 roky
Michael Brown
817a446cc6
Add always_inline attribute to force gcc to inline single-instruction
functions.
před 18 roky
Michael Brown
123a98db26
Added (non-functional) reference count to struct image
před 18 roky
Michael Brown
53da1f1402
Initial sketch for a downloader object
před 18 roky
Michael Brown
e3dcb9a1ad
Add start() event
Add "xfer" to all xfer functions and "job" to all job functions.
před 18 roky
Michael Brown
a90a9adbd7
Clarify behaviour of plug() by using intf_put() and intf_get().
před 18 roky
Michael Brown
7ff81f6654
Document the fact that a zeroed-out refcounted object will behave in
the most generally useful way.
před 18 roky
Michael Brown
0898b0b3b1
Added plug_plug()
před 18 roky