Michael Brown
9c832a6a69
First version
2005-05-17 13:41:00 +00:00
Michael Brown
510de6cb8c
Restructured to allow per-object image formats
2005-05-17 13:40:31 +00:00
Michael Brown
7205f0846c
Heap function prototypes moved to heap.h
2005-05-17 13:39:27 +00:00
Michael Brown
a5f2942587
Add twiddle() so that progress is visible.
2005-05-17 13:39:00 +00:00
Michael Brown
0571dcdb05
Added print_images() and autoload().
2005-05-17 13:38:24 +00:00
Michael Brown
9968c9513e
Moved find_segment into elf_loader.c
2005-05-17 13:37:29 +00:00
Michael Brown
9a413cfea1
Moved os_regs into start32.S
2005-05-17 13:37:01 +00:00
Michael Brown
a76b9c3f19
Added debug messages
2005-05-17 13:36:12 +00:00
Michael Brown
3ce6504f14
Use shared symbols for heap_ptr and heap_end
2005-05-17 13:35:43 +00:00
Michael Brown
479fb900a1
Added copy_phys_to_phys
2005-05-17 13:34:57 +00:00
Michael Brown
4f27994980
Added "image" directory
2005-05-17 13:34:25 +00:00
Michael Brown
6e8f29d3cb
Image formats moved into the new config system
2005-05-17 13:33:49 +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
301b2d40f0
Use the heap functions to allocate a load buffer.
2005-05-13 13:30:51 +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
59a1662978
Added debugging
2005-05-13 11:24:02 +00:00
Michael Brown
42250e9b1a
Tidied up init_heap()
2005-05-13 11:16:14 +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
a5a14dc05d
Use the global load_buffer, and the boot_image function.
2005-05-09 18:10:04 +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
b94def2088
Include string.h, because we need to define copy_{to,from}_phys
2005-05-09 18:03:14 +00:00
Michael Brown
9fc97f8513
First version
2005-05-09 18:02:22 +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
116f17f605
off_t should be signed.
2005-05-09 14:26:25 +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
a89651f3bb
Added debugging
2005-05-09 13:47:04 +00:00
Michael Brown
b2869ed6b8
Added explanatory comment.
2005-05-09 13:25:43 +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
e3f2aa7b4d
Add off_t and physaddr_t, and the copy_{to,from}_phys helper routines.
2005-05-09 13:21:56 +00:00
Michael Brown
dc0aa58fb2
Add memcpy
2005-05-09 12:48:00 +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
462234f373
Make vga_font const to avoid warning about large symbol
2005-05-03 13:17:08 +00:00
Michael Brown
e91c65bea1
Make PCI ID tables const so as not to trigger a warning about a large
...
symbol.
2005-05-03 12:36:06 +00:00
Michael Brown
cc73bba7ba
Allow read-only symbols to be large
2005-05-03 12:34:52 +00:00
Michael Brown
24c0498cbc
Move tulip_private structure into shared data.
2005-05-03 12:29:32 +00:00
Michael Brown
7df2857248
Reduce large symbol warning threshold, now that most of the really
...
large symbols have been fixed.
2005-05-03 12:24:52 +00:00
Michael Brown
42eb786ced
D'oh
2005-05-03 12:18:31 +00:00
Michael Brown
4bcd42699b
Use __shared
2005-05-03 12:16:49 +00:00
Michael Brown
303ff86c75
Added example of how to use __shared.
...
Moved transmit before poll, since typically transmit will be implemented first.
2005-05-03 12:14:29 +00:00
Michael Brown
ff8e46f2f3
#if 0 out the whole file for now; it cannot be linked because the base
...
memory interface has changed.
2005-05-03 11:56:33 +00:00
Michael Brown
0174310f38
Re-add the "etherboot.%" all-drivers image.
2005-05-03 11:51:19 +00:00
Michael Brown
c112f12c5b
Symbol fixups
2005-05-03 11:29:33 +00:00
Michael Brown
3c2851e563
Arbitrary alignment is now available.
...
Use shared symbols.
Correct other symbol violations.
2005-05-03 09:56:57 +00:00
Michael Brown
68e90c75b6
Removed spurious semicolon
2005-05-03 09:02:24 +00:00
Michael Brown
ee15c47cb5
Use shared symbols
2005-05-02 17:45:24 +00:00
Michael Brown
3267ca5568
Use shared symbols to save space
2005-05-02 16:35:44 +00:00
Michael Brown
60b82eb5cd
Moved definition of __shared into compiler.h
2005-05-02 16:21:52 +00:00
Michael Brown
a1f50f27b0
Correct symbol violations reported by "make symcheck"
2005-05-02 15:22:32 +00:00
Michael Brown
35ab3bf808
Report on misuses of shared symbols, and excessively large static symbols.
2005-05-02 15:21:12 +00:00
Michael Brown
734d2e9f2d
First version
2005-05-02 14:43:15 +00:00
Michael Brown
88baf7a383
Tweaked to read more information (including symbol size) from blib.a
2005-05-02 13:49:54 +00:00
Michael Brown
48e40e933f
Add DOWNLOAD_PROTO_XXX options.
2005-05-02 12:45:23 +00:00
Michael Brown
4ed412f1c2
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.
2005-05-02 12:10:14 +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
f9f1d2c84c
More URL parsing moved into url.c
2005-05-01 23:58:45 +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
17bb10479d
Protocol names are x-slam and x-tftm
2005-05-01 15:50:08 +00:00
Michael Brown
6afffc0771
Updated to protocol API
2005-05-01 15:36:39 +00:00
Michael Brown
5c2e5557f0
Updated to protocol API
2005-05-01 15:26:44 +00:00
Michael Brown
1fdbbaa237
Removed obsolete prototypes.
2005-05-01 15:14:22 +00:00
Michael Brown
3af0af65a0
Updated to new protocol API, made to compile.
2005-05-01 15:08:39 +00:00
Michael Brown
2227a711fd
umountall() handled by nfs.c's reset function
2005-05-01 15:08:19 +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
85d9eae44e
Moved protocols to proto/
2005-05-01 14:04:11 +00:00
Michael Brown
0cfcd91558
Abort immediately if no nameserver is present.
2005-05-01 13:59:34 +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
e1d6f3a8ac
Add NMB_RESOLVER
2005-05-01 10:58:49 +00:00
Michael Brown
89f4fe4a8a
Do not include etherboot.h
2005-05-01 10:40:12 +00:00
Michael Brown
552f33c663
Always request DNS server. DHCP handling will be generalised in future.
2005-04-30 19:39:50 +00:00
Michael Brown
138c987738
Straightforward A record resolution now known working.
2005-04-30 19:38:51 +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
d817e60d21
"dns_resolver" changed to "dns"
2005-04-30 14:49:41 +00:00
Michael Brown
167c26c92b
tftp functions moved to proto/tftp.c
2005-04-30 14:46:49 +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
95946c6f56
Added "proto" directory
2005-04-30 14:45:09 +00:00
Michael Brown
1644238813
Added debugging.
2005-04-30 14:41:37 +00:00
Michael Brown
6cd0fa5807
Added DNS resolver configuration option.
2005-04-30 14:39:21 +00:00
Michael Brown
0780ecf1b6
TFTP API changed.
2005-04-30 14:27:17 +00:00
Michael Brown
56825df041
loadkernel renamed to download_url, substantially restructured, and moved
...
to nic.c
2005-04-30 13:52:27 +00:00
Michael Brown
e68378fd62
loadkernel renamed to download_url and moved to nic.c
2005-04-30 13:51:49 +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
903ddd9878
inet_aton doesn't overwrite the IP address unless it is valid.
2005-04-30 13:50:34 +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
044b20385b
parse_url() is void.
2005-04-30 13:24:26 +00:00
Michael Brown
65dc273d78
First version
2005-04-29 13:26:31 +00:00