Age | Commit message (Collapse) | Author | Files | Lines |
|
being initially created with the initial user's permissions, which is obviously a problem if tinyproxy is not running as the initial user. This is now fixed by delaying the creation of the log file until _after_ tinyproxy has been switched to the user it will run as. Confused yet?
|
|
(pidfile_create): Changed all the error logging to write to standard error and then exit the program. This will prevent segmentation fault problems from occurring because the log file could not be created properly.
|
|
".XXXXXX" string already. This saves one system call when creating a temporary file name.
|
|
that the children can be properly destroyed.
|
|
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.
|
|
(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.
|
|
code is activated whenever the SIGHUP signal is received.
|
|
renamed the "log_rotation_request" boolean to "received_sighup".
|
|
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.
|
|
|
|
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.
|
|
the default policy of the filter is to allow everything which isn't denied, or to deny everything which isn't allowed.
|
|
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
|
|
name. The "host" variable will _always_ be just the name by the time filter_domain() is called.
|
|
support has been compiled in.
|
|
ignored if "transparent proxy" has been compiled into tinyproxy.
|
|
Plus, there was a bug with how I was calling the hashmap_is_end() function. This has now been fixed.
|
|
connection. This is needed for debugging using "gdb".
|
|
now a static variable.
|
|
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.
|
|
|
|
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.
|
|
tinyproxy without losing the log file.
|
|
newline, we need to add them back on when sending the response header to the client.
|
|
I was passing in an incorrect parameter to gethostbyaddr(). D'oh.
|
|
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.
|
|
tinyproxy more portable, since we can't be certain that "if (!ret_value)" would actually detect a mmap() error.
|
|
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.
|
|
allocated was incorrect.
|
|
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.
|
|
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.
|
|
and URLs.
|
|
|
|
|
|
actually doing.
|
|
(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.
|
|
These directives were submitted by James Flemer for use with the new
filtering code.
|
|
(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.
|
|
some of the files.
|
|
allow the use of shared memory between all the children.
|
|
|
|
|
|
needs to be shared by all the children.
|
|
longer needed with the new pre-forked model.
|
|
gethostbyname() and gethostbyaddr() functions. This is possible
because tinyproxy now uses a standard pre-forked() method.
|
|
|
|
the child.c/child.h files (which use a pre-forked model.)
|
|
threading model to a standard pre-forked model. This means I don't need
the DNS co-process files. Gone.
|
|
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.
|
|
|