Commit Graph

442 Commits

Author SHA1 Message Date
Robert James Kaes
e5819ebe1c Added the Connect log level. 2001-08-26 21:10:04 +00:00
Robert James Kaes
849345e88b Removed the anon_new() function and moved it's functionality into
anonymous_insert(). Also renamed all the anon_* functions to anonymous_*
function.
2001-08-26 21:07:27 +00:00
Robert James Kaes
ace480bb65 Fixed the include order to better handle the sys/time.h and time.h
headers.
2001-06-06 19:33:26 +00:00
Robert James Kaes
ff97b38603 Explictly cast getpid() to a long int to remove the compiler warnings on
various machines.
2001-06-06 19:32:51 +00:00
Robert James Kaes
540e33000b Changed the format type in the printf() to remove the compiler error (I
hope.)
2001-06-05 16:08:15 +00:00
Robert James Kaes
f43404aeef Removed the DEFAULT_LOG, DEFAULT_PORT, and DEFAULT_USER directives since
these MUST be set in the configuration file.
2001-06-04 23:30:34 +00:00
Robert James Kaes
3dfc5e84cc Fixed a type problem with fprintf in log_message() when logging the PID. 2001-06-02 03:38:02 +00:00
Robert James Kaes
e45c95fa97 LOG_EMERG doesn't exist anymore, so replace it with LOG_CRIT. 2001-06-02 03:10:34 +00:00
Robert James Kaes
a9720e85f6 Include LogLevel and it's settings into the grammar of the config file. 2001-06-02 03:10:09 +00:00
Robert James Kaes
2925b18412 Added the code for handling selective logging. 2001-06-02 03:09:27 +00:00
Robert James Kaes
0a5b82cd97 Fixed up the names of the DEFINES. 2001-06-02 02:07:34 +00:00
Robert James Kaes
5b11a1e2c9 Formating changes. Also, explictly close the client_fd when the
connections are destroyed.
2001-05-30 15:45:14 +00:00
Robert James Kaes
7febdd028c Changed all references to log() to log_message(). 2001-05-27 02:38:46 +00:00
Robert James Kaes
154a2e0880 Changed the references to log() to log_message(). Also changed some of the
data types for the variables.
2001-05-27 02:37:18 +00:00
Robert James Kaes
1cd4d6d440 Added code to stop the creation of core files.
Changed all references to log() to log_message().
2001-05-27 02:36:22 +00:00
Robert James Kaes
b242a2896e Changed the thread_main() function to only deal with the connections per
thread if the user has actually requested it.
Also changed some of the data types for the variables.
2001-05-27 02:33:35 +00:00
Robert James Kaes
42b09e5441 Removed the SA define.
Made the sock_mutex static since it's not referenced outside the file.
Changed the data types for some of the variables.
Cleaned up the readline function (changed data types and removed
variables.)
2001-05-27 02:31:20 +00:00
Robert James Kaes
981adafb5d Changed some of the types to Posix data types.
Changed any reference to log() to log_message().
Fixed a potential memory leak in process_method().
Removed redundant code and variables in relay_connection().
2001-05-27 02:29:06 +00:00
Robert James Kaes
91ba2103d1 Changed the reference from log() to log_message(). 2001-05-27 02:26:53 +00:00
Robert James Kaes
f89272be35 Changed the log() function to log_message(). 2001-05-27 02:26:11 +00:00
Robert James Kaes
627c88c736 Changed all the references to log() to log_message(). 2001-05-27 02:25:21 +00:00
Robert James Kaes
69617f6d56 Just a bit of a cleanup. Nothing major. 2001-05-27 02:24:40 +00:00
Robert James Kaes
938b7e7f21 Fixed the return type for new_dnscache(). 2001-05-27 02:24:00 +00:00
Robert James Kaes
23c08ca3ee Changed the types for various variables. Some the functions had the
variable types changed as well.
2001-05-27 02:23:08 +00:00
Robert James Kaes
df52296674 Updated the return type for new_anonymous(). 2001-05-27 02:21:37 +00:00
Robert James Kaes
bf477e9dff Renamed the access member of struct acl_s to acl_access.
Changed some of the types for the various variables to better reflect what
they are actually being used for.
2001-05-27 02:20:54 +00:00
Robert James Kaes
d32e0d1ccb Added ASSERT statements. 2001-05-23 18:01:23 +00:00
Robert James Kaes
86313eb6f5 Made the safefree() macro enabled all the time. 2001-05-23 18:00:54 +00:00
Robert James Kaes
b1d942c22a Removed a debugging aid. 2001-05-23 17:59:53 +00:00
Robert James Kaes
3f8b219210 Removed a DEBUG line in the "can't happen" case. 2001-05-23 17:59:08 +00:00
Robert James Kaes
03ffa590b7 Just a formatting change. 2001-05-23 17:58:19 +00:00
Robert James Kaes
36d84f4bc1 Make the netmask static and include the asserts. 2001-05-23 17:57:22 +00:00
Robert James Kaes
fedbe888e8 Fixed a potential problem with not zeroing the number of connections when
the threads are emptied.
2001-05-23 17:56:35 +00:00
Robert James Kaes
93b201d23b Fixed more potential overflow bugs. 2001-01-15 17:11:57 +00:00
Robert James Kaes
2f2d74e9f2 Fixed a potential security bug in http_err. There was a possibility of a
heap overflow exploit.
2001-01-15 17:06:19 +00:00
Robert James Kaes
cc704ae7a7 Fixed a bug where the ':' character was not being properly detected. 2001-01-02 19:30:40 +00:00
Robert James Kaes
d5467e404b Implimented the MaxRequestsPerChild directive. 2000-12-09 02:35:30 +00:00
Robert James Kaes
0051208777 Fixed a problem with polling for the number of active threads. No longer
polls. :)
2000-12-08 03:35:07 +00:00
Robert James Kaes
068b0337c5 Fixed MACRO error. 2000-11-23 04:49:26 +00:00
Robert James Kaes
c01af94a1c Fixed spelling mistake. 2000-11-23 04:46:48 +00:00
Robert James Kaes
b023ff577f Changed the filter_host command to filter_url. 2000-11-23 04:46:25 +00:00
Robert James Kaes
b6c6939e0a In the Key Found code, don't display the string in the debug code since it
doesn't exist anymore when we display it. Doh!
2000-10-23 21:46:38 +00:00
Robert James Kaes
1de608ec5c Added the initialization section for the DNS and Anonymous sub systems. 2000-10-23 21:44:43 +00:00
Robert James Kaes
5a5c2adcd8 Added the new_anonymous initialize routine 2000-10-23 21:43:52 +00:00
Robert James Kaes
670fad4a41 Added the new_dnscache routine to initialize the Ternary tree. Also,
removed the garbage collection routine.
2000-10-23 21:42:31 +00:00
Robert James Kaes
91b7c55972 Fixed the insert function to handle a failed insert properly. 2000-09-26 04:59:48 +00:00
Robert James Kaes
ba5e5fc109 Added the TE_EXISTS return code, and cleaned up the ternary_destroy
function.
2000-09-26 04:59:20 +00:00
Robert James Kaes
a2c3e5ecc9 Moved the safefree() macro to the tinyproxy.h header. 2000-09-26 04:58:35 +00:00
Robert James Kaes
fd61e791b5 Updated the free() calls to the safefree() calls. 2000-09-26 04:57:46 +00:00
Robert James Kaes
8398c7337d There is no LOG_EMERG level, so changed to LOG_CRIT. 2000-09-21 16:57:10 +00:00
Robert James Kaes
30f36f3aa6 Added the LOG_NOTICE level. 2000-09-21 16:53:51 +00:00
Robert James Kaes
1deed67e1f These are generated by grammar.y and scanner.l respectively, don't include
them in the CVS.
2000-09-15 20:58:57 +00:00
Robert James Kaes
955eb4b966 Automatically generated file. 2000-09-15 20:57:08 +00:00
Robert James Kaes
0b7488babe Don't include automatically generated files. 2000-09-15 20:55:29 +00:00
Robert James Kaes
d0b36a6673 Need to do a check for the <stdint.h> header since it's not a standard
header available on all systems.
2000-09-14 16:41:20 +00:00
Robert James Kaes
a5fbf4ea4b Again, needed for configure script. Automatically built by ./reconf 2000-09-12 18:10:30 +00:00
Robert James Kaes
dc18c065b7 These all handle reading the tinyproxy configuration file. 2000-09-12 00:12:52 +00:00
Robert James Kaes
2b5c6be1d5 Generalized the ternary code which was already being used in anonymous.*
now it can be used (and is used) in both anonymous and dnscache
2000-09-12 00:10:28 +00:00
Robert James Kaes
de6f42d9fa Improvied access control semantics. Allows for a finger control for
allowing and denying hosts.
2000-09-12 00:08:48 +00:00
Robert James Kaes
322a53eb56 tinyproxy now uses a pool of threads to handle connections. All the work
for creating new threads, deleting old thread, and generally managing the
pool is done here.
2000-09-12 00:07:44 +00:00
Robert James Kaes
bb32293415 This module handles the various stats relating to tinyproxy's
funcationality.
2000-09-12 00:06:09 +00:00
Robert James Kaes
392c97e3d1 MAJOR RE-WRITE! Read the ChangeLog and look at the source. It's shorter
than redocumenting the changes here. :)
2000-09-12 00:04:42 +00:00
Robert James Kaes
9f080da488 Fixed the change user/group ability.
Log when tinyproxy is using default values rather than specific ones.
Cleaned up the command line arguments since tinyproxy now uses a
configuration file.
Removed the USR1 signal and added the thread creation code.
2000-09-12 00:03:53 +00:00
Robert James Kaes
1efe0265de Removed the xmalloc() and xstrdup() functions.
Added the pidfile_create() function.
Added the OpenBSD style strlcat() and strlcpy() functions.
2000-09-12 00:01:29 +00:00
Robert James Kaes
04fc081e6d Switched to the new logging style and replaced the xmalloc() with straight
malloc().
2000-09-11 23:57:43 +00:00
Robert James Kaes
f6b7fe3f5c Needed locking in getpeer_string().
Added mutex locking around the dnscache() call.
Removed the global sockaddr and setup_fd variables.
Added the socket_blocking() and socket_nonblocking() functions.
Gutted the readling() function and replaced it with something similar to
the 1.0 version. :)
2000-09-11 23:56:32 +00:00
Robert James Kaes
c0ff35dd22 Moved back to the <config.h> for autoconf defines. 2000-09-11 23:50:07 +00:00
Robert James Kaes
4f4f91f76f Cleaned up the logging format, and also included logging levels (which are
similar to the syslogd format.)
2000-09-11 23:47:52 +00:00
Robert James Kaes
5d7063a79e Not using <defines.h> for autoconf anymore, so move back to the <config.h>
format.
2000-09-11 23:46:42 +00:00
Robert James Kaes
f807f4b96c Just using standard malloc() since the xmalloc() didn't really add
anything useful to the command.
2000-09-11 23:43:59 +00:00
Robert James Kaes
df030a075f Removed the custom hash routines. Using the ternary module instead. 2000-09-11 23:42:43 +00:00
Robert James Kaes
b7f7599d76 Cleaned up the source so that the internal structure is no exposed by the
buffer.h header.
2000-09-11 23:41:32 +00:00
Robert James Kaes
55185db499 Removed the ternary tree code from these files and made it a separate
module.
2000-09-11 23:38:36 +00:00
Robert James Kaes
06281b7898 Modified to include all the files needed to build tinyproxy, plus the
special targets for building the LEX and YACC files. (Also included the
GNU license.)
2000-09-11 23:37:01 +00:00
Robert James Kaes
2d9d164034 These files are no longer used within tinyproxy. 2000-09-11 23:24:59 +00:00
Robert James Kaes
73b1ff1b1a Reorganized (or added) the #include <sys/types.h> line so tinyproxy would
compile cleanly on FreeBSD systems.
2000-04-26 16:31:29 +00:00
Robert James Kaes
d0a05357a1 Fixed a bug with the path in clientreq. If the path was empty it caused a
malformed request to be sent.
2000-03-31 22:55:22 +00:00
Robert James Kaes
8a563800e4 Added a line for the anonymous.* files. 2000-03-31 20:14:45 +00:00
Robert James Kaes
b841f484aa Changed the socket time out to 10 secs. 2000-03-31 20:14:26 +00:00
Robert James Kaes
dede5f36a8 Updated the anonheader function to use the new anonymous API. Removed the
hack for the POST method in clientreq.
2000-03-31 20:13:36 +00:00
Robert James Kaes
2562d28129 Completely rewrote the readline function. 2000-03-31 20:10:13 +00:00
Robert James Kaes
ae347fc87a Added the working_* fields as a scratch pad for readline(). 2000-03-31 20:09:19 +00:00
Robert James Kaes
0edeabbd63 Removed the allowedhdr_s structure since it is now accessed through
anonymous.*
2000-03-31 20:08:19 +00:00
Robert James Kaes
b1e97bd24f Moved the anonymous header code into it's own file to make it easier to
update.
2000-03-31 19:56:55 +00:00
Robert James Kaes
477dacb5fa Included the <sys/types.h> header. 2000-03-29 16:18:05 +00:00
Robert James Kaes
0d421b5c39 Fixed a bug with the clientreq function which was incorrectly setting the
clientheader flag and causing _all_ headers to be sent even in anonymous
mode.
2000-03-29 16:17:37 +00:00
Robert James Kaes
46076808fb Fixed another NULL bug with the uri->authority. If an badly formed request
was made in the form of http:\\www.somewhere.com/ tinyproxy would SEGV.
This has been corrected.
2000-03-28 16:41:45 +00:00
Robert James Kaes
d222c7725b Fixed a NULL pointer bug in clientreq. If the SCHEME in the URL was NULL
the program would SEGV. This was caused by the error logging code.
2000-03-28 16:19:12 +00:00
Robert James Kaes
c2ef08202b Remove the defines for DEFAULT_* and UPSTREAM (they've been moved into
acconfig.h and configure).
2000-03-13 00:56:21 +00:00
Robert James Kaes
10317d6701 Included the changes needed to re-add the upstream proxy option. 2000-03-11 20:37:44 +00:00
Robert James Kaes
3d6ee12d89 Once again, these files are made automatically, don't include them. 2000-03-11 20:34:44 +00:00
Steven Young
37e63909c0 This commit was generated by cvs2svn to compensate for changes in r2,
which included commits to RCS files with non-trunk default branches.
2000-02-16 17:32:49 +00:00