Michael Brown
cab3f4502b
Correct option number for DHCP_DNS_SERVERS, and add it to the request
list.
18 years ago
Michael Brown
b4e559d7e2
Added basic profiling support
18 years ago
Nikhil Chandru Rao
d1d334b8e1
IP6 support
18 years ago
Michael Brown
cf2178f885
Added debug strings.
18 years ago
Michael Brown
97439cb6eb
Kill off poll_interruptions(); it is lethal when we're acting as a PXE
stack or INT 13 emulator etc.
18 years ago
Michael Brown
7029fb8eff
Add string configuration type
18 years ago
Michael Brown
db46972349
Added basic infrastructure for manipulating settings.
18 years ago
Derek Pryor
25ea34a8d7
New HTTP protocol and test code
18 years ago
Michael Brown
bc1a37eacb
Added missing packed attribute
18 years ago
Michael Brown
35559ad87c
Added description for a basic ACPI table, taken from
include/linux/acpi.h.
18 years ago
Michael Brown
c3a4f3c5da
Towards an RFC2988-compliant timer.
18 years ago
Marty Connor
ee9ae8130a
Remove _PROTOCOL macros for gcc 3.2 compatibility
18 years ago
Michael Brown
75d26d884a
Added pxe_netdev; a slight hack for now, but will need to be done
properly for the PXE UNDI API anyway.
18 years ago
Michael Brown
e9561aafc0
Derive xid dynamically from the netdev, so that we can call
create_dhcp_packet() from pxe_preboot.c, after the dhcp_session is long
gone.
Expose the functions required by pxe_preboot.c
18 years ago
Marty Connor
41af7457a8
Merge of Fredrik Hultin command_line
18 years ago
Michael Brown
a3d508b648
Clarified packet ownership transfer between a few functions.
Added a large number of missing calls to free_pkb(). In the case of UDP,
no received packets were ever freed, which lead to memory exhaustion
remarkably quickly once pxelinux started up.
In general, any function with _rx() in its name which accepts a pk_buff
*must* either call free_pkb() or pass the pkb to another _rx() function
(e.g. the next layer up the stack). Since the UDP (and TCP) layers don't
pass packet buffers up to the higher-layer protocols (the
"applications"), they must free the packet buffer after calling the
application's newdata() method.
18 years ago
Michael Brown
d1a123b1f4
Added TFTP test code (currently just dumps file to console).
18 years ago
Michael Brown
3611cb17b7
Initial (untested) implementation of TFTP over the new UDP API.
18 years ago
Michael Brown
eda79ec32b
The prototype for strcasecmp() is apparently in strings.h.
18 years ago
Michael Brown
72cd29f13c
Added some TFTP definitions for use with the new UDP API.
18 years ago
Michael Brown
d12383f1d3
Update to match the daft capitalisation in the actual PXE spec
18 years ago
Michael Brown
68e33224ef
gcc3 compatibility: removed ARP_NET_PROTOCOL().
18 years ago
Nikhil Chandru Rao
d2bdf81505
Removed some bugs in TCP
18 years ago
Nikhil Chandru Rao
cb42e573a0
Added retransmissions to TCP
18 years ago
Michael Brown
ecdcdea1af
Remove unused attribute from __table macros; the tables are no longer
static since otherwise gcc4 optimises them away completely. Also, it
really *is* an error if the table start and end are unused, so they
certainly shouldn't be marked with attribute unused.
18 years ago
Michael Brown
eb24eece0e
Convert some trivial functions to static inlines.
18 years ago
Michael Brown
ffe0e24249
Make the UDP senddata() methods return a status code.
udp_connect() now follows the standard BSD sockets semantics and simply
sets the default address for outgoing packets; it doesn't filter incoming
packets.
18 years ago
Michael Brown
a0a872f7f1
Updated PXE UDP implementation to use the new Etherboot UDP API.
Updated PXE API dispatcher to use copy_{to,from}_user, and moved to
arch/i386 since the implementation is quite architecture-dependent.
(The individual PXE API calls can be largely
architecture-independent.)
18 years ago
Michael Brown
e24a6cb525
Moved the basic struct sockaddr out of in.h.
18 years ago
Michael Brown
467e9627cc
Added features that will be required for PXE UDP support.
Introduced struct sockaddr_tcpip, to simplify code that deals with
both IPv4 and IPv6 addresses.
Reorganised parts of tcpip.c and udp.c.
18 years ago
Nikhil Chandru Rao
9225f4edac
TCP support
18 years ago
Nikhil Chandru Rao
c24546c70b
Minor changes to the network layer rx() functions
18 years ago
Michael Brown
beadd82208
Remove unused functions.
18 years ago
Michael Brown
1ebb68e49a
Renamed trans_{rx,tx}() to tcpip_{rx,tx}(), since they are specific to
the TCP/IP protocol suite (rather than being general transport-layer
functions).
18 years ago
Michael Brown
3a0e293123
Renamed tcpip_if.[ch] to tcpip.[ch]
18 years ago
Michael Brown
b26806cf18
Add dhcp_snprintf() for extracting DHCP string options.
18 years ago
Michael Brown
7ca8bcd98c
Print out the lease time, just to show how easy it is.
18 years ago
Michael Brown
00a1f000b1
Added dhcp_ipv4_option() and friends.
Added test code to configure the interface for IPv4 after DHCP.
18 years ago
Michael Brown
7ca1bb0fbe
Now successfully negotiates the whole DHCPDISCOVER/OFFER/REQUEST/ACK
cycle. :)
18 years ago
Michael Brown
2c0eb6eb1d
Correct TCP/IP checksum generation.
18 years ago
Nikhil Chandru Rao
13dbf5494d
Minor edits
18 years ago
Michael Brown
224529d8dd
Now capable of sending what, to me, looks like a valid DHCPDISCOVER
(apart from the bad UDP checksum).
18 years ago
Michael Brown
6858b14a34
Add pkb_available()
18 years ago
Michael Brown
6d9d48537e
Added some debug messages and DHCP test code
18 years ago
Michael Brown
317b962b65
Proof of concept: transmit a single DHCPDISCOVER and dump out any
parsed DHCP responses.
18 years ago
Michael Brown
76070cd226
Added missing prototype
18 years ago
Michael Brown
bf0cdd42cf
Add some DHCP options that we are likely to use
18 years ago
Michael Brown
e0668ad8df
Correct typo
18 years ago
Nikhil Chandru Rao
ab577e1a3a
The following edits were made: \
1. Updated UDP send data code\
2. Corrected internet checksum\
3. Moved udp_buffer() and udp_buflen() to udp.c from udp.h
18 years ago
Michael Brown
b8d619e822
Added macros for generating static DHCP options
18 years ago