Michael Brown
59e738d756
Prefix all the open()-family routines with xfer_, to disambiguate them
from the normal POSIX-style open()
17 years ago
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.
17 years ago
Michael Brown
5471bfbbbe
Data-transfer interface should now be functionally complete.
17 years ago
Michael Brown
817a446cc6
Add always_inline attribute to force gcc to inline single-instruction
functions.
17 years ago
Michael Brown
123a98db26
Added (non-functional) reference count to struct image
17 years ago
Michael Brown
53da1f1402
Initial sketch for a downloader object
17 years ago
Michael Brown
e3dcb9a1ad
Add start() event
Add "xfer" to all xfer functions and "job" to all job functions.
17 years ago
Michael Brown
a90a9adbd7
Clarify behaviour of plug() by using intf_put() and intf_get().
17 years ago
Michael Brown
7ff81f6654
Document the fact that a zeroed-out refcounted object will behave in
the most generally useful way.
17 years ago
Michael Brown
0898b0b3b1
Added plug_plug()
17 years ago
Michael Brown
d40761d725
Add (and use) generic reference counter, to improve signal:noise ratio
in code defining reference-counted objects.
17 years ago
Michael Brown
36bfb6edbb
Skeleton job control interface
17 years ago
Michael Brown
280160139d
Add seek()
Dehyphenate "data-transfer".
17 years ago
Michael Brown
ff1222a8d3
Preliminary support for opening data-transfer interfaces
17 years ago
Michael Brown
27b3bd10c9
Added PF_INET[6] and SOCK_{STREAM,DGRAM} definitions and debug
functions.
17 years ago
Michael Brown
1c765b3988
Added deliver-as-iobuf/deliver-as-raw concepts.
17 years ago
Michael Brown
2575ddc889
Initial sketch for the generic data-transfer interface.
17 years ago
Michael Brown
95206577a7
Trivial ASN.1 decoding functions.
17 years ago
Anselm Martin Hoffmeister
ed7dc02a95
hoffmeis: Preparations for syslog support (LOGSERVER in DHCP, linewise
output buffering defintions and the like)
17 years ago
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.
17 years ago
Michael Brown
0050378f51
SHA1_DIGEST_SIZE also available as a static constant
17 years ago
Michael Brown
cc8f9e4b7f
Make context sizes available for statically-allocated structures
17 years ago
Michael Brown
f5776dbef1
Fix prototypes
17 years ago
Michael Brown
a1f021db96
Placeholder
17 years ago
Michael Brown
1ae70e12e5
Added wrapper for AXTLS AES code
17 years ago
Michael Brown
0d07657296
Added setiv method
17 years ago
Michael Brown
c1aa1d0764
Add wrapper around axtls' sha1 code
17 years ago
Michael Brown
a3695b1ff6
Placeholder for TLS insertion
17 years ago
Michael Brown
1f5f900595
Add HTTPS port
17 years ago
Michael Brown
21f3789ec8
Swap downstream/upstream order so that debug messages for filters show
up in the same colour as debug messages for the application stream.
17 years ago
Michael Brown
e38e516463
Add insert_filter() function
17 years ago
Michael Brown
a008f9e85b
Add null crypto algorithm
17 years ago
Michael Brown
6d32f0e6e2
Changed to use the generic stream API.
17 years ago
Michael Brown
811db204a6
Added cipher wrapper functions
17 years ago
Michael Brown
b3e4418ea8
Missing check-in
17 years ago
Michael Brown
db2fde474e
Generalise digest_algorithm to crypto_algorithm.
17 years ago
Michael Brown
2f7eac1646
Low-overhead filter streams
17 years ago
Michael Brown
ddf3b56d47
Definition of a (hopefully) generic stream API
17 years ago
Michael Brown
1a79437888
Added async_block_progress() and default SIGUPDATE handler.
17 years ago
Michael Brown
c42a384709
Moved most buffer debug messages to DBG2.
Make expand_buffer() a non-inline function, so that we can add debug
messages.
Expandable buffers now don't *always* round up to the next power of two.
This allows e.g. loading a 137MB ISO image on a machine with only 256MB
RAM...
17 years ago
Michael Brown
bf9ec8102f
Add 64-bit rotates
17 years ago
Michael Brown
da9dc834b1
Help quick testing of building Linux code inside gPXE
17 years ago
Michael Brown
9cf5c4557d
Add Linux-compatible rol32/ror32 functions. Amazingly, gcc will
optimise these down to the correct single "roll"/"rorl" instruction.
17 years ago
Michael Brown
f4c1e564a1
vsprintf.h is gPXE-specific; move it to include/gpxe
17 years ago
Michael Brown
4e3976711d
A working name resolution framework
17 years ago
Michael Brown
075f8144ff
Have DHCP set the nameserver, rather than DNS read the DHCP nameserver
value.
17 years ago
Michael Brown
c014f607a8
Use total free memory as advertised window. This seems to be sufficient
to avoid drops even on slow NICs.
17 years ago
Michael Brown
6d4e37cf42
Move include/malloc.h to include/gpxe/malloc.h, since everything in there
is now gPXE-specific. (The standard malloc() et al have been in stdlib.h
for a while).
Add free memory counter.
17 years ago
Michael Brown
5b00fbade3
Increase window size to 64kB. Line rate downloads on a 100Mbps link,
anyone?
17 years ago
Michael Brown
c8b3e969a0
Allow buffers to be pre-expanded on demand.
17 years ago