Michael Brown
5423f876fb
Don't bother poisoning lists; it costs code size.
il y a 20 ans
Michael Brown
1d7cfd5acf
Prototype now clashes with the macro in arch/i386.
il y a 20 ans
Michael Brown
b6b6a0b5fe
First draft of a dynamic memory allocator
il y a 20 ans
Michael Brown
6209bd873a
First sketch of a new net device API.
il y a 20 ans
Michael Brown
bdc8190c8d
Remove the concept of the media-independent link-layer header and replace
it with metadata in the pkb structure. This is required since UNDI will
want to be able to parse the link-layer header without destroying it.
il y a 20 ans
Michael Brown
3ca7dbe7ca
Added the concept of a network interface (a network-layer concept) as
separate from a network device (a link-layer concept).
il y a 20 ans
Michael Brown
d65a66606b
Typo
il y a 20 ans
Michael Brown
2558439ce4
First version, based on include/linux/list.h, stripped down to just
those functions we are likely to need.
Still need to come up with a way of getting the linker to create
static lists using this linking mechanism.
il y a 20 ans
Michael Brown
d24042f0bb
Update now that if_ether.h has moved.
il y a 20 ans
Michael Brown
4f3581e99c
Added ENOENT and EAFNOSUPPORT
il y a 20 ans
Michael Brown
ab139ceda9
Added pkb_unput() and pkb_len().
il y a 20 ans
Michael Brown
744b895077
Make flags more efficient.
Add 'raw' net_addr facility (needed for ARP).
il y a 20 ans
Michael Brown
49f933fbc3
Moved if_ether.h and if_arp.h to include/gpxe, for consistency with Linux
kernel.
Removed obsolete struct arprequest from if_arp.h and put it in nic.c so
that nic.c will still compile. ARP will very shortly be handled by
net/arp.c instead.
il y a 20 ans
Michael Brown
363905e1b6
Add missing prototype
il y a 20 ans
Michael Brown
02d342f38f
First version
il y a 20 ans
Michael Brown
0b561ce972
First sketch
il y a 20 ans
Michael Brown
42b659f926
First version
il y a 20 ans
Michael Brown
0864a73347
First version, based on the concepts in linux/skbuff.h
il y a 20 ans
Michael Brown
6446767258
First draft of iSCSI protocol support. Is capable of retrieving disk
blocks.
il y a 20 ans
Michael Brown
c8a7133e9f
Added tcp_buffer, to give applications a zero-cost place to build data to
be transmitted.
il y a 20 ans
Michael Brown
988bb50979
Added set_netmask() and set_gateway()
il y a 20 ans
Michael Brown
b44332eb7d
Split non-TCP portions of the stack out into ip.[ch].
Added set_ipaddr().
il y a 20 ans
Michael Brown
7e61f38799
Moved "hello world" protocol implementation out of prototester.c and into
the first standalong uIP-based protocol module.
il y a 20 ans
Michael Brown
508dcdb303
Added container_of(). This seems about the best place to put it, since
the definition of it uses offsetof(), and the two concepts are related.
il y a 20 ans
Michael Brown
2299435f1c
Added prototype for inet_ntoa, even though we don't have the function
yet, in order to allow prototester.c to compile. It might be worth
changing all the uses of "%@" in printf to use "%s" and inet_ntoa
instead, in order to improve the portability of our code.
il y a 20 ans
Michael Brown
a4a0244aa3
Moved uIP wrapper out of prototester.c and into proto/tcp.c.
il y a 20 ans
Michael Brown
05b284399e
Moved old tcp.h to old_tcp.h, to avoid name clash with new (uIP-based)
tcp.h.
il y a 20 ans
Michael Brown
af23ff8a24
Assertions are now handled via the POSIX-like <assert.h>.
il y a 20 ans
Michael Brown
55497b3402
Added missing #endif
il y a 20 ans
Michael Brown
cb8e89de15
Added assert.h, with assert() defined (almost) as per POSIX, and
linker_assert() defined as gPXE-specific.
il y a 20 ans
Michael Brown
dde1c5ad18
Moved include/in.h to include/gpxe/in.h, so that it can be included by
prototester.
il y a 20 ans
Michael Brown
5d28bae0f1
Fix up building with gcc 4.0.1 / gas 2.16.91
il y a 20 ans
Michael Brown
33dbdda28e
Allow data blocks to be less than sizeof ( struct buffer_free_block ) in
size. (The restriction on the size of free blocks remains.)
il y a 20 ans
Michael Brown
7d8adc25bc
In multicast operation, the client still has a unicast local port.
il y a 20 ans
Michael Brown
be7897523d
IGMP protocol now uses the generic background protocol mechanism.
il y a 20 ans
Michael Brown
85a380530d
Add generic mechanism for background protocols (e.g. ARP, IGMP)
il y a 20 ans
Michael Brown
fa17bf0917
Make rfc2090 multicast option optional
il y a 20 ans
Michael Brown
55771a462d
Re-order functions for more logical documentation
il y a 20 ans
Michael Brown
f2198e8a65
Don't choke on duplicate OACK packets.
Make await_tftp() static and create tftp_get() for fetching the next TFTP
packet instead.
il y a 20 ans
Michael Brown
378e922f8f
Remove prototypes for obsolete functions
il y a 20 ans
Michael Brown
53a4436d94
TFTP upgraded to use a core function library (in tftpcore.c) which will be
shared between TFTP, TFTM and MTFTP protocols.
il y a 20 ans
Michael Brown
0b048e9cfb
Now have enough functions to implement a standard TFTP client in around 50
lines of code.
il y a 20 ans
Michael Brown
92f1a5c677
Documented the purpose of the two timeout fields in
s_PXENV_TFTP_READ_FILE.
il y a 20 ans
Michael Brown
6e74dc3460
Added implementation note on IP routing.
Added reason for min value of 512 on s_PXENV_TFTP_OPEN::PacketSize.
il y a 20 ans
Michael Brown
572483cc59
Separate out the documentation of the PXE API from the documentation of
the Etherboot implementation (i.e. don't do what Intel did).
il y a 20 ans
Michael Brown
0e494614b5
Some versions of doxygen seem to object to "@ret None" or similar.
il y a 20 ans
Michael Brown
7b423c0988
Fixes for gcc >= 3.2 from Georg Baum
il y a 20 ans
Michael Brown
809933d9f7
Split PXE code into preboot, udp, tftp, undi and loader units.
PXE code now compiles without errors (though it won't actually work).
il y a 20 ans
Michael Brown
8becf0f65f
Rearranging PXE header files
il y a 20 ans
Michael Brown
fd49648a35
Separated out the Etherboot-specific parts of the old pxe.h header.
il y a 20 ans