Commit Graph

  • e50d0c4072 (child_make): Reset the various signals to the default signal handler so that the children can be properly destroyed. Robert James Kaes 2002-06-27 16:29:21 +0000
  • 52f5c926a8 This commit was manufactured by cvs2svn to create tag 'rel_1_5_1rc2'. 1.5.1rc2 cvs2svn 2002-06-18 20:10:24 +0000
  • 0a1885deb0 Updated the ChangeLog Robert James Kaes 2002-06-18 20:10:23 +0000
  • cae69592be Updated the version number. Robert James Kaes 2002-06-18 20:08:36 +0000
  • f0d7992765 (log_message): Changed the code so that the log is opened, written, and closed whenever a message is submitted. This allows the log file to be moved away, for example a rotating the log, and yet still have the information written to the correct file name by all the children. Robert James Kaes 2002-06-15 17:37:11 +0000
  • ac5d67c11a Renamed the "log_rotation_request" boolean to "received_sighup". (main): Removed the log file creation code because it has been moved into the log.c file. Also, removed the explicit fclose() for the log file since it will be close when the program has exited. Robert James Kaes 2002-06-15 17:35:03 +0000
  • 8a9db93977 (child_main_loop): Moved the filter re-initiation code into the loop. This code is activated whenever the SIGHUP signal is received. Robert James Kaes 2002-06-15 17:31:31 +0000
  • fb688a2077 Removed the "logf" FILE structure from the config structure, and also renamed the "log_rotation_request" boolean to "received_sighup". Robert James Kaes 2002-06-15 17:29:59 +0000
  • 2f84b170a6 Removed the rotate_log_files() function since I'm moving to an Apache style where the _user_ needs to move the log file themselves, and tinyproxy will continue to write to the original name. This allows more flexibility for users to determine their own log rotation scheme. Robert James Kaes 2002-06-15 17:28:19 +0000
  • 1dc3715f0b This commit was manufactured by cvs2svn to create tag 'rel_1_5_1rc1'. 1.5.1rc1 cvs2svn 2002-06-07 19:10:06 +0000
  • 1f2fe53c4b Added myself to the copyright since I've made a bunch of changes to this file. Robert James Kaes 2002-06-07 19:10:05 +0000
  • 7261ff45cf This commit was manufactured by cvs2svn to create tag 'rel_1_5_1pre6'. 1.5.1pre6 cvs2svn 2002-06-07 18:51:35 +0000
  • 1c97f7224e Added the --enable-transparent-proxy switch to the list of supported switches. Robert James Kaes 2002-06-07 18:51:34 +0000
  • 5a94b8e90d Updated the ChangeLog Robert James Kaes 2002-06-07 18:48:23 +0000
  • d2de74a205 Increased the version number. Robert James Kaes 2002-06-07 18:45:58 +0000
  • 7e1de2012c Added code to handle the "FilterDefaultDeny" directive. The filter_set_default_policy() function is used to select the default policy (either default allow or default deny) for the filtering code. Also, the two filtering functions now support the policy code. Robert James Kaes 2002-06-07 18:36:22 +0000
  • ff56e32e8e Added the "FilterDefaultDeny" directive to allow the user to select whether the default policy of the filter is to allow everything which isn't denied, or to deny everything which isn't allowed. Robert James Kaes 2002-06-07 18:29:41 +0000
  • f47685c861 A bunch of changes from Petr Lampa that add transparent proxy support to tinyproxy. The additional code is in process_request(), but Petr also had to change around some of the other functions (like process_client_headers and handle_connection.) Note: Right now this code has not been tested, but it is believed to work. To enable run ./configure --enable-transparent-proxy Robert James Kaes 2002-06-06 20:32:30 +0000
  • 0242d89877 (filter_domain): Removed code which stripped of a port number from the host name. The "host" variable will _always_ be just the name by the time filter_domain() is called. Robert James Kaes 2002-06-06 20:30:04 +0000
  • 06d38ce529 (display_usage): Added a message indicating whether transparent proxy support has been compiled in. Robert James Kaes 2002-06-06 20:28:02 +0000
  • 51bbed6f76 Added the "--enable-transparent-proxy" flag and moved the AH_TEMPLATE() macros to _outside_ the "if" tests. Robert James Kaes 2002-06-06 20:27:01 +0000
  • a72fc7ad09 Added a warning message to the Bind directive stating that it will be ignored if "transparent proxy" has been compiled into tinyproxy. Robert James Kaes 2002-06-06 20:26:13 +0000
  • 2b5a3625bc (send_stored_logs): Actually included the code to output the stored logs. Plus, there was a bug with how I was calling the hashmap_is_end() function. This has now been fixed. Robert James Kaes 2002-06-06 20:24:21 +0000
  • d18be41f6b This commit was manufactured by cvs2svn to create tag 'rel_1_5_1pre5'. 1.5.1pre5 cvs2svn 2002-06-05 17:24:41 +0000
  • dfb83160f0 Updated ChangeLog Robert James Kaes 2002-06-05 17:24:40 +0000
  • 38b2f73004 Bumped up the version number. Robert James Kaes 2002-06-05 17:06:05 +0000
  • 22ffd04926 Added the "filter-howto.txt" file to the distribution. Robert James Kaes 2002-06-05 17:05:18 +0000
  • 9eeaf260eb Added a short filtering HOWTO document from Patrick L. McGillan. Robert James Kaes 2002-06-05 17:04:12 +0000
  • e440dee245 (child_main): Added a DEBUG call to let me know which process has accepted a connection. This is needed for debugging using "gdb". Robert James Kaes 2002-06-05 17:02:15 +0000
  • 89dee022e5 (malloc_shared_memory): Removed the assert() call for shared_file since it's now a static variable. Robert James Kaes 2002-06-05 17:01:09 +0000
  • b697ebf16b (acl_string_processing): Moved the string processing code out of check_acl() and into it's own function because it now does two (2) tests. If the ACL string is a complete host name, in other words doesn't start with a period, than a reverse DNS look-up is done on the host name and compared to the IP address of the client; otherwise, the normal text string comparison is done. (check_acl): Moved the string text out of the function and removed some logging code by jumping to the "Deny" code at the end of the function. Robert James Kaes 2002-06-05 16:59:21 +0000
  • 4b9be06fa5 This commit was manufactured by cvs2svn to create tag 'rel_1_5_1pre4'. 1.5.1pre4 cvs2svn 2002-05-31 18:29:40 +0000
  • 5e74b6e011 Updated the ChangeLog Robert James Kaes 2002-05-31 18:29:39 +0000
  • 02f3bdf5ff Added a boolean "truncate_file" flag for the create_file_safely() function. Robert James Kaes 2002-05-31 18:27:13 +0000
  • 833186b7be (create_file_safely): Added the "truncate_file" boolean flag. This is needed since I use this function for both the log file and the pid file, and they behave differently when tinyproxy is started. (pidfile_create): Call create_file_safely() with a TRUE "truncate_file" flag so that the file is emptied whenever the pid file is needed. Robert James Kaes 2002-05-31 18:26:30 +0000
  • e340b3371b The log file is now opened in "append" mode so that you can restart tinyproxy without losing the log file. Robert James Kaes 2002-05-31 18:24:36 +0000
  • 65d8f175b4 Updated the version number. Robert James Kaes 2002-05-31 18:09:51 +0000
  • 26a983b467 (process_server_headers): Since we're stripping off the carriage return and newline, we need to add them back on when sending the response header to the client. Robert James Kaes 2002-05-31 18:09:09 +0000
  • f548ce72b2 (getpeer_information): Fixed a problem retrieving the FQDN of a host because I was passing in an incorrect parameter to gethostbyaddr(). D'oh. Robert James Kaes 2002-05-31 18:08:01 +0000
  • 32af30e414 This commit was manufactured by cvs2svn to create tag 'rel_1_5_1pre3'. 1.5.1pre3 cvs2svn 2002-05-29 20:57:26 +0000
  • f3989e64cf Updated the ChangeLog for the 1.5.1pre3 release. Robert James Kaes 2002-05-29 20:57:25 +0000
  • e8de8a2e8e Updated the version number. Robert James Kaes 2002-05-29 20:55:47 +0000
  • 12fc92828c (malloc_shared_memory): Removed the MMAP_ANON and open("/dev/zero") since they are not portable across a while enough spectrum of machines. Right now tinyproxy is using a "classic" temporary file method of sharing memory. This will likely be improved in the future. Robert James Kaes 2002-05-29 20:51:35 +0000
  • 360deb4568 Changed the tests on the return value from malloc_shared_memory() to make tinyproxy more portable, since we can't be certain that "if (!ret_value)" would actually detect a mmap() error. Robert James Kaes 2002-05-29 20:49:55 +0000
  • fa3b9d2168 This commit was manufactured by cvs2svn to create tag 'rel_1_5_1pre2'. 1.5.1pre2 cvs2svn 2002-05-29 18:15:41 +0000
  • de782144bd Bumped up the version number. Robert James Kaes 2002-05-29 18:15:40 +0000
  • 0ef46467ad Updated ChangeLog for the 1.5.1pre2 release. Robert James Kaes 2002-05-29 18:15:08 +0000
  • 9b13e9bda8 (add_header_to_connection): Removed the "double_cgi" boolean, since tinyproxy now ignores all the headers after a "double CGI" situation has occurred. (get_all_headers): Instead of dropping duplicate headers when the "double CGI" situation occurs, tinyproxy will now drop _all_ the headers from the "inner" HTTP response. Robert James Kaes 2002-05-29 18:11:57 +0000
  • 5fcb8553da (init_stats): Fixed a spelling mistake where the number of bytes being allocated was incorrect. Robert James Kaes 2002-05-29 17:31:01 +0000
  • e7fcb5fc7d (add_header_to_connection): Added a boolean to indicate that a "Double CGI" situation is in affect. This is needed to solve a problem with some sites (like cgi.ebay.com) where they are sending two HTTP response lines (and associated headers) with a response. (get_all_headers): Detect if a "Double CGI" situation has occured. Robert James Kaes 2002-05-28 20:40:01 +0000
  • cf2bd809fb (get_all_headers): Added code to ignore a "response" line in a header. This was pointed out as being a problem with eBay (cgi.ebay.com) (process_server_headers): Added code to make skip blank lines before a response line. Robert James Kaes 2002-05-28 04:53:33 +0000
  • b8a4f72b7a This commit was manufactured by cvs2svn to create tag 'rel_1_5_1pre1'. 1.5.1pre1 cvs2svn 2002-05-27 15:19:35 +0000
  • 00bf9b0346 Fixed up a problem where the tinyproxy manual page was not getting included with the distribution. Robert James Kaes 2002-05-27 15:19:34 +0000
  • 36d712dc64 Updated the ChangeLog to include new changes to various files. Robert James Kaes 2002-05-27 03:06:45 +0000
  • c2712cb0bb Reformated the ChangeLog. Robert James Kaes 2002-05-27 02:01:06 +0000
  • 4ce9674365 (process_request): Changed the filtering code around to handle both domains and URLs. Robert James Kaes 2002-05-27 02:00:22 +0000
  • 35d3d79e92 Added into the config structure the filter_urls and filter_extended flags. Robert James Kaes 2002-05-27 01:59:28 +0000
  • d64dfc5d77 Some spelling fixes. Robert James Kaes 2002-05-27 01:58:41 +0000
  • 83a1a32f2a (opensock): Changed a comment around to better state what the code is actually doing. Robert James Kaes 2002-05-27 01:57:48 +0000
  • b11015c2e1 Added a copyright for James E. Flemer since these are his changes. (filter_init): Added code to handle both host and URLs. Also include code to use extended regular expressions. (filter_domain): The old filter_url function has been renamed filter_domain(). (filter_url): This function now actually filters complete URLs. Robert James Kaes 2002-05-27 01:56:22 +0000
  • 026c7d9a3d Added support for the "FilterURLs" and "FilterExtended" directives. These directives were submitted by James Flemer for use with the new filtering code. Robert James Kaes 2002-05-27 01:52:44 +0000
  • 4ba42369b9 Changes to tinyproxy relating to signals and the copyright dates. Robert James Kaes 2002-05-27 00:51:29 +0000
  • df3d88ed4e Updated the version number (pre 1) Robert James Kaes 2002-05-27 00:49:06 +0000
  • 514182a05f (display_license): Updated the copyright dates (main): Moved the signals around so that the appropriate signal is assigned to either the children or just the parrent process. Updated the copyright on the file. Robert James Kaes 2002-05-27 00:46:24 +0000
  • 8506b4ba33 Updated the ChangeLog. This was pulled from the CVS logs using Emacs. First time I've done this, but it seemed to work pretty well. Robert James Kaes 2002-05-26 19:07:04 +0000
  • a892febac3 Removed the "DNSserver" directives since they're no longer needed. Robert James Kaes 2002-05-26 18:59:10 +0000
  • 9c28c7dfe2 Removed the pthread related tests and added a test for the sys/mman.h header (needed for shared memory.) Robert James Kaes 2002-05-26 18:58:19 +0000
  • 9910c06bd2 Removed the "dnsserver" program all together, and changed the names of some of the files. Robert James Kaes 2002-05-26 18:56:43 +0000
  • 2e6ab58f37 Added the malloc_shared_memory() and calloc_shared_memory() function to allow the use of shared memory between all the children. Robert James Kaes 2002-05-26 18:56:06 +0000
  • 63f481c61a Spelling changes (from thread to child.) Robert James Kaes 2002-05-26 18:55:19 +0000
  • 6cc0dce1b4 Removed the directives for the old DNSserver process. Robert James Kaes 2002-05-26 18:54:27 +0000
  • 49b21c7e2f The stats structure has been moved into a shared memory block since it needs to be shared by all the children. Robert James Kaes 2002-05-26 18:53:14 +0000
  • a67fb30bdf Removed all the code relating to the DNS API (dnsclient.h) as it's no longer needed with the new pre-forked model. Robert James Kaes 2002-05-26 18:52:23 +0000
  • 523f2003fa Removed the DNS API calls and replaced them with the standard gethostbyname() and gethostbyaddr() functions. This is possible because tinyproxy now uses a standard pre-forked() method. Robert James Kaes 2002-05-26 18:51:17 +0000
  • 71046cd407 Removed the "pthread" related includes. Robert James Kaes 2002-05-26 18:49:19 +0000
  • c35e56ae66 No longer using a threading model; so these files have been replaced by the child.c/child.h files (which use a pre-forked model.) Robert James Kaes 2002-05-26 18:48:32 +0000
  • 1fda8899b1 I didn't like the DNS co-process design so I changed tinyproxy from a threading model to a standard pre-forked model. This means I don't need the DNS co-process files. Gone. Robert James Kaes 2002-05-26 18:47:11 +0000
  • b3e657a00e Changed from using a threading model to a standard pre-forked model. Therefore the thread.c file has been removed and this file replaces it. These files are really just the thread.c and thread.h files with all the threading stuff replaced with fork() code. Most of the code is identical. Robert James Kaes 2002-05-26 18:45:26 +0000
  • 391a408eee Fixed a tonne of spelling mistakes. Robert James Kaes 2002-05-24 04:45:32 +0000
  • a34db10d65 Fixed some spelling mistakes, and removed the getpeer_ip() and getpeer_string() functions as they've been replaced by the getpeer_information() function. Robert James Kaes 2002-05-24 04:44:36 +0000
  • e55c4263a8 Added the "DNSserverLocation" and "DNSserverSocket" directives (including their comments.) These directives are _required_ by the dnsserver DNS resolver. Robert James Kaes 2002-05-23 21:32:54 +0000
  • e7b9b558e9 Moved the AC_SUBST macros all together at the end of the file. Robert James Kaes 2002-05-23 18:29:34 +0000
  • 196d86fdcf A whole list of changes relating to the new "dnsserver" process and the reorganization of the source files. Robert James Kaes 2002-05-23 18:29:00 +0000
  • b77fc5c860 Moved most of the function into separate files: the heap debugging functions are in "heap.c"; the daemon functions are in "daemon.c"; and, the string/text functions are in "text.c". Robert James Kaes 2002-05-23 18:28:12 +0000
  • 52c15029d1 Moved all the system header includes into the common.h file. Robert James Kaes 2002-05-23 18:27:19 +0000
  • 16386fbb70 Added a new signal handler to handle SIGCHLD signals because of the new dnsserver child process. Robert James Kaes 2002-05-23 18:27:01 +0000
  • 478030c6ff Changed the lookup_domain() function to use the new "dnsserver" API. Also moved safe_write(), safe_read(), readline(), and write_message() functions into their own file. Robert James Kaes 2002-05-23 18:25:55 +0000
  • 47ab97a347 Fixed up a spelling mistake and changed various bits of code to take advantage of the fact that the peer's socket information is now stored inside the connection structure. Robert James Kaes 2002-05-23 18:24:46 +0000
  • 1f9085cef2 Added the "DNSserverLocation" and "DNSserverSocket" directives for use with the "dnsserver" resolver. Robert James Kaes 2002-05-23 18:24:02 +0000
  • 09b1b9b925 Added the peer's socket information to the connection structure. The information is passed along during the initialization of the structure. Robert James Kaes 2002-05-23 18:23:29 +0000
  • 9d0c65ad86 Fixed up the header includes for the new layout. Changed one line of code to make it explicit how the pointers are to be updated. Robert James Kaes 2002-05-23 18:22:48 +0000
  • 451fad1ed2 Changed the header includes around to reflect the new source layout. Robert James Kaes 2002-05-23 18:20:27 +0000
  • e633b97957 Added code to create the "dnsserver" program, and also reorganized to include the various new source files. Robert James Kaes 2002-05-23 04:43:06 +0000
  • 1690c05075 Initial addition to CVS. Moved the three "text" related functions into a separate file. Robert James Kaes 2002-05-23 04:42:30 +0000
  • fd3e6e84fb Initial addition to CVS. Moved the network related functions into a separate module. Robert James Kaes 2002-05-23 04:41:48 +0000
  • c667952861 Initial addition to CVS. Moved all the debugging heap related functions. Robert James Kaes 2002-05-23 04:41:10 +0000
  • 0b0e03fa39 Initial addition to CVS. The dnsserver process is a child executable that handle DNS resolving. Robert James Kaes 2002-05-23 04:40:42 +0000
  • d22d6d181b Initial addition to CVS. These functions create an API for accessing the dnsserver child process. Robert James Kaes 2002-05-23 04:40:06 +0000
  • 2ee61db6af Initial addition into CVS. Moves various functions relating the daemon processes. Added a portable signal handler setting function. Robert James Kaes 2002-05-23 04:39:32 +0000
  • 65cf5ea290 Initial addition to CVS. This header moves all the system includes from the tinyproxy.h file to here. Robert James Kaes 2002-05-23 04:37:54 +0000