Robert James Kaes 
							
						 
					 
					
						
						
						
						
							
						
						
							15870a9582 
							
						 
					 
					
						
						
							
							Added appropriate casts (void*) casts to allow the code to compile  
						
						... 
						
						
						
						cleanly using a C++ compiler.
Changed the servers_waiting variable to an unsigned int, since the
number of servers waiting can never be negative, and added an assert()
to ensure this invariant. 
						
					 
					
						2003-07-31 23:44:52 +00:00 
						 
				 
			
				
					
						
							
							
								Robert James Kaes 
							
						 
					 
					
						
						
						
						
							
						
						
							bc77dfb492 
							
						 
					 
					
						
						
							
							(debugging_realloc): Removed the assert for the NULL pointer, since  
						
						... 
						
						
						
						realloc() can take a NULL pointer, as defined by the realloc() man
page.
Fixed the cast in both safefree() macros to compile cleaning using a
C++ compiler. 
						
					 
					
						2003-07-31 23:42:51 +00:00 
						 
				 
			
				
					
						
							
							
								Robert James Kaes 
							
						 
					 
					
						
						
						
						
							
						
						
							5a2af49e58 
							
						 
					 
					
						
						
							
							Fixed the cast in both safefree() macros to compile cleaning using a  
						
						... 
						
						
						
						C++ compiler. 
						
					 
					
						2003-07-31 23:41:26 +00:00 
						 
				 
			
				
					
						
							
							
								Robert James Kaes 
							
						 
					 
					
						
						
						
						
							
						
						
							8a6a94db0a 
							
						 
					 
					
						
						
							
							# Fixed a preprocessor test (misspelled __cplusplus)  
						
						
						
					 
					
						2003-07-31 23:40:16 +00:00 
						 
				 
			
				
					
						
							
							
								Robert James Kaes 
							
						 
					 
					
						
						
						
						
							
						
						
							6aaa863432 
							
						 
					 
					
						
						
							
							Added appropriate casts from (void*) so that the code will compile  
						
						... 
						
						
						
						cleanly with a C++ compiler.  (Tested using GCC 3.3) 
						
					 
					
						2003-07-31 23:38:28 +00:00 
						 
				 
			
				
					
						
							
							
								Robert James Kaes 
							
						 
					 
					
						
						
						
						
							
						
						
							ab02f47a29 
							
						 
					 
					
						
						
							
							# Bumped up the version number because of a maintenance release (to fix  
						
						... 
						
						
						
						a problem with the scanner.c file. 
						
					 
					
						2003-07-24 15:13:00 +00:00 
						 
				 
			
				
					
						
							
							
								Robert James Kaes 
							
						 
					 
					
						
						
						
						
							
						
						
							7115a37f23 
							
						 
					 
					
						
						
							
							# Updated ChangeLog  
						
						
						
					 
					
						2003-07-14 17:45:11 +00:00 
						 
				 
			
				
					
						
							
							
								Robert James Kaes 
							
						 
					 
					
						
						
						
						
							
						
						
							a748265b50 
							
						 
					 
					
						
						
							
							# Bumped up version number.  
						
						
						
					 
					
						2003-07-14 17:43:26 +00:00 
						 
				 
			
				
					
						
							
							
								Robert James Kaes 
							
						 
					 
					
						
						
						
						
							
						
						
							7c96935552 
							
						 
					 
					
						
						
							
							(indicate_http_error): Added calls to va_end() before leaving the  
						
						... 
						
						
						
						function. 
						
					 
					
						2003-07-14 17:42:43 +00:00 
						 
				 
			
				
					
						
							
							
								Robert James Kaes 
							
						 
					 
					
						
						
						
						
							
						
						
							09aa3d6409 
							
						 
					 
					
						
						
							
							# Updated the ChangeLog  
						
						
						
					 
					
						2003-06-26 18:33:13 +00:00 
						 
				 
			
				
					
						
							
							
								Robert James Kaes 
							
						 
					 
					
						
						
						
						
							
						
						
							717be92385 
							
						 
					 
					
						
						
							
							# Bumped up the version number and made sure to only add the debugging  
						
						... 
						
						
						
						flags to flex if it really is flex. 
						
					 
					
						2003-06-26 18:31:16 +00:00 
						 
				 
			
				
					
						
							
							
								Robert James Kaes 
							
						 
					 
					
						
						
						
						
							
						
						
							a4cd3eb9ec 
							
						 
					 
					
						
						
							
							# Removed the debugging information.  
						
						
						
					 
					
						2003-06-26 18:26:10 +00:00 
						 
				 
			
				
					
						
							
							
								Robert James Kaes 
							
						 
					 
					
						
						
						
						
							
						
						
							a8798e999b 
							
						 
					 
					
						
						
							
							# Added debugging flags for the flex scanner.  
						
						
						
					 
					
						2003-06-26 18:23:01 +00:00 
						 
				 
			
				
					
						
							
							
								Robert James Kaes 
							
						 
					 
					
						
						
						
						
							
						
						
							1cb032a934 
							
						 
					 
					
						
						
							
							(upstream_add): Rewrote the function to actually handle the various  
						
						... 
						
						
						
						types of upstream configurations correctly.  Hopefully, the code is
also a little clearer in it's implementation. 
						
					 
					
						2003-06-26 18:19:57 +00:00 
						 
				 
			
				
					
						
							
							
								Robert James Kaes 
							
						 
					 
					
						
						
						
						
							
						
						
							988f243286 
							
						 
					 
					
						
						
							
							# Removed the STRING_ADDRESS token since it was conflicting with the  
						
						... 
						
						
						
						IDENTIFIER directive and also the keyword directives. 
						
					 
					
						2003-06-26 18:17:09 +00:00 
						 
				 
			
				
					
						
							
							
								Robert James Kaes 
							
						 
					 
					
						
						
						
						
							
						
						
							db142b6e23 
							
						 
					 
					
						
						
							
							Modified the patterns to allow the new upstream directives to work as  
						
						... 
						
						
						
						defined in the tinyproxy.conf documentation. 
						
					 
					
						2003-06-26 18:16:09 +00:00 
						 
				 
			
				
					
						
							
							
								Robert James Kaes 
							
						 
					 
					
						
						
						
						
							
						
						
							2736a19518 
							
						 
					 
					
						
						
							
							(debugging_free): Rather than assert on a NULL pointer, log the NULL  
						
						... 
						
						
						
						pointer and return. 
						
					 
					
						2003-06-26 18:14:13 +00:00 
						 
				 
			
				
					
						
							
							
								Robert James Kaes 
							
						 
					 
					
						
						
						
						
							
						
						
							93ac7d8824 
							
						 
					 
					
						
						
							
							# Bumped up the version number.  
						
						
						
					 
					
						2003-06-25 18:23:11 +00:00 
						 
				 
			
				
					
						
							
							
								Robert James Kaes 
							
						 
					 
					
						
						
						
						
							
						
						
							61a6ca82db 
							
						 
					 
					
						
						
							
							# Updated the changelog  
						
						
						
					 
					
						2003-06-25 18:22:37 +00:00 
						 
				 
			
				
					
						
							
							
								Robert James Kaes 
							
						 
					 
					
						
						
						
						
							
						
						
							ddcac5ae09 
							
						 
					 
					
						
						
							
							Added a test to define INADDR_NONE if it's not present.  For example,  
						
						... 
						
						
						
						SunOS (solaris 2.8) does not include this define.  [Thank to Ben
Hartshorne for pointing this out.] 
						
					 
					
						2003-06-25 18:20:22 +00:00 
						 
				 
			
				
					
						
							
							
								Robert James Kaes 
							
						 
					 
					
						
						
						
						
							
						
						
							d2f5f5c564 
							
						 
					 
					
						
						
							
							Changed the calls to "ps" and "grep" to use a more portable syntax.  
						
						
						
					 
					
						2003-06-25 18:18:19 +00:00 
						 
				 
			
				
					
						
							
							
								Robert James Kaes 
							
						 
					 
					
						
						
						
						
							
						
						
							66fc80e922 
							
						 
					 
					
						
						
							
							# Bumped up the version number.  
						
						
						
					 
					
						2003-06-23 21:15:04 +00:00 
						 
				 
			
				
					
						
							
							
								Robert James Kaes 
							
						 
					 
					
						
						
						
						
							
						
						
							8b8d3b1477 
							
						 
					 
					
						
						
							
							# Added a bit more description to describe where to look for the error  
						
						... 
						
						
						
						HTML files.  In the future the installation script should modify the
  tinyproxy.conf file. 
						
					 
					
						2003-06-23 21:14:32 +00:00 
						 
				 
			
				
					
						
							
							
								Robert James Kaes 
							
						 
					 
					
						
						
						
						
							
						
						
							5ba1325ef5 
							
						 
					 
					
						
						
							
							# Updated ChangeLog  
						
						
						
					 
					
						2003-06-20 18:01:26 +00:00 
						 
				 
			
				
					
						
							
							
								Robert James Kaes 
							
						 
					 
					
						
						
						
						
							
						
						
							4c9141aac6 
							
						 
					 
					
						
						
							
							Removed the "ViaHeader" directive and replaced it with the  
						
						... 
						
						
						
						"ViaProxyName" directive.  The "Via" HTTP header is _required_ by the
HTTP spec, so the code has been changed to always send the header.
However, including the proxy's host name could be considered a
security threat, so the "ViaProxyName" directive is used to set the
token sent in the "Via" header.  If the directive is not enabled the
proxy's host name will be used. 
						
					 
					
						2003-06-20 17:02:13 +00:00 
						 
				 
			
				
					
						
							
							
								Robert James Kaes 
							
						 
					 
					
						
						
						
						
							
						
						
							0d3962f1f0 
							
						 
					 
					
						
						
							
							# Removed the HTML error suggestion since it's been implemented with  
						
						... 
						
						
						
						Steven Young's patches.  Added a suggestion for user authentication. 
						
					 
					
						2003-06-19 16:45:58 +00:00 
						 
				 
			
				
					
						
							
							
								Robert James Kaes 
							
						 
					 
					
						
						
						
						
							
						
						
							b081019d5a 
							
						 
					 
					
						
						
							
							(connect_to_upstream): Fixed an off-by-one error in the snprintf()  
						
						... 
						
						
						
						call used to build the URL for the upstream proxy. [Patch suggested by
David T. Pierso] 
						
					 
					
						2003-06-06 16:14:50 +00:00 
						 
				 
			
				
					
						
							
							
								Robert James Kaes 
							
						 
					 
					
						
						
						
						
							
						
						
							c2240df616 
							
						 
					 
					
						
						
							
							Remove the -O2 optimization if debugging is enabled.  Also, remove the  
						
						... 
						
						
						
						-g option if the code does _not_ have debugging enabled. 
						
					 
					
						2003-06-02 21:57:14 +00:00 
						 
				 
			
				
					
						
							
							
								Robert James Kaes 
							
						 
					 
					
						
						
						
						
							
						
						
							7f8e4647f7 
							
						 
					 
					
						
						
							
							Included additional examples of how to configure the upstream proxy  
						
						... 
						
						
						
						support for more selective proxying. 
						
					 
					
						2003-06-02 21:56:00 +00:00 
						 
				 
			
				
					
						
							
							
								Robert James Kaes 
							
						 
					 
					
						
						
						
						
							
						
						
							91e082671a 
							
						 
					 
					
						
						
							
							(upstream_get):  
						
						... 
						
						
						
						(upstream_add): Added support to allow ip addresses and networks to be
used when matching an upstream proxy directive.
[Code by Peter da Silva] 
						
					 
					
						2003-06-02 21:55:14 +00:00 
						 
				 
			
				
					
						
							
							
								Robert James Kaes 
							
						 
					 
					
						
						
						
						
							
						
						
							ea50171a95 
							
						 
					 
					
						
						
							
							Changed the safefree() macro to make it safe to use a conditional  
						
						... 
						
						
						
						statement, and also safe to use with a rvalue that has a side
effect.  [Bug fix recommended by Peter da Silva] 
						
					 
					
						2003-05-31 23:04:15 +00:00 
						 
				 
			
				
					
						
							
							
								Robert James Kaes 
							
						 
					 
					
						
						
						
						
							
						
						
							77ca1c8ce0 
							
						 
					 
					
						
						
							
							# Changed all the for calls to use the != test rather than < test.  
						
						... 
						
						
						
						The change was recommended in the C/C++ User Journal magazine. 
						
					 
					
						2003-05-31 23:02:21 +00:00 
						 
				 
			
				
					
						
							
							
								Robert James Kaes 
							
						 
					 
					
						
						
						
						
							
						
						
							86c9d69086 
							
						 
					 
					
						
						
							
							# Updated ChangeLog  
						
						
						
					 
					
						2003-05-30 16:27:57 +00:00 
						 
				 
			
				
					
						
							
							
								Robert James Kaes 
							
						 
					 
					
						
						
						
						
							
						
						
							983a76ecef 
							
						 
					 
					
						
						
							
							# Bumped up the version number  
						
						
						
					 
					
						2003-05-30 16:25:41 +00:00 
						 
				 
			
				
					
						
							
							
								Robert James Kaes 
							
						 
					 
					
						
						
						
						
							
						
						
							af5e1e29f6 
							
						 
					 
					
						
						
							
							# Changed the calls to vector_getentry() to use the new calling  
						
						... 
						
						
						
						convention. 
						
					 
					
						2003-05-30 16:22:30 +00:00 
						 
				 
			
				
					
						
							
							
								Robert James Kaes 
							
						 
					 
					
						
						
						
						
							
						
						
							1955dcd47b 
							
						 
					 
					
						
						
							
							(vector_getentry): Changed the API to return the data pointer and have  
						
						... 
						
						
						
						the length returned in a argument variable pointer.  This should be a
more natural way of using the function. 
						
					 
					
						2003-05-30 16:21:48 +00:00 
						 
				 
			
				
					
						
							
							
								Robert James Kaes 
							
						 
					 
					
						
						
						
						
							
						
						
							c3eaebd1c5 
							
						 
					 
					
						
						
							
							# Added a vector_prepend() function and recoded the old vector_insert()  
						
						... 
						
						
						
						to be a general "insert" for both vector_append() and vector_prepend() 
						
					 
					
						2003-05-29 21:07:22 +00:00 
						 
				 
			
				
					
						
							
							
								Robert James Kaes 
							
						 
					 
					
						
						
						
						
							
						
						
							8ab278998f 
							
						 
					 
					
						
						
							
							# Renamed the vector_insert() calls to vector_append()  
						
						
						
					 
					
						2003-05-29 20:48:25 +00:00 
						 
				 
			
				
					
						
							
							
								Robert James Kaes 
							
						 
					 
					
						
						
						
						
							
						
						
							42f9f37afc 
							
						 
					 
					
						
						
							
							(vector_append): Renamed the vector_insert() function to more  
						
						... 
						
						
						
						accurately indicate that entries are appended to the end of the
vector. 
						
					 
					
						2003-05-29 20:47:52 +00:00 
						 
				 
			
				
					
						
							
							
								Robert James Kaes 
							
						 
					 
					
						
						
						
						
							
						
						
							4a377a712d 
							
						 
					 
					
						
						
							
							Improved the upstream proxy support by making the upstream proxy  
						
						... 
						
						
						
						server configurable based on the destination host.  [Code written by
Peter da Silva] 
						
					 
					
						2003-05-29 19:44:00 +00:00 
						 
				 
			
				
					
						
							
							
								Robert James Kaes 
							
						 
					 
					
						
						
						
						
							
						
						
							2e9f27769d 
							
						 
					 
					
						
						
							
							Added support for installing the HTML error files used by tinyproxy.  
						
						
						
					 
					
						2003-05-10 23:16:45 +00:00 
						 
				 
			
				
					
						
							
							
								Robert James Kaes 
							
						 
					 
					
						
						
						
						
							
						
						
							5e1303ecd1 
							
						 
					 
					
						
						
							
							(establish_http_connection): If the port being requested is not a  
						
						... 
						
						
						
						standard HTTP port (80 or 443) append the port string to the host
header; otherwise, leave the host string with only the host's domain
name.
Replaced all occurrences of constant 80 and 443 with defines HTTP_PORT
and HTTP_PORT_SSL. 
						
					 
					
						2003-05-05 16:46:05 +00:00 
						 
				 
			
				
					
						
							
							
								Robert James Kaes 
							
						 
					 
					
						
						
						
						
							
						
						
							ac88af1f71 
							
						 
					 
					
						
						
							
							Fixed a bug that would kill a child process because of an invalid  
						
						... 
						
						
						
						safefree() call.  Basically, destroy_conn() was trying to free memory
not allocated by malloc.  [Fix by David T. Pierson] 
						
					 
					
						2003-05-04 04:35:10 +00:00 
						 
				 
			
				
					
						
							
							
								Robert James Kaes 
							
						 
					 
					
						
						
						
						
							
						
						
							65115c75c8 
							
						 
					 
					
						
						
							
							# Updated change log  
						
						
						
					 
					
						2003-04-16 18:14:16 +00:00 
						 
				 
			
				
					
						
							
							
								Robert James Kaes 
							
						 
					 
					
						
						
						
						
							
						
						
							4a66257e65 
							
						 
					 
					
						
						
							
							# Updated version number  
						
						
						
					 
					
						2003-04-16 18:12:45 +00:00 
						 
				 
			
				
					
						
							
							
								Robert James Kaes 
							
						 
					 
					
						
						
						
						
							
						
						
							c94bfa8223 
							
						 
					 
					
						
						
							
							(build_url): Rebuild the URL from the component pieces.  This function  
						
						... 
						
						
						
						is used by the transparent proxy code.  [Anatole Shaw]
(process_request): Fixed up the transparent proxy code so that
filtering can be done on the whole URL.  [Anatole Shaw]
(pull_client_data): Added a bug fix for Internet Explorer (IE).  IE
will leave an extra CR and LF after the data in an HTTP POST.  The new
code will eat the extra bytes if they're present.  Thanks to Yannick
Koehler for finding the bug and offering an explanation as to why it
was happening.
Changed all calls of connptr->remote_content_length to
connptr->content_length.server 
						
					 
					
						2003-04-16 18:11:58 +00:00 
						 
				 
			
				
					
						
							
							
								Robert James Kaes 
							
						 
					 
					
						
						
						
						
							
						
						
							648e8f1438 
							
						 
					 
					
						
						
							
							# Changed it again to this time use the TINYPROXY_DEBUG environment  
						
						... 
						
						
						
						variable to determine whether to wait for a connection from GDB. 
						
					 
					
						2003-04-16 18:04:58 +00:00 
						 
				 
			
				
					
						
							
							
								Robert James Kaes 
							
						 
					 
					
						
						
						
						
							
						
						
							4a942bc59a 
							
						 
					 
					
						
						
							
							# The programmer is now made to _explicitly_ enable the GDB support in  
						
						... 
						
						
						
						the child handling function. 
						
					 
					
						2003-04-16 16:39:23 +00:00 
						 
				 
			
				
					
						
							
							
								Robert James Kaes 
							
						 
					 
					
						
						
						
						
							
						
						
							6ff4192069 
							
						 
					 
					
						
						
							
							Removed the remote_content_length field in the "conn" structure and  
						
						... 
						
						
						
						replaced it with a smaller structure containing both the remote/server
and the local/client content-length fields if they're present in the
HTTP response headers. 
						
					 
					
						2003-04-16 16:37:59 +00:00 
						 
				 
			
				
					
						
							
							
								Robert James Kaes 
							
						 
					 
					
						
						
						
						
							
						
						
							acece1ee67 
							
						 
					 
					
						
						
							
							# Updated change log (should have done this _before_ the tagging of course.)  
						
						
						
					 
					
						2003-04-01 16:56:41 +00:00