Michael Brown
							
						 
						
							
								3611cb17b7
								
							 
						 
						
							Initial (untested) implementation of TFTP over the new UDP API. 
							
							
						 
						19 lat temu  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								21493646c2
								
							 
						 
						
							Moved to net/tcp/iscsi.c. 
							
							
						 
						19 lat temu  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								8a229a16f6
								
							 
						 
						
							(Redoing check-in lost by SourceForge's failure.) 
							
							 
							
Moved to net/ 
							
							
						 
						19 lat temu  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								9e1becaf8a
								
							 
						 
						
							Merge TCP aborted(), timedout() and closed() methods into a single 
							
							 
							closed() method with a reason code. 
							
							
						 
						19 lat temu  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								7af478b30d
								
							 
						 
						
							Make tcp_connect() void; it will eventually have no failure case. 
							
							
						 
						19 lat temu  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								352bf1bda2
								
							 
						 
						
							Move init.h to gpxe/init.h. 
							
							
						 
						19 lat temu  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								5fe31f1014
								
							 
						 
						
							Give uIP a static IP address for proof-of-concept testing 
							
							
						 
						19 lat temu  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								a81f96998b
								
							 
						 
						
							Added missing headers required for compilation in Etherboot. 
							
							
						 
						19 lat temu  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								26749951dc
								
							 
						 
						
							We have our own ARP layer now. 
							
							
						 
						19 lat temu  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								832e86246b
								
							 
						 
						
							gcc is rather over-aggressive about optimising out static data structures 
							
							 
							even when __atribute__ (( unused )) is correctly set... 
							
							
						 
						19 lat temu  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								824d6ffa7f
								
							 
						 
						
							Header rearrangement. 
							
							 
							
I want to get to the point where any header in include/ reflects a
standard user-level header (e.g. a POSIX header), while everything that's
specific to gPXE lives in include/gpxe/.  Headers that reflect a Linux
header (e.g. if_ether.h) should also be in include/gpxe/, with the same
name as the Linux header and, preferably, the same names used for the
definitions. 
							
							
						 
						19 lat temu  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								53f78346bf
								
							 
						 
						
							Network API now allows for multiple network devices (although the 
							
							 
							implementation allows for only one, and does so without compromising on
the efficiency of static allocation).
Link-layer protocols are cleanly separated from the device drivers.
Network-layer protocols are cleanly separated from individual network
devices.
Link-layer and network-layer protocols are cleanly separated from each
other. 
							
							
						 
						19 lat temu  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								fdc2ee79db
								
							 
						 
						
							Network API now allows for multiple network devices (although the 
							
							 
							implementation allows for only one, and does so without compromising on
the efficiency of static allocation).
Link-layer protocols are cleanly separated from the device drivers.
Network-layer protocols are cleanly separated from individual network
devices.
Link-layer and network-layer protocols are cleanly separated from each
other. 
							
							
						 
						19 lat temu  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								0d97f0d482
								
							 
						 
						
							Obviate uip_init(); our bss is zeroed at startup already. 
							
							
						 
						19 lat temu  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								6446767258
								
							 
						 
						
							First draft of iSCSI protocol support.  Is capable of retrieving disk 
							
							 
							blocks. 
							
							
						 
						19 lat temu  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								c8a7133e9f
								
							 
						 
						
							Added tcp_buffer, to give applications a zero-cost place to build data to 
							
							 
							be transmitted. 
							
							
						 
						19 lat temu  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								988bb50979
								
							 
						 
						
							Added set_netmask() and set_gateway() 
							
							
						 
						19 lat temu  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								ee058362fa
								
							 
						 
						
							We don't need to know anything about ARP 
							
							
						 
						19 lat temu  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								b44332eb7d
								
							 
						 
						
							Split non-TCP portions of the stack out into ip.[ch]. 
							
							 
							
Added set_ipaddr(). 
							
							
						 
						19 lat temu  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								7e61f38799
								
							 
						 
						
							Moved "hello world" protocol implementation out of prototester.c and into 
							
							 
							the first standalong uIP-based protocol module. 
							
							
						 
						19 lat temu  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								a4a0244aa3
								
							 
						 
						
							Moved uIP wrapper out of prototester.c and into proto/tcp.c. 
							
							
						 
						19 lat temu  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								05b284399e
								
							 
						 
						
							Moved old tcp.h to old_tcp.h, to avoid name clash with new (uIP-based) 
							
							 
							tcp.h. 
							
							
						 
						19 lat temu  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								531371efa2
								
							 
						 
						
							Removed to make way for the uIP-based tcp.c. 
							
							
						 
						19 lat temu  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								dde1c5ad18
								
							 
						 
						
							Moved include/in.h to include/gpxe/in.h, so that it can be included by 
							
							 
							prototester. 
							
							
						 
						19 lat temu  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								b2c94b32fc
								
							 
						 
						
							Make the application state a void *. 
							
							
						 
						19 lat temu  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								bb37bd47f8
								
							 
						 
						
							Added from uip-0.9/uip/uip_arp.[ch] 
							
							
						 
						19 lat temu  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								417e896f0a
								
							 
						 
						
							Remove htons(); it is provided elsewhere in Etherboot 
							
							
						 
						19 lat temu  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								1c7c24f21f
								
							 
						 
						
							Basic, functional-but-extremely-pessimal versions (taken from 
							
							 
							uip-0.9/unix/uip_arch.c). 
							
							
						 
						19 lat temu  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								0e611719d2
								
							 
						 
						
							Add uip on HEAD; it's safe to build, since nothing links against it at the 
							
							 
							moment. 
							
							
						 
						19 lat temu  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								7d8adc25bc
								
							 
						 
						
							In multicast operation, the client still has a unicast local port. 
							
							
						 
						20 lat temu  
					 
				
					
						
							
								   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). 
							
							
						 
						20 lat temu  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								be7897523d
								
							 
						 
						
							IGMP protocol now uses the generic background protocol mechanism. 
							
							
						 
						20 lat temu  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								e0cf144218
								
							 
						 
						
							IGMP functions separated out from nic.c 
							
							
						 
						20 lat temu  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								698e87277f
								
							 
						 
						
							Don't try to fetch another packet once we've reached EOF. 
							
							
						 
						20 lat temu  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								fa17bf0917
								
							 
						 
						
							Make rfc2090 multicast option optional 
							
							
						 
						20 lat temu  
					 
				
					
						
							
								   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. 
							
							
						 
						20 lat temu  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								c8d6c4864f
								
							 
						 
						
							Doxygenation 
							
							
						 
						20 lat temu  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								53a4436d94
								
							 
						 
						
							TFTP upgraded to use a core function library (in tftpcore.c) which will be 
							
							 
							shared between TFTP, TFTM and MTFTP protocols. 
							
							
						 
						20 lat temu  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								0b048e9cfb
								
							 
						 
						
							Now have enough functions to implement a standard TFTP client in around 50 
							
							 
							lines of code. 
							
							
						 
						20 lat temu  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								7d63b39e3d
								
							 
						 
						
							Add tftp_ack() and tftp_error() 
							
							
						 
						20 lat temu  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								8ae966720d
								
							 
						 
						
							First version 
							
							
						 
						20 lat temu  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								7b423c0988
								
							 
						 
						
							Fixes for gcc >= 3.2 from Georg Baum 
							
							
						 
						20 lat temu  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								75a5374d79
								
							 
						 
						
							Quickly hacked to use a buffer rather than a processor. 
							
							 
							These don't yet take advantage of the buffer functionality. 
							
							
						 
						20 lat temu  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								5fce946de4
								
							 
						 
						
							Update to use buffer rather than processor 
							
							
						 
						20 lat temu  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								5ae60bd95d
								
							 
						 
						
							Updated to use buffer rather than processor 
							
							
						 
						20 lat temu  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								a5f2942587
								
							 
						 
						
							Add twiddle() so that progress is visible. 
							
							
						 
						20 lat temu  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								0fe74493f4
								
							 
						 
						
							Protocols now load data into a buffer; they don't execute it. 
							
							
						 
						20 lat temu  
					 
				
					
						
							
								   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. 
							
							
						 
						20 lat temu  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								a918abc036
								
							 
						 
						
							Split TCP code out into proto/tcp.c 
							
							
						 
						20 lat temu  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								f14af3d95c
								
							 
						 
						
							Protocol structure can now specify the default port. 
							
							
						 
						20 lat temu