Commit Graph

644 Commits

Author SHA1 Message Date
Michael Adam
76dadf47d3 make a const string const in send_http_error_message().
Michael
2009-08-07 08:51:35 +02:00
Michael Adam
1c3c268b50 make a const string const in send_http_headers().
Michael
2009-08-07 08:49:21 +02:00
Michael Adam
c8ee85702e make message argument of indicate_http_error() const.
Michael
2009-08-07 08:48:51 +02:00
Michael Adam
20b606b6f5 make message argument to send_http_headers() constant.
Michael
2009-08-07 08:44:47 +02:00
Michael Adam
251a975126 add_error_variable(): make key and data arguments const
Michael
2009-08-07 08:41:36 +02:00
Michael Adam
05d1b2b372 showstats(): fix an implicit cast warning.
Michael
2009-08-07 08:38:41 +02:00
Michael Adam
3127baa4c6 showstats(): add a const to a const string
Michael
2009-08-07 08:37:44 +02:00
Michael Adam
bb067eb13c init_stats(): fix implicit cast warning.
Michael
2009-08-07 08:36:10 +02:00
Mukund Sivaraman
4518e4334d Wrap len in parantheses 2009-08-07 04:30:38 +05:30
Matthew Dempsky
59d273fdcc correctly handle folded header fields 2009-08-07 03:59:10 +05:30
Mukund Sivaraman
402b662def Fix const warning 2009-08-07 03:54:08 +05:30
Mukund Sivaraman
a21cd7e3ed Rename tinyproxy.[ch] to main.[ch] 2009-08-07 03:42:53 +05:30
Matthew Dempsky
b5089fecc7 fix error message formatting
Signed-off-by: Michael Adam <obnox@samba.org>
2009-08-06 07:33:20 +02:00
Michael Adam
2ca1f9027b add const to the key argument of anonymous_insert().
Michael
2009-08-05 00:15:04 +02:00
Michael Adam
c6475974b5 add const to the key argument for anonymous_search().
Michael
2009-08-05 00:14:20 +02:00
Michael Adam
caf20d786b utils: make headers constant in send_http_message() to reduce compiler warnings
Michael
2009-08-05 00:09:41 +02:00
Michael Adam
1cdd76af31 http_message_add_headers(): make parameter headers const.
Michael
2009-08-05 00:09:16 +02:00
Michael Adam
867b4c9813 filter_init(): kill implicit cast warnings by adding explicit casts.
Michael
2009-08-04 23:57:30 +02:00
Michael Adam
f0a46fd71c vector: remove implicit cast warning in vector_insert() by adding explicit cast
Michael
2009-08-04 23:52:56 +02:00
Michael Adam
5b81dec879 vector: remove implicit cast warning in vector_create()
Michael
2009-08-04 23:51:29 +02:00
Michael Adam
0aa45b0d34 child_pool_create(): add to explicit cats to reduce compiler warnings.
Michael
2009-08-04 23:47:28 +02:00
Michael Adam
60de38ceaa child: adapt child_config to contain unsigned integers
as just changed in get_int_arg.

Michael
2009-08-04 23:47:28 +02:00
Michael Adam
b4d8c5b9bf conffile: change [sg]et_int_arg() to return unsigned long int
This is also the parser regexp for INT in the definition.

Michael
2009-08-04 23:47:28 +02:00
Michael Adam
23b09947c6 conffile: add explicit cast in get_string_arg().
Michael
2009-08-04 23:47:28 +02:00
Michael Adam
35abbbc26d config_compile(): add an explicit cast.
Michael
2009-08-04 23:47:28 +02:00
Michael Adam
0b583194b7 config_compile(): fix as signed / unsigned comparison compiler warning.
Michael
2009-08-04 23:47:28 +02:00
Michael Adam
f52be1a2a1 conffile: fix indentation in the directives definition.
Michael
2009-08-04 23:47:28 +02:00
Michael Adam
e6ac4b28cd conffile: fix some missing initializer warnings in the directives definition.
Michael
2009-08-04 23:47:28 +02:00
Michael Adam
32c7caf710 conffile: reformat some indentation and linebreak in the directives definition.
Michael
2009-08-04 23:47:28 +02:00
Michael Adam
8f955d5543 child: add explicit cast in child_main().
Michael
2009-08-04 23:47:28 +02:00
Michael Adam
50dbd61063 buffer: add explicit cast in read_buffer().
Michael
2009-08-04 23:47:28 +02:00
Michael Adam
e5e665b0c6 buffer: add explicit cast in new_buffer().
Michael
2009-08-04 23:47:27 +02:00
Michael Adam
88dbe04c81 buffer: untangle assignment and check.
Michael
2009-08-04 23:47:27 +02:00
Michael Adam
f5c80119ca buffer: add two explicit casts to reduce compiler warnings in makenewline().
Michael
2009-08-04 23:47:27 +02:00
Michael Adam
25344751eb buffer: untangle assignment from check in makenewline().
For better debuggability.

Michael
2009-08-04 23:47:27 +02:00
Michael Adam
ab4df6edb8 check_acl(): initialize "perm" to eliminate compiler warning.
Provides safe fallback for switch statement, just in case..

Michael
2009-08-04 23:47:27 +02:00
Michael Adam
14a3e187ee check_acl(): remove the fd argument - it is not used.
Host name and IP address are provided instead.

Michael
2009-08-04 23:47:27 +02:00
Michael Adam
64ff313260 check_acl(): fix function header comment.
Michael
2009-08-04 23:47:27 +02:00
Michael Adam
0abd82b7e9 check_acl(): add explicit cast to return value of vector_getentry()
to reduce compiler warnings.

Michael
2009-08-04 23:47:27 +02:00
Michael Adam
b9f2325c54 check_acl(): add cast to recuce compiler warning (unsigned / signed comparison)
vector_lenth() returns < 0 if the vectore is NULL but this has been
checked before, so we can safely cast.

Michael
2009-08-04 23:47:27 +02:00
Michael Adam
a34276feee change vector_prepend() to take size_t len instead of ssize_t len argument.
Michael
2009-08-04 23:47:27 +02:00
Michael Adam
67628dcc63 change vector_append() to take size_t len instead of ssize_t len argument
Michael
2009-08-04 23:47:27 +02:00
Michael Adam
590f99ef2d vector: change vectore_insert() to take size_t len instead of ssize_t len arg
Michael
2009-08-04 23:47:27 +02:00
Michael Adam
c2c7245030 remove "discard const" compiler warnings with log_message().
Michael
2009-08-04 23:47:26 +02:00
Mukund Sivaraman
0b191f16fe Indenting change 2008-12-29 13:28:02 +00:00
Mukund Sivaraman
024b317de0 Convert tabs to spaces 2008-12-08 13:39:44 +00:00
Mukund Sivaraman
6e6f992f8c Update Tinyproxy website URL 2008-12-08 12:41:44 +00:00
Mukund Sivaraman
4c1ede779e Break at 80 columns 2008-12-08 12:26:08 +00:00
Mukund Sivaraman
a257703e59 Reformat code to GNU coding style
This is a commit which simply ran all C source code files
through GNU indent. No other modifications were made.
2008-12-01 15:01:11 +00:00
Mukund Sivaraman
448c19077c Don't disable the creation of core files
Creation of core files can be disabled in the OS environment such
as by using the ulimit program.
2008-12-01 14:40:26 +00:00
Mukund Sivaraman
fadb98ee55 Add more calls to umask() before mkstemp() 2008-08-24 11:47:50 +05:30
Mukund Sivaraman
82cd6c765b Move buffer to the heap due to its size 2008-08-24 11:38:59 +05:30
Mukund Sivaraman
fce253253a Set umask before mkstemp() for some versions of glibc 2008-08-24 11:27:38 +05:30
Mukund Sivaraman
62ddbd5e74 pos can never be less than 0 as it's of type size_t
Also fix the type which is passed in from various places.
2008-08-24 10:58:16 +05:30
Mukund Sivaraman
90c1bb4b73 Remove useless check as data can't be NULL at this point 2008-08-24 10:45:29 +05:30
Mukund Sivaraman
aa95c34004 Allow numeric uid/gids in User and Group directives
This change allows numeric uid/gids to be specified in the User and
Group directives in tinyproxy.conf. Formerly, only username and group
names were accepted. This fixes bug #15, which was created after
looking at a case on the OpenWrt wiki.

X-Banu-Bugzilla-Ids: 15
2008-07-14 17:40:20 +05:30
Mukund Sivaraman
2fe213d777 Fix error variable names that stats.html expects 2008-07-14 17:14:12 +05:30
Mukund Sivaraman
7e5ac7c58a Fix a regression where empty error variables caused strlen() to crash
This fixes a regression (bug #16) introduced in
95c1f39f60, where a NULL check was
removed. This caused NULL error variable values to be sent to
add_error_variable() in which strlen() segfaulted.

With this fix, custom stats pages should be displayed properly.

X-Banu-Bugzilla-Ids: 16
2008-07-14 17:13:06 +05:30
Mukund Sivaraman
7bdd47d030 Make the embedded error message display valid XHTML too
Also fix the information that is displayed.
2008-07-14 15:47:00 +05:30
Mukund Sivaraman
7b9e178a76 Add version info in embedded stats page 2008-07-14 15:46:05 +05:30
Mukund Sivaraman
7f12f71f94 Add error number as a template parameter for error pages 2008-07-14 15:31:14 +05:30
Mukund Sivaraman
8b26558254 Make the embedded stats message display valid XHTML too 2008-07-14 15:09:02 +05:30
Mukund Sivaraman
74f5c3e417 Spruce up error page footers a bit 2008-07-14 15:02:41 +05:30
Mukund Sivaraman
20a7e61360 Removed obsolete ignore rules 2008-06-19 21:33:20 +05:30
Mukund Sivaraman
7dcb5f9061 Include values.h to use LONG_MAX and LONG_MIN 2008-06-17 13:44:42 +05:30
Robert James Kaes
c8cf89a954 Add strtol conversion error checking
Moved the strtol() call into fill_netmask_array() and added additional
error checking to ensure that the strtol() call succeeded.

Error checking code taken from strtol() manpage.

Signed-off-by: Robert James Kaes <rjk@wormbytes.ca>
2008-06-17 13:32:20 +05:30
Robert James Kaes
51fb15be2c Refactored netmask array fill with range check
When building a numeric ACL with netmask, range check the supplied
value.  In addition, the code to walk the array has been extracted and
"simplified".

Signed-off-by: Robert James Kaes <rjk@wormbytes.ca>
2008-06-17 13:31:04 +05:30
Mukund Sivaraman
95c1f39f60 Don't check the value to be inserted as it's already checked
This change primarily avoids a gcc warning where timebuf
is never non-NULL. There is no need to check the value to be
inserted as it's checked inside hashmap_insert().

This changeset also lets error return values from hashmap_insert()
propogate instead of clamping them to -1 (not that these are
currently used anyway).
2008-06-10 09:51:23 +05:30
Robert James Kaes
5ea289d82e Moved transparent proxy code into its own file
Extracted the transparent proxy logic from reqs.c and placed it into a
separate file.

Signed-off-by: Robert James Kaes <rjk@wormbytes.ca>
2008-06-09 10:01:14 +05:30
Robert James Kaes
b092de72f8 Ignore profiling generated files
The *.pcno files are generated as part of the profiling code.

Signed-off-by: Robert James Kaes <rjk@wormbytes.ca>
2008-06-03 21:51:02 +05:30
Mukund Sivaraman
cc1f04ecba Updated copyright header in Makefile.am 2008-05-24 16:24:12 +05:30
Mukund Sivaraman
6f9ee262e5 Removed unnecessary LDFLAGS variable 2008-05-24 16:21:29 +05:30
Mukund Sivaraman
b0a3568de0 Renamed htmlerror.[ch] to html-error.[ch] 2008-05-24 13:47:14 +05:30
Mukund Sivaraman
249d4b7f33 Updated copyright, license notices in source code
The notices have been changed to a more GNU look. Documentation
comments have been separated from the copyright header. I've tried to
keep all copyright notices intact. Some author contact details have
been updated.
2008-05-24 13:35:49 +05:30
Mukund Sivaraman
b110332ed3 Free arg before returning, or it'll leak 2008-03-30 17:56:45 -07:00
Mukund Sivaraman
ff72f5426e Free entry_buffer or it'll be leaked
vector_append() calls vector_insert() which makes a copy
of the passed buffer, so the caller can free its buffer.
2008-03-30 17:51:51 -07:00
Mukund Sivaraman
12501d599c Fixed leaks of va_lists 2008-03-30 17:43:32 -07:00
Mukund Sivaraman
44d91bdf6b Removed obsolete lexer/parser files 2008-03-30 16:33:08 -07:00
Andrew Stribblehill
fdf7e4ea8b Added more patterns to .gitignore 2008-03-19 15:11:13 -07:00
Mukund Sivaraman
b11c74637f Fixed format string warnings 2008-03-13 15:09:30 -07:00
Mukund Sivaraman
fc62283164 Removed the clean target from the src directory
This was overriding the automake clean target to clean up
files like *.o by default.
2008-03-13 15:09:26 -07:00
Mukund Sivaraman
8848b647d7 Corrected datatype of salen to fix compiler warning 2008-03-13 15:09:21 -07:00
Mukund Sivaraman
31766cce90 Renamed file to replace underscores in it with dashes 2008-03-13 15:07:43 -07:00
Mukund Sivaraman
d5472ec0bd Renamed file to replace underscores in it with dashes 2008-03-13 15:07:37 -07:00
Mukund Sivaraman
376caf8f25 Renamed .cvsignore to .gitignore 2008-03-13 15:07:29 -07:00
Robert James Kaes
2f5118046d Added support for UPSTREAM directive.
Included the basic grammar and handler functions for the "upstream" and
"no upstream" directives.  I still need to update the grammar to match
_all_ the possibilities documented in the tinyproxy.conf file, but at
least it now does as much as the old config parser.
2005-11-04 05:15:47 +00:00
Robert James Kaes
72e1731092 Reformatted the reverse and filter configuration blocks. If either
section is not enabled at compile time, it should not be included in the
object file.
2005-11-04 01:31:41 +00:00
Robert James Kaes
ffec04c65e Fixed up whitespace formatting of the config file directives. Also
added blank lines to group related directives.
2005-11-04 00:47:07 +00:00
Robert James Kaes
4c58663041 * [Refactor] Moved Reverse Proxy Code
Moved the reverse proxy code from reqs.c into it's own files
(reverse_proxy.c).  The code in reqs.c is way too complicated, so I
want to move unrelated code into their own files to simplify the main
concepts in reqs.c.
2005-08-16 04:03:19 +00:00
Robert James Kaes
808bdbd1e9 * [Indent] Fixed typedef Formatting
Added the list of tinyproxy typedefs to the indent command to have them
formatted correctly as well.
2005-08-15 18:35:09 +00:00
Robert James Kaes
c0299e1868 * [Indent] Ran Source Through indent
I re-indented the source code using indent with the following options:

indent -kr -bad -bap -nut -i8 -l80 -psl -sob -ss -ncs

There are now _no_ tabs in the source files, and all indentation is
eight spaces.  Lines are 80 characters long, and the procedure type is
on it's own line.  Read the indent manual for more information about
what each option means.
2005-08-15 03:54:31 +00:00
Robert James Kaes
38f0b3a103 * Specified Correct typedef in getsock_ip()
Changed the variable type for the namelen variable to the correct
socklen_t type.  The configure script already checked for it, but for
some reason I never got around to actually using it in this function.
2005-07-12 20:34:26 +00:00
Robert James Kaes
a59117c7ca * Updated Copyright Email Addresses
Updated the copyright email addresses for Robert James Kaes.  The
users.sourceforge.net address should always exist.
2005-07-12 17:39:44 +00:00
Robert James Kaes
6042483a0e Removed the proxy-* headers from the list of headers to skip. Since
tinyproxy does not prompt for any proxy information from the client, it
should not be eating the proxy headers.  They are most likely needed by
an upstream proxy.
2005-07-06 21:44:08 +00:00
Robert James Kaes
51096e2944 * [1118363] Proxy reverse order of headers
Changed the internal implementation of the hashmap to maintain the
  insert order if the same key is repeated.  The insertion is still
  constant since we keep track of the head and tail of the bucket
  chain.
2005-05-03 20:34:54 +00:00
Robert James Kaes
019b91c3f9 (takesig): Fixed the return type to use the autoconf defined
RETSIGTYPE.  This is portable, while simply using "void" is not.
2004-08-24 16:36:22 +00:00
Robert James Kaes
c446e19003 Added code to handle HTTP/0.9 simple GET requests. 2004-08-24 16:35:27 +00:00
Robert James Kaes
79d40a536a (get_bool_arg): Moved the initialization of "p" _before_ the assert()
calls.  The code doesn't compile under gcc 2.95 otherwise.  (I'm
surprised it compiles under gcc 3.3 without a problem.)
2004-08-24 16:34:22 +00:00
Robert James Kaes
35196f7d8e Changed some of the variable types so that the code compiles cleanly
on other operating systems.  (Used cf.sourceforge.net as the test
system for cross compiling.)
2004-08-24 16:33:00 +00:00
Robert James Kaes
d41260fe2d Fixed up the acl_s structure so that it compiles correctly under
gcc 2.95.
2004-08-24 16:31:45 +00:00