Michael Adam
a09dd9cd00
main: add a config struct argument to process_cmdline.
...
Michael
2009-11-14 12:13:10 +01:00
Michael Adam
8945d9f0ae
main: put initialization of config defaults into a function of its own
...
Michael
2009-11-14 12:13:10 +01:00
Michael Adam
ea2eaef173
extract setup of the logging subsystem into a function of its own.
...
Signed-off-by: Michael Adam <obnox@samba.org>
2009-11-14 12:13:10 +01:00
Michael Adam
d8da7f55f7
main: move initialization of default config values closer together
...
Michael
2009-11-14 12:13:10 +01:00
Michael Adam
feea6db815
daemon.c: fix #if NDEBUG --> #ifdef NDEBUG
...
Thanks to Mathew Mrosko for pointing that out.
2009-11-10 17:59:40 +01:00
Michael Adam
444ad35250
intentation: convert a tab to spaces
...
Michael
2009-11-10 13:59:07 +01:00
Michael Adam
fd879e45c8
conf: fix reverspath parsing: the string in the 2nd arg is actually the inner match
...
this fixes bug #64 , https://www.banu.com/bugzilla/show_bug.cgi?id=64
the quotes of the string were part of the revers path after parseing.
Michael
2009-11-10 01:17:27 +01:00
Michael Adam
f63c29c886
conf: make the WS optional too, before the optional 2nd argument to reversepath
...
Michael
2009-11-10 01:17:27 +01:00
Michael Adam
60d738626b
conf: fix ipv6 regex patterns, take three
...
This extends the pattern by an alternative where there are no double colons.
This is for instance the case for and IPv6 address of the form
1111:222:33:4:55:666:7777:888
Michael
2009-11-10 00:55:39 +01:00
Michael Adam
4292fe7795
Fix a segfault in insert_acl and checks against string-type acls
...
The "address" member of struct acl_s is a union of a char *
and the numeric ip. So freeing the string after appending it to the
vector list is bad in two respects:
1. If the acl type was numeric, then this could (and would)
lead to a segfault due to the numeric IP data interpreted
as pointer to the string to be freed.
2. If the acl type was string, then the acl inserted into the
list contained a reference to this address string that
was freed. So in the worst case dereferencing this freed
string could segfault, or at least this could lead to
unexpectedly failing acl checks.
Michael
2009-11-10 00:37:57 +01:00
Michael Adam
2b73e2183f
conf: fix the IPV6 regex patterns, take two
...
The patterns should not end with the end of line marker,
since they might be part of a continuing pattern,
say of the form ipv6address/mask (used for allow/deny)
Michael
2009-11-09 23:26:46 +01:00
Michael Adam
f4f14419c4
conf: fix the IPV6 regex patterns
...
These are not matched against the beginning of a line
but somewhere in the middle (as in "listen <IPv6 address>").
Michael
2009-11-09 13:53:44 +01:00
Mukund Sivaraman
cd834de190
Close listenfd upon errors
2009-11-09 11:16:38 +05:30
Mukund Sivaraman
c8c9abc669
Fix validation of IPv6 addresses
2009-11-09 02:44:14 +05:30
Mukund Sivaraman
c978015af1
Add IPV6 support to listen_sock()
2009-11-09 01:13:41 +05:30
Michael Adam
25057baf54
propagate reload of filter file to child procs by sending HUP signals
2009-10-25 23:33:37 +01:00
Michael Adam
3474de599f
Change child_kill_children() to take the signal as an argument.
2009-10-25 23:33:37 +01:00
Michael Adam
1b4d130cf5
child: handle SIGHUP in the child by reloading the filter file
2009-10-25 23:33:37 +01:00
Michael Adam
b837e65b21
use new filter_reload() in child_main_loop()
2009-10-25 23:33:37 +01:00
Michael Adam
83987babd3
filter: add function filter_reload()
2009-10-25 23:33:37 +01:00
Michael Adam
7671ac1ae2
Don't add "Via:" header when DisableViaHeader == Yes.
2009-10-11 01:27:24 +02:00
Michael Adam
f208b1222b
Add a boolean config option "DisableViaHeader".
2009-10-11 01:13:15 +02:00
Michael Adam
07d993cbc1
acl: Fix "comparison between signed and unsigned" warning on 32bit
...
This reads the mask bits as an unsigned int instead of as signend.
This is also what mask bits really are - there is no negative mask. :-)
Michael
2009-10-10 01:11:53 +02:00
Michael Adam
a89d987e8a
Use size_t not ssize_t for len argument. This is always >= 0.
2009-10-10 01:11:10 +02:00
Mukund Sivaraman
641e5823c0
Use ssize_t for len argument
2009-10-09 13:50:12 +05:30
Michael Adam
eb4d01cc46
add muks' and my (C) to the main.c boilerplate comment.
...
Michael
2009-10-07 01:08:03 +02:00
Michael Adam
297274ca15
main: add muks and me to the license output (tinyproxy -l)
...
Michael
2009-10-07 01:06:05 +02:00
Mukund Sivaraman
eab4ae000b
url variable modified in do_transparent_proxy() is not the url variable in the caller
2009-10-02 15:27:43 +05:30
Mukund Sivaraman
931b038b27
Use safer string functions
2009-10-02 15:21:42 +05:30
Mukund Sivaraman
323a4d0147
Clean up html_send_file ()
...
- Make function return from one place
- Move inbuf to the heap
2009-10-02 13:01:32 +05:30
Michael Adam
5198ae644b
conf: beautify one formatting in the directives array.
...
Michael
2009-09-28 11:24:33 +02:00
Michael Adam
2beaac96d3
handle_connection: make logic clearer when deciding whether to use connect/ssl
...
Michael
2009-09-28 11:24:33 +02:00
Mukund Sivaraman
f08f0218af
Include limits.h for LONG_MAX and LONG_MIN
...
Not including limits.h caused an issue when building on FreeBSD.
2009-09-28 13:41:36 +05:30
Mukund Sivaraman
630d44e67b
[BB#10] Do not filter out transfer-encoding header
2009-09-27 16:27:51 +05:30
Michael Adam
7710dc4a8c
conf: make xtinyproxy BOOL in the directives array, too
...
Michael
2009-09-27 12:48:48 +02:00
Michael Adam
eecf145dbb
conf: turn XTinyproxy into a boolean option
...
This is what it actually is.
The string value was used in earlier versions to compare
against the uri->authority string. But not as a list of
sites to create an X-Tinyproxy header for, as the tinyproxy.conf
template states...
Michael
2009-09-27 12:32:31 +02:00
Mukund Sivaraman
2fd7417f56
Modify usage help text shown when Tinyproxy is run with -h
2009-09-27 08:09:24 +05:30
Mukund Sivaraman
54f4e8a91f
Use correct format string for POSIX pid_t in pidfile_create()
...
This patch also adds a gtk-doc comment for pidfile_create().
2009-09-27 08:09:24 +05:30
Mukund Sivaraman
38c20cd867
Add explicit casts for c++ mode in transparent-proxy.c
2009-09-27 08:09:23 +05:30
Mukund Sivaraman
c8be0250cd
Fix use of uninitialized variable
2009-09-27 08:09:23 +05:30
Mukund Sivaraman
0dda30295e
Add explicit casts for c++ mode in reverse-proxy.c
2009-09-27 08:09:23 +05:30
Mukund Sivaraman
3f0ccdef3c
strdup() the default stathost in config struct as it can be freed
2009-09-27 08:09:23 +05:30
Mukund Sivaraman
0ecb688269
Don't ignore retval of ftruncate() in utils.c
2009-09-27 08:09:23 +05:30
Mukund Sivaraman
1586b39138
Don't ignore retval of read() in reqs.c
2009-09-27 08:09:22 +05:30
Mukund Sivaraman
003df7454a
Don't ignore retval of write() in log.c
2009-09-27 08:09:22 +05:30
Mukund Sivaraman
616c03a9fb
Don't ignore retval of ftruncate() in log.c
2009-09-27 08:09:22 +05:30
Mukund Sivaraman
fc7415a5b0
Include debugging functions only when debug mode is used
2009-09-27 08:09:22 +05:30
Mukund Sivaraman
d102ed4ed3
Don't ignore retval of chdir()
2009-09-27 08:09:22 +05:30
Mukund Sivaraman
df6e8ae046
Fix warning about format string not being a string literal
2009-09-21 10:04:09 +05:30
Mukund Sivaraman
f0cc213c5a
Remove trailing comma from acl_type enum
2009-09-21 09:59:11 +05:30
Mukund Sivaraman
e9f8212560
Suppress gcc warnings about variadic macros
2009-09-21 09:57:29 +05:30
Mukund Sivaraman
0cc707b3ff
Rename conffile.[ch] to conf.[ch]
2009-09-21 09:41:59 +05:30
Mukund Sivaraman
9d5a15ed2d
[BB#18] Fix pointer aliasing issues
...
The changes were suggested by ians on the Banu forums.
2009-09-21 09:16:58 +05:30
Mukund Sivaraman
eccc765057
Remove trailing comma from filter_policy_t
2009-09-21 07:32:38 +05:30
Michael Adam
b95f7b9ffb
Print a http error when the client headers could not be retrieved.
...
A ususal case here is that the headers were buggy, e.g. a line
without a ":" to separate the header field name from the value.
Previous behaviour was to silently return a blank page.
Michael
2009-09-20 22:24:18 +02:00
Michael Adam
fcb053a77c
Revert "Remove unused parameter from process_request()"
...
This reverts commit f3312c22a0
.
The "hashofheaders" argument to process_request() is needed
for building with reverse support or with transparent support.
Michael
2009-09-20 21:58:52 +02:00
Mukund Sivaraman
23464e88ad
Remove unnecessary vfork.h include
2009-09-20 14:08:14 +05:30
Mukund Sivaraman
73409c9fe1
build: Remove use of the obsolete AC_TYPE_SIGNAL macro
...
C89 compilers use void return type for signal handler functions.
2009-09-20 14:03:56 +05:30
Mukund Sivaraman
919eedc7f9
Remove inline keyword from static functions
...
The compiler inlines static functions as necessary anyway.
No more inline keywords exist in Tinyproxy source code. We want to
avoid using this keyword anyway.
2009-09-20 13:58:50 +05:30
Mukund Sivaraman
0978decbac
build: Rename autoconf variable
2009-09-20 13:45:47 +05:30
Mukund Sivaraman
abafcf08ab
Remove the target system information when the version is displayed
...
If we require information about the runtime environment, it can be
found using the uname program. And binutils can tell about what the
tinyproxy binary contains. Tinyproxy doesn't have to report this
information.
2009-09-20 12:40:52 +05:30
Mukund Sivaraman
90e7d07f44
Remove ability to change the name of the default configuration file
...
This feature will only confuse us during support, if users come to
us with a Tinyproxy build which has a differently named default config
file. This feature is not that useful anyway.
2009-09-20 12:33:47 +05:30
Michael Adam
574a65c28e
filter: un-linebreak after un-indent...
...
Michael
2009-09-15 02:25:10 +02:00
Michael Adam
c240ca3bcc
child: move log messagte in child_main_loop() to a less irritating place.
...
Michael
2009-09-15 02:25:10 +02:00
Michael Adam
93b00446b9
filter: reduce indentation in filter_init by 16 characters by using return.
...
Michael
2009-09-15 02:25:09 +02:00
Mukund Sivaraman
9594b8889e
Revert "Fix constness of stathost"
...
This reverts commit 42d2e10c93
.
2009-09-15 04:14:26 +05:30
Mukund Sivaraman
f3312c22a0
Remove unused parameter from process_request()
2009-09-15 04:11:58 +05:30
Mukund Sivaraman
551e041638
Make takesig() into a static function
2009-09-15 04:09:34 +05:30
Mukund Sivaraman
42d2e10c93
Fix constness of stathost
2009-09-15 04:08:26 +05:30
Mukund Sivaraman
83ebd74d87
Minor indenting changes
...
Also changed the text "configuration file" to read "config file".
2009-09-15 04:07:06 +05:30
Mukund Sivaraman
d243515fa7
Return instead of exit() at end of main()
2009-09-15 04:06:26 +05:30
Mukund Sivaraman
ce55167487
Minor indenting changes
2009-09-15 03:53:35 +05:30
Mukund Sivaraman
b3065b6d18
Exit with proper status in case of bad commandline arguments
2009-09-15 03:53:18 +05:30
Mukund Sivaraman
34e23233ce
Add doc for change_user()
2009-09-15 02:00:20 +05:30
Mukund Sivaraman
1d744eb4c9
Return correct error status when setuid() or setgid() fails
2009-09-15 01:55:16 +05:30
Mukund Sivaraman
56748c5e65
Extract setuid/setgid code into a function
2009-09-15 01:55:16 +05:30
Mukund Sivaraman
5ec5449194
Extract cmdline parsing code into a function
2009-09-15 01:55:16 +05:30
Michael Adam
f25b0e2872
filter: untangle assignment and check in filter_init().
...
Michael
2009-09-14 22:18:28 +02:00
Michael Adam
c8e1696a22
conffile: reformat the directives array for readability.
...
Michael
2009-09-14 22:17:45 +02:00
Mukund Sivaraman
96303e10f3
Remove unused variable
2009-09-15 01:15:27 +05:30
Mukund Sivaraman
7b9234f394
Indent code to Tinyproxy coding style
...
The modified files were indented with GNU indent using the
following command:
indent -npro -kr -i8 -ts8 -sob -l80 -ss -cs -cp1 -bs -nlps -nprs -pcs \
-saf -sai -saw -sc -cdw -ce -nut -il0
No other changes of any sort were made.
2009-09-15 01:11:25 +05:30
Mukund Sivaraman
2cb6777592
Remove C++ wrapper from headers
...
These are not necessary as Tinyproxy is pure C code, and only
to be used within Tinyproxy. It is not a library.
2009-09-15 01:04:28 +05:30
Michael Adam
389f5d1464
make "config_file" a const in the config struct.
...
Michael
2009-09-10 22:16:58 +02:00
Michael Adam
735c9cb70f
reqs.c: fix two implicit cast warnings.
...
Michael
2009-09-10 22:12:16 +02:00
Michael Adam
4092c70b06
Fix compiler warnings: make const strings const in process_server_headers().
...
Michael
2009-08-12 23:49:46 +02:00
Michael Adam
0d585dca8d
Fix compiler warnings: make const strings const in process_client_headers().
...
Michael
2009-08-12 23:49:16 +02:00
Michael Adam
c59d012d11
Fix compiler warnings: Make const strings const in remove_connection_headers()
...
Michael
2009-08-12 23:47:45 +02:00
Michael Adam
1bfe8b6bea
Fix implicit cast warning in get_all_headers().
...
And untangle assignment from check.
Michael
2009-08-09 23:30:04 +02:00
Michael Adam
3b6bc45c37
Fix two implicit cast warnings in pull_client_data().
...
Michael
2009-08-09 23:28:36 +02:00
Michael Adam
bfca4019b7
Fix three implicit cast warnings in process_request().
...
Michael
2009-08-09 23:08:54 +02:00
Michael Adam
43fcc9ea37
Fix implicit cast warning in upstream_add().
...
Michael
2009-08-09 23:06:31 +02:00
Michael Adam
00fd84586c
Fix implicit cast warning in extract_ssl_url().
...
Michael
2009-08-09 23:05:28 +02:00
Michael Adam
ed23ceef64
Fix implicit cast warning in extract_http_url().
...
Michael
2009-08-09 23:04:27 +02:00
Michael Adam
bfa2c8ed77
Fix implicit cast warning in check_allowed_connect_ports().
...
Michael
2009-08-09 23:02:54 +02:00
Michael Adam
eb0deeb966
fix signed vs unsigned comparison warning in check_allowed_connect_ports().
...
Michael
2009-08-09 23:01:32 +02:00
Michael Adam
caee88c774
readline(): fix 5 implicit cast warnings
...
Michael
2009-08-07 10:10:04 +02:00
Michael Adam
947e8eb838
write_message(): fix signed/unsigned comparison warning
...
Michael
2009-08-07 10:07:07 +02:00
Michael Adam
c535939a9c
write_message(): fix implicit cast warnings.
...
Michael
2009-08-07 10:06:12 +02:00
Michael Adam
b450ad76ff
safe_write: fix unsigned vs. signed comparison
...
Michael
2009-08-07 10:04:57 +02:00
Michael Adam
2fff622819
send_stored_logs(): remove an implicit cast warning.
...
Michael
2009-08-07 09:54:15 +02:00
Michael Adam
4434dd24f1
send_stored_logs: fix signed/unsigned comparison
...
Michael
2009-08-07 09:42:45 +02:00
Michael Adam
8a27e29f7e
log_message(): remove implicit cast warning.
...
Michael
2009-08-07 09:28:35 +02:00
Michael Adam
87f5657db0
log: make const char array const.
...
Michael
2009-08-07 09:27:51 +02:00
Michael Adam
1052502b63
http_message_add_headers: make argument num_headers unsigned
...
and remove signed vs. unsigned comparison warnings.
Michael
2009-08-07 09:24:32 +02:00
Michael Adam
f99edadc92
http_message_add_headers(): fix implicit cast warning.
...
Michael
2009-08-07 09:21:28 +02:00
Michael Adam
baf634194c
http_message_create(): remove two implicit cast warnings.
...
Michael
2009-08-07 09:20:28 +02:00
Michael Adam
6a35704cdb
heap: make a const string const in malloc_shared_memory().
...
Michael
2009-08-07 09:17:49 +02:00
Michael Adam
8f50875740
heap: fix an implicit cast warning.
...
Michael
2009-08-07 09:17:12 +02:00
Michael Adam
ab9e8a59e2
hashmap: fix three implicit cast warnings.
...
Michael
2009-08-07 09:16:07 +02:00
Michael Adam
181b03d729
Fix an implicit cast warning in initialize_conn().
...
Michael
2009-08-07 09:12:42 +02:00
Michael Adam
02e7bc7545
send_html_file(): remove a discards qualifyer warning
...
and untangle assignment from check.
Michael
2009-08-07 08:56:46 +02:00
Michael Adam
3adec81872
html-error: make read only argument const in lookup_variable().
...
Michael
2009-08-07 08:53:26 +02:00
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