people/lynusvaz/gpxe.git
16 years agoUse the heap functions to allocate a load buffer.
Michael Brown [Fri, 13 May 2005 13:30:51 +0000 (13:30 +0000)]
Use the heap functions to allocate a load buffer.

16 years agoFirst version
Michael Brown [Fri, 13 May 2005 13:29:15 +0000 (13:29 +0000)]
First version

16 years agoAdd realloc, since the load buffer code requires it.
Michael Brown [Fri, 13 May 2005 13:20:16 +0000 (13:20 +0000)]
Add realloc, since the load buffer code requires it.

16 years agoAdded debugging
Michael Brown [Fri, 13 May 2005 11:24:02 +0000 (11:24 +0000)]
Added debugging

16 years agoTidied up init_heap()
Michael Brown [Fri, 13 May 2005 11:16:14 +0000 (11:16 +0000)]
Tidied up init_heap()

16 years agoAdded ASSERT() macro
Michael Brown [Fri, 13 May 2005 10:18:21 +0000 (10:18 +0000)]
Added ASSERT() macro

16 years agoAdded old allot/forget calls for backwards compatibility.
Michael Brown [Thu, 12 May 2005 16:38:07 +0000 (16:38 +0000)]
Added old allot/forget calls for backwards compatibility.

16 years agoMerged the unaligned and aligned heap APIs and simplified the code.
Michael Brown [Thu, 12 May 2005 16:34:57 +0000 (16:34 +0000)]
Merged the unaligned and aligned heap APIs and simplified the code.

16 years agoUse the global load_buffer, and the boot_image function.
Michael Brown [Mon, 9 May 2005 18:10:04 +0000 (18:10 +0000)]
Use the global load_buffer, and the boot_image function.

16 years agoAdd INIT_LOADBUF
Michael Brown [Mon, 9 May 2005 18:04:20 +0000 (18:04 +0000)]
Add INIT_LOADBUF

16 years agoMake "struct buffer"s reusable between sessions.
Michael Brown [Mon, 9 May 2005 18:03:44 +0000 (18:03 +0000)]
Make "struct buffer"s reusable between sessions.

16 years agoInclude string.h, because we need to define copy_{to,from}_phys
Michael Brown [Mon, 9 May 2005 18:03:14 +0000 (18:03 +0000)]
Include string.h, because we need to define copy_{to,from}_phys

16 years agoFirst version
Michael Brown [Mon, 9 May 2005 18:02:22 +0000 (18:02 +0000)]
First version

16 years agoFirst versions
Michael Brown [Mon, 9 May 2005 18:01:50 +0000 (18:01 +0000)]
First versions

16 years agoProtocols now load data into a buffer; they don't execute it.
Michael Brown [Mon, 9 May 2005 14:27:29 +0000 (14:27 +0000)]
Protocols now load data into a buffer; they don't execute it.

16 years agooff_t should be signed.
Michael Brown [Mon, 9 May 2005 14:26:25 +0000 (14:26 +0000)]
off_t should be signed.

16 years agoReturn -1 to indicate buffer overflow. Allow buffer fill level to be read
Michael Brown [Mon, 9 May 2005 14:26:10 +0000 (14:26 +0000)]
Return -1 to indicate buffer overflow.  Allow buffer fill level to be read
easily from struct buffer.

16 years agoAdded debugging
Michael Brown [Mon, 9 May 2005 13:47:04 +0000 (13:47 +0000)]
Added debugging

16 years agoAdded explanatory comment.
Michael Brown [Mon, 9 May 2005 13:25:43 +0000 (13:25 +0000)]
Added explanatory comment.

16 years agoModified to use physical addresses, and to not assume that we can directly
Michael Brown [Mon, 9 May 2005 13:24:01 +0000 (13:24 +0000)]
Modified to use physical addresses, and to not assume that we can directly
refer to data outside of our data or stack segments.

16 years agoAdd off_t and physaddr_t, and the copy_{to,from}_phys helper routines.
Michael Brown [Mon, 9 May 2005 13:21:56 +0000 (13:21 +0000)]
Add off_t and physaddr_t, and the copy_{to,from}_phys helper routines.

16 years agoAdd memcpy
Michael Brown [Mon, 9 May 2005 12:48:00 +0000 (12:48 +0000)]
Add memcpy

16 years agoStart of an implementation using doubly-linked lists and virtual
Michael Brown [Mon, 9 May 2005 10:11:11 +0000 (10:11 +0000)]
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.

16 years agoMake vga_font const to avoid warning about large symbol
Michael Brown [Tue, 3 May 2005 13:17:08 +0000 (13:17 +0000)]
Make vga_font const to avoid warning about large symbol

16 years agoMake PCI ID tables const so as not to trigger a warning about a large
Michael Brown [Tue, 3 May 2005 12:36:06 +0000 (12:36 +0000)]
Make PCI ID tables const so as not to trigger a warning about a large
symbol.

16 years agoAllow read-only symbols to be large
Michael Brown [Tue, 3 May 2005 12:34:52 +0000 (12:34 +0000)]
Allow read-only symbols to be large

16 years agoMove tulip_private structure into shared data.
Michael Brown [Tue, 3 May 2005 12:29:32 +0000 (12:29 +0000)]
Move tulip_private structure into shared data.

16 years agoReduce large symbol warning threshold, now that most of the really
Michael Brown [Tue, 3 May 2005 12:24:52 +0000 (12:24 +0000)]
Reduce large symbol warning threshold, now that most of the really
large symbols have been fixed.

16 years agoD'oh
Michael Brown [Tue, 3 May 2005 12:18:31 +0000 (12:18 +0000)]
D'oh

16 years agoUse __shared
Michael Brown [Tue, 3 May 2005 12:16:49 +0000 (12:16 +0000)]
Use __shared

16 years agoAdded example of how to use __shared.
Michael Brown [Tue, 3 May 2005 12:14:29 +0000 (12:14 +0000)]
Added example of how to use __shared.
Moved transmit before poll, since typically transmit will be implemented first.

16 years ago#if 0 out the whole file for now; it cannot be linked because the base
Michael Brown [Tue, 3 May 2005 11:56:33 +0000 (11:56 +0000)]
#if 0 out the whole file for now; it cannot be linked because the base
 memory interface has changed.

16 years agoRe-add the "etherboot.%" all-drivers image.
Michael Brown [Tue, 3 May 2005 11:51:19 +0000 (11:51 +0000)]
Re-add the "etherboot.%" all-drivers image.

16 years agoSymbol fixups
Michael Brown [Tue, 3 May 2005 11:29:33 +0000 (11:29 +0000)]
Symbol fixups

16 years agoArbitrary alignment is now available.
Michael Brown [Tue, 3 May 2005 09:56:57 +0000 (09:56 +0000)]
Arbitrary alignment is now available.
Use shared symbols.
Correct other symbol violations.

16 years agoRemoved spurious semicolon
Michael Brown [Tue, 3 May 2005 09:02:24 +0000 (09:02 +0000)]
Removed spurious semicolon

16 years agoUse shared symbols
Michael Brown [Mon, 2 May 2005 17:45:24 +0000 (17:45 +0000)]
Use shared symbols

16 years agoUse shared symbols to save space
Michael Brown [Mon, 2 May 2005 16:35:44 +0000 (16:35 +0000)]
Use shared symbols to save space

16 years agoMoved definition of __shared into compiler.h
Michael Brown [Mon, 2 May 2005 16:21:52 +0000 (16:21 +0000)]
Moved definition of __shared into compiler.h

16 years agoCorrect symbol violations reported by "make symcheck"
Michael Brown [Mon, 2 May 2005 15:22:32 +0000 (15:22 +0000)]
Correct symbol violations reported by "make symcheck"

16 years agoReport on misuses of shared symbols, and excessively large static symbols.
Michael Brown [Mon, 2 May 2005 15:21:12 +0000 (15:21 +0000)]
Report on misuses of shared symbols, and excessively large static symbols.

16 years agoFirst version
Michael Brown [Mon, 2 May 2005 14:43:15 +0000 (14:43 +0000)]
First version

16 years agoTweaked to read more information (including symbol size) from blib.a
Michael Brown [Mon, 2 May 2005 13:49:54 +0000 (13:49 +0000)]
Tweaked to read more information (including symbol size) from blib.a

16 years agoAdd DOWNLOAD_PROTO_XXX options.
Michael Brown [Mon, 2 May 2005 12:45:23 +0000 (12:45 +0000)]
Add DOWNLOAD_PROTO_XXX options.

16 years agoUpdated to use new URL parser and new protocol API.
Michael Brown [Mon, 2 May 2005 12:10:14 +0000 (12:10 +0000)]
Updated to use new URL parser and new protocol API.

Sort of works; the HTTP stuff is fine but the TCP code seems to be
broken; it doesn't ACK the packets and just hands us the retransmitted
packets instead.

16 years agoSplit TCP code out into proto/tcp.c
Michael Brown [Mon, 2 May 2005 12:07:47 +0000 (12:07 +0000)]
Split TCP code out into proto/tcp.c

16 years agoMoved DOWNLOAD_PROTO_XXX options to config.h
Michael Brown [Mon, 2 May 2005 11:13:47 +0000 (11:13 +0000)]
Moved DOWNLOAD_PROTO_XXX options to config.h

16 years agoMore URL parsing moved into url.c
Michael Brown [Sun, 1 May 2005 23:58:45 +0000 (23:58 +0000)]
More URL parsing moved into url.c

16 years agohttp.h obsoleted (no content)
Michael Brown [Sun, 1 May 2005 23:58:20 +0000 (23:58 +0000)]
http.h obsoleted (no content)

16 years agoProtocol structure can now specify the default port.
Michael Brown [Sun, 1 May 2005 23:57:09 +0000 (23:57 +0000)]
Protocol structure can now specify the default port.

16 years agoMade parse_url do more of the processing, to avoid duplicating parts of
Michael Brown [Sun, 1 May 2005 19:10:04 +0000 (19:10 +0000)]
Made parse_url do more of the processing, to avoid duplicating parts of
nic.c in http.c

16 years agoProtocol names are x-slam and x-tftm
Michael Brown [Sun, 1 May 2005 15:50:08 +0000 (15:50 +0000)]
Protocol names are x-slam and x-tftm

16 years agoUpdated to protocol API
Michael Brown [Sun, 1 May 2005 15:36:39 +0000 (15:36 +0000)]
Updated to protocol API

16 years agoUpdated to protocol API
Michael Brown [Sun, 1 May 2005 15:26:44 +0000 (15:26 +0000)]
Updated to protocol API

16 years agoRemoved obsolete prototypes.
Michael Brown [Sun, 1 May 2005 15:14:22 +0000 (15:14 +0000)]
Removed obsolete prototypes.

16 years agoUpdated to new protocol API, made to compile.
Michael Brown [Sun, 1 May 2005 15:08:39 +0000 (15:08 +0000)]
Updated to new protocol API, made to compile.

16 years agoumountall() handled by nfs.c's reset function
Michael Brown [Sun, 1 May 2005 15:08:19 +0000 (15:08 +0000)]
umountall() handled by nfs.c's reset function

16 years agonfs prototypes no longer required.
Michael Brown [Sun, 1 May 2005 15:07:55 +0000 (15:07 +0000)]
nfs prototypes no longer required.

16 years agoAdd INIT_RPC
Michael Brown [Sun, 1 May 2005 15:07:35 +0000 (15:07 +0000)]
Add INIT_RPC

16 years agoMoved protocols to proto/
Michael Brown [Sun, 1 May 2005 14:04:11 +0000 (14:04 +0000)]
Moved protocols to proto/

16 years agoAbort immediately if no nameserver is present.
Michael Brown [Sun, 1 May 2005 13:59:34 +0000 (13:59 +0000)]
Abort immediately if no nameserver is present.

16 years agoAdd debugging for CNAME records.
Michael Brown [Sun, 1 May 2005 11:30:26 +0000 (11:30 +0000)]
Add debugging for CNAME records.
Allow routines to be called by nmb.c

16 years agoNMB packets are so similar to DNS packets; we may as well add NMB as a
Michael Brown [Sun, 1 May 2005 11:10:17 +0000 (11:10 +0000)]
NMB packets are so similar to DNS packets; we may as well add NMB as a
name resolution method.

16 years agoAdd NMB_RESOLVER
Michael Brown [Sun, 1 May 2005 10:58:49 +0000 (10:58 +0000)]
Add NMB_RESOLVER

16 years agoDo not include etherboot.h
Michael Brown [Sun, 1 May 2005 10:40:12 +0000 (10:40 +0000)]
Do not include etherboot.h

16 years agoAlways request DNS server. DHCP handling will be generalised in future.
Michael Brown [Sat, 30 Apr 2005 19:39:50 +0000 (19:39 +0000)]
Always request DNS server.  DHCP handling will be generalised in future.

16 years agoStraightforward A record resolution now known working.
Michael Brown [Sat, 30 Apr 2005 19:38:51 +0000 (19:38 +0000)]
Straightforward A record resolution now known working.

16 years agottl is a uint32_t
Michael Brown [Sat, 30 Apr 2005 19:38:31 +0000 (19:38 +0000)]
ttl is a uint32_t

16 years agoDNS resolver rewritten, moved to proto/dns.c
Michael Brown [Sat, 30 Apr 2005 14:50:33 +0000 (14:50 +0000)]
DNS resolver rewritten, moved to proto/dns.c

16 years ago"dns_resolver" changed to "dns"
Michael Brown [Sat, 30 Apr 2005 14:49:41 +0000 (14:49 +0000)]
"dns_resolver" changed to "dns"

16 years agotftp functions moved to proto/tftp.c
Michael Brown [Sat, 30 Apr 2005 14:46:49 +0000 (14:46 +0000)]
tftp functions moved to proto/tftp.c

16 years agotftp moved to separate file.
Michael Brown [Sat, 30 Apr 2005 14:46:18 +0000 (14:46 +0000)]
tftp moved to separate file.

16 years agoProtocols get passed a pointer to the filename portion as well as just the
Michael Brown [Sat, 30 Apr 2005 14:45:51 +0000 (14:45 +0000)]
Protocols get passed a pointer to the filename portion as well as just the
URL.

16 years agotftp prototypes moved to tftp.h
Michael Brown [Sat, 30 Apr 2005 14:45:33 +0000 (14:45 +0000)]
tftp prototypes moved to tftp.h

16 years agoAdded "proto" directory
Michael Brown [Sat, 30 Apr 2005 14:45:09 +0000 (14:45 +0000)]
Added "proto" directory

16 years agoAdded debugging.
Michael Brown [Sat, 30 Apr 2005 14:41:37 +0000 (14:41 +0000)]
Added debugging.

16 years agoAdded DNS resolver configuration option.
Michael Brown [Sat, 30 Apr 2005 14:39:21 +0000 (14:39 +0000)]
Added DNS resolver configuration option.

16 years agoTFTP API changed.
Michael Brown [Sat, 30 Apr 2005 14:27:17 +0000 (14:27 +0000)]
TFTP API changed.

16 years agoloadkernel renamed to download_url, substantially restructured, and moved
Michael Brown [Sat, 30 Apr 2005 13:52:27 +0000 (13:52 +0000)]
loadkernel renamed to download_url, substantially restructured, and moved
to nic.c

16 years agoloadkernel renamed to download_url and moved to nic.c
Michael Brown [Sat, 30 Apr 2005 13:51:49 +0000 (13:51 +0000)]
loadkernel renamed to download_url and moved to nic.c

16 years agoloadkernel no longer exists; it is now download_url and lives in nic.c.
Michael Brown [Sat, 30 Apr 2005 13:51:18 +0000 (13:51 +0000)]
loadkernel no longer exists; it is now download_url and lives in nic.c.

16 years agoinet_aton doesn't overwrite the IP address unless it is valid.
Michael Brown [Sat, 30 Apr 2005 13:50:34 +0000 (13:50 +0000)]
inet_aton doesn't overwrite the IP address unless it is valid.

16 years agoProtocols also take a pointer to a sockaddr_in.
Michael Brown [Sat, 30 Apr 2005 13:50:01 +0000 (13:50 +0000)]
Protocols also take a pointer to a sockaddr_in.

16 years agoUse struct in_addr rather than just "in_addr".
Michael Brown [Sat, 30 Apr 2005 13:49:28 +0000 (13:49 +0000)]
Use struct in_addr rather than just "in_addr".
Add struct sockaddr_in.

16 years agoMoved strtoul prototype into stdlib.h for consistency
Michael Brown [Sat, 30 Apr 2005 13:48:48 +0000 (13:48 +0000)]
Moved strtoul prototype into stdlib.h for consistency

16 years agoparse_url() is void.
Michael Brown [Sat, 30 Apr 2005 13:24:26 +0000 (13:24 +0000)]
parse_url() is void.

16 years agoFirst version
Michael Brown [Fri, 29 Apr 2005 13:26:31 +0000 (13:26 +0000)]
First version

16 years agoFirst version
Michael Brown [Fri, 29 Apr 2005 13:17:25 +0000 (13:17 +0000)]
First version

16 years agoFirst version
Michael Brown [Thu, 28 Apr 2005 13:47:36 +0000 (13:47 +0000)]
First version

16 years agoMuch, much smaller. :)
Michael Brown [Thu, 28 Apr 2005 13:20:02 +0000 (13:20 +0000)]
Much, much smaller.  :)

16 years agoFirst version: far too large (408 bytes!!!)
Michael Brown [Thu, 28 Apr 2005 12:12:11 +0000 (12:12 +0000)]
First version: far too large (408 bytes!!!)

16 years agoisa.c uses the new table infrastructure.
Michael Brown [Wed, 27 Apr 2005 12:24:38 +0000 (12:24 +0000)]
isa.c uses the new table infrastructure.

16 years agodev.c uses the new tables infrastructure.
Michael Brown [Wed, 27 Apr 2005 12:20:54 +0000 (12:20 +0000)]
dev.c uses the new tables infrastructure.

16 years agoMissing include
Michael Brown [Wed, 27 Apr 2005 12:17:09 +0000 (12:17 +0000)]
Missing include

16 years agoPost-relocation functions use the generic table mechanism.
Michael Brown [Wed, 27 Apr 2005 12:10:24 +0000 (12:10 +0000)]
Post-relocation functions use the generic table mechanism.

16 years agoUse PREFIX_OBJECT to give the init_fn table variables meaningful names.
Michael Brown [Wed, 27 Apr 2005 12:08:52 +0000 (12:08 +0000)]
Use PREFIX_OBJECT to give the init_fn table variables meaningful names.

16 years agoSpecial handling for symbols of the form "xxx_end", to make table end
Michael Brown [Wed, 27 Apr 2005 12:08:13 +0000 (12:08 +0000)]
Special handling for symbols of the form "xxx_end", to make table end
markers appear before the symbols that immediately follow the table.

16 years agoAdded PREFIX_OBJECT() function to be able to easily prepend any string
Michael Brown [Wed, 27 Apr 2005 11:59:37 +0000 (11:59 +0000)]
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.

16 years agoconsole.c uses the generic table mechanism
Michael Brown [Wed, 27 Apr 2005 11:38:43 +0000 (11:38 +0000)]
console.c uses the generic table mechanism

16 years agoLinker no longer provides start and end symbols for each table; these
Michael Brown [Wed, 27 Apr 2005 11:27:38 +0000 (11:27 +0000)]
Linker no longer provides start and end symbols for each table; these
markers are now static labels within the objects that refer to them.