Michael Brown
297ae0f8d5
Updated to syntax required by latest bochs CVS.
18 년 전
Michael Brown
18f620ca5d
Updated to current bochs CVS
18 년 전
Michael Brown
cfae86f6c8
Glenn managed to shrink .text by 5 more bytes.
18 년 전
Michael Brown
fee8b91015
D'oh
18 년 전
Michael Brown
7a82c3eca3
Added missing ssize_t
18 년 전
Michael Brown
cf3783b4ca
Actually, it's probably a good idea to have packet buffers avoid 4kB
crossings.
18 년 전
Michael Brown
00a1de964d
Update to use POSIX-like API.
18 년 전
Michael Brown
face774c4c
Fixed erroneous comparison
18 년 전
Michael Brown
95f8a42930
Removed incorrect comment; malloc() is inefficient only when the
alignment and size are both powers of two, and there's no way to
specify an alignment through the malloc() interface anyway.
18 년 전
Michael Brown
4e92f29c9e
Now passes trivial tests. free_memblock() needs neatening up.
18 년 전
Michael Brown
b601a7d355
Updated memory allocator to improve support for unaligned or partially
aligned blocks.
Moved header to include/malloc.h, since we now also provide the
POSIX-like malloc()/free() pair.
Not yet tested.
18 년 전
Michael Brown
2f0d412210
Add __constant_flsl(), because it's useful for finding out the next
power-of-two up from a given constant via
( 1 << fls ( constant - 1 ) )
fls(), flsl(), ffs() and ffsl() appear in strings.h according to
POSIX.
18 년 전
Michael Brown
a81f96998b
Added missing headers required for compilation in Etherboot.
18 년 전
Michael Brown
455b76980f
Added pkb_reserve().
18 년 전
Michael Brown
26749951dc
We have our own ARP layer now.
18 년 전
Michael Brown
fcf765e42d
Add missing {register,free}_netdev().
Tie into existing driver API; we'll fix that up soon.
18 년 전
Michael Brown
832e86246b
gcc is rather over-aggressive about optimising out static data structures
even when __atribute__ (( unused )) is correctly set...
18 년 전
Michael Brown
4c4e4de18f
(librm_base-1b) is already an offset; no need to apply OFFSET().
Doing so, in fact, seems to expose an assembler bug; (a-b-0) is
apparently not the same as (a-b). Go figure.
18 년 전
Michael Brown
824d6ffa7f
Header rearrangement.
I want to get to the point where any header in include/ reflects a
standard user-level header (e.g. a POSIX header), while everything that's
specific to gPXE lives in include/gpxe/. Headers that reflect a Linux
header (e.g. if_ether.h) should also be in include/gpxe/, with the same
name as the Linux header and, preferably, the same names used for the
definitions.
18 년 전
Michael Brown
53f78346bf
Network API now allows for multiple network devices (although the
implementation allows for only one, and does so without compromising on
the efficiency of static allocation).
Link-layer protocols are cleanly separated from the device drivers.
Network-layer protocols are cleanly separated from individual network
devices.
Link-layer and network-layer protocols are cleanly separated from each
other.
18 년 전
Michael Brown
fdc2ee79db
Network API now allows for multiple network devices (although the
implementation allows for only one, and does so without compromising on
the efficiency of static allocation).
Link-layer protocols are cleanly separated from the device drivers.
Network-layer protocols are cleanly separated from individual network
devices.
Link-layer and network-layer protocols are cleanly separated from each
other.
18 년 전
Michael Brown
0d97f0d482
Obviate uip_init(); our bss is zeroed at startup already.
18 년 전
Michael Brown
5423f876fb
Don't bother poisoning lists; it costs code size.
18 년 전
Michael Brown
1d7cfd5acf
Prototype now clashes with the macro in arch/i386.
18 년 전
Michael Brown
510ccb2900
Added __constant_memcpy() based on version in Linux's string.h.
Added memswap().
18 년 전
Michael Brown
b6b6a0b5fe
First draft of a dynamic memory allocator
18 년 전
Michael Brown
e323d1a29b
Add "net" directory.
Avoid including debug information in bin/%.s output, since the whole
point is to have easy-to-read assembler.
18 년 전
Michael Brown
6209bd873a
First sketch of a new net device API.
18 년 전
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.
18 년 전
Michael Brown
b89ccac02d
Updated to remove obsolete constants
18 년 전
Michael Brown
3ca7dbe7ca
Added the concept of a network interface (a network-layer concept) as
separate from a network device (a link-layer concept).
18 년 전
Michael Brown
d65a66606b
Typo
18 년 전
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.
18 년 전
Michael Brown
d24042f0bb
Update now that if_ether.h has moved.
18 년 전
Michael Brown
4f3581e99c
Added ENOENT and EAFNOSUPPORT
18 년 전
Michael Brown
ab139ceda9
Added pkb_unput() and pkb_len().
18 년 전
Michael Brown
744b895077
Make flags more efficient.
Add 'raw' net_addr facility (needed for ARP).
18 년 전
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.
18 년 전
Michael Brown
9f67ad9db0
First version. ARP protocol independence in less than the size of uIP's
Ethernet-and-IPv4-only ARP module. :)
18 년 전
Michael Brown
363905e1b6
Add missing prototype
18 년 전
Michael Brown
02d342f38f
First version
18 년 전
Michael Brown
0b561ce972
First sketch
18 년 전
Michael Brown
42b659f926
First version
18 년 전
Michael Brown
0864a73347
First version, based on the concepts in linux/skbuff.h
18 년 전
Michael Brown
1a60444fe4
Added netmask and gateway global options.
Added iSCSI testing.
18 년 전
Michael Brown
6446767258
First draft of iSCSI protocol support. Is capable of retrieving disk
blocks.
18 년 전
Michael Brown
9ea782d339
Make pcap_inject non-static, so that its prototype doesn't conflict with
the real pcap_inject in the case where we do have it.
18 년 전
Michael Brown
c8a7133e9f
Added tcp_buffer, to give applications a zero-cost place to build data to
be transmitted.
18 년 전
Michael Brown
988bb50979
Added set_netmask() and set_gateway()
18 년 전
Michael Brown
ee058362fa
We don't need to know anything about ARP
18 년 전