Michael Brown
dde1c5ad18
Moved include/in.h to include/gpxe/in.h, so that it can be included by
...
prototester.
2006-03-23 16:45:01 +00:00
Michael Brown
708bbc43bc
Merge from Etherboot 5.4
2006-03-16 17:40:55 +00:00
Michael Brown
9c8a69b673
Merge from Etherboot 5.4
2006-03-16 17:31:29 +00:00
Michael Brown
5d28bae0f1
Fix up building with gcc 4.0.1 / gas 2.16.91
2006-01-17 01:47:41 +00:00
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.)
2005-06-06 11:42:14 +00:00
Michael Brown
7d8adc25bc
In multicast operation, the client still has a unicast local port.
2005-06-02 10:15:40 +00:00
Michael Brown
be7897523d
IGMP protocol now uses the generic background protocol mechanism.
2005-06-01 22:22:14 +00:00
Michael Brown
85a380530d
Add generic mechanism for background protocols (e.g. ARP, IGMP)
2005-06-01 22:18:38 +00:00
Michael Brown
fa17bf0917
Make rfc2090 multicast option optional
2005-06-01 19:10:25 +00:00
Michael Brown
55771a462d
Re-order functions for more logical documentation
2005-06-01 18:02:24 +00:00
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.
2005-06-01 18:00:01 +00:00
Michael Brown
378e922f8f
Remove prototypes for obsolete functions
2005-06-01 17:57:27 +00:00
Michael Brown
53a4436d94
TFTP upgraded to use a core function library (in tftpcore.c) which will be
...
shared between TFTP, TFTM and MTFTP protocols.
2005-06-01 13:13:05 +00:00
Michael Brown
0b048e9cfb
Now have enough functions to implement a standard TFTP client in around 50
...
lines of code.
2005-06-01 11:01:59 +00:00
Michael Brown
92f1a5c677
Documented the purpose of the two timeout fields in
...
s_PXENV_TFTP_READ_FILE.
2005-05-27 16:47:16 +00:00
Michael Brown
6e74dc3460
Added implementation note on IP routing.
...
Added reason for min value of 512 on s_PXENV_TFTP_OPEN::PacketSize.
2005-05-27 11:36:36 +00:00
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).
2005-05-24 17:00:55 +00:00
Michael Brown
0e494614b5
Some versions of doxygen seem to object to "@ret None" or similar.
2005-05-24 00:11:25 +00:00
Michael Brown
7b423c0988
Fixes for gcc >= 3.2 from Georg Baum
2005-05-23 23:47:54 +00:00
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).
2005-05-23 23:32:56 +00:00
Michael Brown
8becf0f65f
Rearranging PXE header files
2005-05-23 22:45:48 +00:00
Michael Brown
fd49648a35
Separated out the Etherboot-specific parts of the old pxe.h header.
2005-05-23 16:37:05 +00:00
Michael Brown
b9c7468dea
Added PXENV+ and !PXE structures, and the loader API.
2005-05-23 16:26:49 +00:00
Michael Brown
442ba12b9e
Finished documenting the UNDI API.
2005-05-23 13:57:23 +00:00
Michael Brown
cd9742e054
Documented up to PXENV_UNDI_CLOSE
2005-05-23 11:00:09 +00:00
Michael Brown
3503941582
Documented Preboot, TFTP and UDP data structures
2005-05-23 10:02:44 +00:00
Michael Brown
eb40aac2b4
Documented PXENV_GET_CACHED_INFO structures
2005-05-22 23:00:56 +00:00
Michael Brown
acb9d42cf8
Add UDP parameter structures
2005-05-22 02:57:50 +00:00
Michael Brown
22b7f0ec74
Define PXE types in terms of other PXE types where possible
2005-05-22 02:57:14 +00:00
Michael Brown
1e0a5d8b30
Worked out a sensible doxygen grouping
2005-05-22 00:59:09 +00:00
Michael Brown
29733a153d
Added all API codes and basic prototypes.
2005-05-21 17:19:57 +00:00
Michael Brown
8355ce8a32
Documented the basic PXE data types
2005-05-21 15:15:10 +00:00
Michael Brown
a96759f9c8
Use "#var" rather than "@c var" for doxygen.
2005-05-20 10:27:02 +00:00
Michael Brown
bf32da87f0
Doxygenation
2005-05-20 10:24:11 +00:00
Michael Brown
7a4b45d3b0
Don't include etherboot.h; we get a circular dependency
2005-05-19 23:21:18 +00:00
Michael Brown
a9fabe7546
Doxygenation
2005-05-19 19:00:21 +00:00
Michael Brown
8bc4551f5e
API docs to .h
2005-05-19 18:41:54 +00:00
Michael Brown
2ddbac101e
Move API docs to buffer.h, implementation to buffer.c.
2005-05-19 18:32:04 +00:00
Michael Brown
4e87543c74
Synced across updates from Etherboot 5.4 tree
2005-05-19 16:47:19 +00:00
Michael Brown
c18ea5282c
Doxygenated
2005-05-19 12:53:59 +00:00
Michael Brown
e911a74724
More documentation
2005-05-19 11:54:41 +00:00
Michael Brown
a135024626
load_buffer is now handled via load_buffer.h
2005-05-19 00:19:07 +00:00
Michael Brown
0e921cdd9e
More doxygen docs
2005-05-18 15:28:33 +00:00
Michael Brown
484d6e7d24
__attribute__ does not need to be treated as a variadic macro, since
...
it is always used as __attribute__((...)). Since variadic macros seem
to confuse poor doxygen, change it to a single-valued macro.
2005-05-18 15:02:23 +00:00
Michael Brown
75a90cb143
Hide __attribute__ from doxygen
2005-05-18 14:42:02 +00:00
Michael Brown
0eb4d9973c
Add EBADIMG, EIMGRET, ETIMEDOUT and EINVAL
2005-05-18 14:41:53 +00:00
Michael Brown
f888bd589d
doxygen doesn't allow us to do the --include compiler.h trick...
2005-05-18 14:26:35 +00:00
Michael Brown
7f1901860d
Error numbers moved to errno.h
2005-05-18 09:55:38 +00:00
Michael Brown
ff9104e029
Added errno, strerror and the "%m" printf metacharacter. These will allow
...
us to return proper PXE status codes, while simultaneously allowing for
more consistent error reporting (complete with verbose error messages as a
build-time option).
2005-05-17 18:26:41 +00:00
Michael Brown
40c7b127aa
Added const to fill_buffer
2005-05-17 14:34:46 +00:00
Michael Brown
9c832a6a69
First version
2005-05-17 13:41:00 +00:00
Michael Brown
7205f0846c
Heap function prototypes moved to heap.h
2005-05-17 13:39:27 +00:00
Michael Brown
0571dcdb05
Added print_images() and autoload().
2005-05-17 13:38:24 +00:00
Michael Brown
3ce6504f14
Use shared symbols for heap_ptr and heap_end
2005-05-17 13:35:43 +00:00
Michael Brown
3bbf5f28a3
Use __unused instead of __used for static data structures.
...
Remove compiler.h defines from osdep.h
2005-05-17 12:16:28 +00:00
Michael Brown
c695c75b01
First version
2005-05-13 13:29:15 +00:00
Michael Brown
5c8ea0b93a
Add realloc, since the load buffer code requires it.
2005-05-13 13:20:16 +00:00
Michael Brown
f0d048bf91
Added ASSERT() macro
2005-05-13 10:18:21 +00:00
Michael Brown
94d512b979
Added old allot/forget calls for backwards compatibility.
2005-05-12 16:38:07 +00:00
Michael Brown
eff4fa5a04
Merged the unaligned and aligned heap APIs and simplified the code.
2005-05-12 16:34:57 +00:00
Michael Brown
f649a4d0fd
Add INIT_LOADBUF
2005-05-09 18:04:20 +00:00
Michael Brown
73429d6da1
Make "struct buffer"s reusable between sessions.
2005-05-09 18:03:44 +00:00
Michael Brown
58ee2c4b2e
First versions
2005-05-09 18:01:50 +00:00
Michael Brown
0fe74493f4
Protocols now load data into a buffer; they don't execute it.
2005-05-09 14:27:29 +00:00
Michael Brown
bab2924e89
Return -1 to indicate buffer overflow. Allow buffer fill level to be read
...
easily from struct buffer.
2005-05-09 14:26:10 +00:00
Michael Brown
e75b7480d0
Modified to use physical addresses, and to not assume that we can directly
...
refer to data outside of our data or stack segments.
2005-05-09 13:24:01 +00:00
Michael Brown
ef05a27f25
Start of an implementation using doubly-linked lists and virtual
...
addresses. This will have to be reworked to use physical addresses thanks
to the PXE spec.
2005-05-09 10:11:11 +00:00
Michael Brown
68e90c75b6
Removed spurious semicolon
2005-05-03 09:02:24 +00:00
Michael Brown
60b82eb5cd
Moved definition of __shared into compiler.h
2005-05-02 16:21:52 +00:00
Michael Brown
734d2e9f2d
First version
2005-05-02 14:43:15 +00:00
Michael Brown
a918abc036
Split TCP code out into proto/tcp.c
2005-05-02 12:07:47 +00:00
Michael Brown
cc980d1c94
Moved DOWNLOAD_PROTO_XXX options to config.h
2005-05-02 11:13:47 +00:00
Michael Brown
d5bf9e71ea
http.h obsoleted (no content)
2005-05-01 23:58:20 +00:00
Michael Brown
f14af3d95c
Protocol structure can now specify the default port.
2005-05-01 23:57:09 +00:00
Michael Brown
63482e4fe9
Made parse_url do more of the processing, to avoid duplicating parts of
...
nic.c in http.c
2005-05-01 19:10:04 +00:00
Michael Brown
1fdbbaa237
Removed obsolete prototypes.
2005-05-01 15:14:22 +00:00
Michael Brown
d727e144c1
nfs prototypes no longer required.
2005-05-01 15:07:55 +00:00
Michael Brown
52b3c8babe
Add INIT_RPC
2005-05-01 15:07:35 +00:00
Michael Brown
bcedad4708
Add debugging for CNAME records.
...
Allow routines to be called by nmb.c
2005-05-01 11:30:26 +00:00
Michael Brown
3ae7a3d1f0
NMB packets are so similar to DNS packets; we may as well add NMB as a
...
name resolution method.
2005-05-01 11:10:17 +00:00
Michael Brown
89f4fe4a8a
Do not include etherboot.h
2005-05-01 10:40:12 +00:00
Michael Brown
3b59bf559c
ttl is a uint32_t
2005-04-30 19:38:31 +00:00
Michael Brown
78cdb1da8b
DNS resolver rewritten, moved to proto/dns.c
2005-04-30 14:50:33 +00:00
Michael Brown
5f45f14b5f
tftp moved to separate file.
2005-04-30 14:46:18 +00:00
Michael Brown
06634dc386
Protocols get passed a pointer to the filename portion as well as just the
...
URL.
2005-04-30 14:45:51 +00:00
Michael Brown
5bec933c66
tftp prototypes moved to tftp.h
2005-04-30 14:45:33 +00:00
Michael Brown
1644238813
Added debugging.
2005-04-30 14:41:37 +00:00
Michael Brown
332b40b986
loadkernel no longer exists; it is now download_url and lives in nic.c.
2005-04-30 13:51:18 +00:00
Michael Brown
55ae308821
Protocols also take a pointer to a sockaddr_in.
2005-04-30 13:50:01 +00:00
Michael Brown
00b78f73a4
Use struct in_addr rather than just "in_addr".
...
Add struct sockaddr_in.
2005-04-30 13:49:28 +00:00
Michael Brown
70567c51a2
Moved strtoul prototype into stdlib.h for consistency
2005-04-30 13:48:48 +00:00
Michael Brown
65dc273d78
First version
2005-04-29 13:26:31 +00:00
Michael Brown
e4131ebb84
First version
2005-04-29 13:17:25 +00:00
Michael Brown
754cef922d
First version
2005-04-28 13:47:36 +00:00
Michael Brown
282b6f1a1a
isa.c uses the new table infrastructure.
2005-04-27 12:24:38 +00:00
Michael Brown
f37e0a06d7
dev.c uses the new tables infrastructure.
2005-04-27 12:20:54 +00:00
Michael Brown
d2d4978f4f
Use PREFIX_OBJECT to give the init_fn table variables meaningful names.
2005-04-27 12:08:52 +00:00
Michael Brown
1ddcdb0524
Added PREFIX_OBJECT() function to be able to easily prepend any string
...
to the object name in order to generate e.g. per-file variables.
2005-04-27 11:59:37 +00:00
Michael Brown
3e5bf5fb06
console.c uses the generic table mechanism
2005-04-27 11:38:43 +00:00
Michael Brown
241f426a85
Use new generic tables infrastructure
2005-04-27 11:25:21 +00:00