Michael Brown
7e61f38799
Moved "hello world" protocol implementation out of prototester.c and into
the first standalong uIP-based protocol module.
18 years ago
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.
18 years ago
Michael Brown
99032becce
Pick up the gPXE include files when building prototester.
18 years ago
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.
18 years ago
Michael Brown
a4a0244aa3
Moved uIP wrapper out of prototester.c and into proto/tcp.c.
18 years ago
Michael Brown
17c0253ca0
Add include/gpxe as a directory to scan.
Exclude proto/uip, since uip.c and uip_arp.c both have global variables
called "c", which screws up doxygen's auto-generation of links to file
documentation when it encounters a file name such as "hello.c".
18 years ago
Michael Brown
2bc7c746a6
Updated with "doxygen -u" from doxygen 1.4.4
18 years ago
Michael Brown
05b284399e
Moved old tcp.h to old_tcp.h, to avoid name clash with new (uIP-based)
tcp.h.
18 years ago
Michael Brown
af23ff8a24
Assertions are now handled via the POSIX-like <assert.h>.
18 years ago
Michael Brown
55497b3402
Added missing #endif
18 years ago
Michael Brown
cb8e89de15
Added assert.h, with assert() defined (almost) as per POSIX, and
linker_assert() defined as gPXE-specific.
18 years ago
Michael Brown
531371efa2
Removed to make way for the uIP-based tcp.c.
18 years ago
Michael Brown
dde1c5ad18
Moved include/in.h to include/gpxe/in.h, so that it can be included by
prototester.
18 years ago
Michael Brown
eaf40883ff
Add Makefile for hijack and prototester utilities.
18 years ago
Michael Brown
21c58729ae
Add debug symbols to objects. (They will be stripped out of the final
-Obinary build anyway, so it doesn't waste any space).
18 years ago
Michael Brown
b2c94b32fc
Make the application state a void *.
18 years ago
Michael Brown
218c26ff2b
Can now also print data sent by the remote side.
18 years ago
Michael Brown
0d506a5c6a
Now capable of sending "Hello world!" via TCP.
18 years ago
Michael Brown
911486fe41
Added basic http-specific option parsing
18 years ago
Michael Brown
5263a5abf4
Started adding structure to allow for separate protocol tests, with
individual options.
Created the embryonic beginnings of a cleanly separated driver and
protocol stack API.
18 years ago
Michael Brown
c32e83ad8d
Skeleton version: contains device driver (connecting to network via
hijack daemon) and a functional but very ugly and very primitive
wrapper around uIP.
This passes proof-of-concept testing; it successfully initiates a TCP
connection and responds to pings.
18 years ago
Michael Brown
bb37bd47f8
Added from uip-0.9/uip/uip_arp.[ch]
18 years ago
Michael Brown
417e896f0a
Remove htons(); it is provided elsewhere in Etherboot
18 years ago
Michael Brown
1c7c24f21f
Basic, functional-but-extremely-pessimal versions (taken from
uip-0.9/unix/uip_arch.c).
18 years ago
Michael Brown
c5a9c38606
Terminate cleanly on SIGINT or SIGHUP
18 years ago
Michael Brown
e072baeb8c
Use libpcap API to send/receive packets.
Include automatic filtering (based on source MAC address of first
transmitted packet).
Proven to successfully elicit a ping response from a remote host.
18 years ago
Michael Brown
4485df516c
Basic structure in place: can daemonise, listen on a Unix domain
socket, accept new connections, open a network interface using libpcap
and forward (all) traffic.
18 years ago
Michael Brown
013ee958a1
These can come back when someone wants to support them
18 years ago
Michael Brown
7be870acd3
More purging
18 years ago
Michael Brown
b2909e547d
They can come back when they have someone to support them.
18 years ago
Michael Brown
a2b15fd1fe
GPXE code cleanup and purge.
18 years ago
Michael Brown
cdf1511d3e
Prefix semantics have changed
18 years ago
Michael Brown
0e611719d2
Add uip on HEAD; it's safe to build, since nothing links against it at the
moment.
18 years ago
Michael Brown
d08ce741a4
Build in gpxe
18 years ago
Michael Brown
0806436d99
Remove accidental duplicate arising from merge
18 years ago
Michael Brown
239579efcf
Build under gpxe
18 years ago
Michael Brown
d0777627c6
Back out duplication arising from the merge
18 years ago
Michael Brown
c4f25b637c
Fix to compile under gpxe
18 years ago
Michael Brown
5d28bae0f1
Fix up building with gcc 4.0.1 / gas 2.16.91
19 years ago
George Baum
bd9d4e0bd7
Reorder functions to match the linux driver.
No code changes apart from commenting one unused function out.
19 years ago
Timothy Legge
4184dc5c6a
Fix COMET TxUnderrun issue
19 years ago
Geert Stappers
9dc2515d7e
no need for depending on build library ("blib")
when make is invoked without arguments
19 years ago
Michael Brown
df9cbc23cc
Added documentation and ASSERT() statements.
19 years ago
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.)
19 years ago
Michael Brown
65a731bed5
Reduce BACKOFF_LIMIT to a hopefully more reasonable value.
19 years ago
Michael Brown
7d8adc25bc
In multicast operation, the client still has a unicast local port.
19 years ago
Michael Brown
cbed5ed9ad
Always include code for sending multicast packets.
19 years ago
Timothy Legge
95967adc8c
Jan Kiszka provided a patch for the smc9000 for missing phy-setup
19 years ago
Michael Brown
f242f56a73
Rewritten to use the functions in tftpcore.c.
Works with a non-multicast TFTP server (i.e. the fallback path works
fine).
19 years ago
Michael Brown
be7897523d
IGMP protocol now uses the generic background protocol mechanism.
19 years ago