privoxy.git
10 years agoexecute_external_filter(): Fix file descriptor leak in error path
Fabian Keil [Sat, 18 Oct 2014 11:25:57 +0000 (11:25 +0000)]
execute_external_filter(): Fix file descriptor leak in error path

CID 66384.

10 years agoFix theoretical memory leaks in edit_parse_actions_file()
Fabian Keil [Sat, 18 Oct 2014 11:25:42 +0000 (11:25 +0000)]
Fix theoretical memory leaks in edit_parse_actions_file()

CID 66388.

10 years agoFix a comment typo
Fabian Keil [Sat, 18 Oct 2014 11:25:24 +0000 (11:25 +0000)]
Fix a comment typo

10 years agoFix a theoretical memory leak in cgi_show_url_info()
Fabian Keil [Sat, 18 Oct 2014 11:25:13 +0000 (11:25 +0000)]
Fix a theoretical memory leak in cgi_show_url_info()

In the real world map_block_killer() is unlikely to run out of memory.

CID 66392.

10 years agoaccept_connection(): Adjust loop condition to silence a ressource leak warning
Fabian Keil [Sat, 18 Oct 2014 11:24:53 +0000 (11:24 +0000)]
accept_connection(): Adjust loop condition to silence a ressource leak warning

This is a nop because fd 0 is guaranteed to be in use and
thus can't be returned by accept() anyway.

CID 66393.

10 years agoserver_http(): Make the HTTP reason phrase optional again
Fabian Keil [Sat, 18 Oct 2014 11:24:34 +0000 (11:24 +0000)]
server_http(): Make the HTTP reason phrase optional again

There are still servers around that that don't set one
and Privoxy doesn't really need it anyway.

10 years agoBump copyright
Fabian Keil [Fri, 17 Oct 2014 14:45:41 +0000 (14:45 +0000)]
Bump copyright

10 years agoAdd range-related tests for external-filter{}
Fabian Keil [Fri, 17 Oct 2014 14:45:29 +0000 (14:45 +0000)]
Add range-related tests for external-filter{}

10 years agoPrevent img-reorder from messing up img tags with empty src attributes
Fabian Keil [Fri, 17 Oct 2014 14:45:10 +0000 (14:45 +0000)]
Prevent img-reorder from messing up img tags with empty src attributes

Fixes #880 reported by Duncan.

10 years agoAdd #138: Analyse Coverity scan results
Fabian Keil [Thu, 16 Oct 2014 11:55:45 +0000 (11:55 +0000)]
Add #138: Analyse Coverity scan results

Remove #55 which is done.

10 years agoDisable +fast-redirects{} for ixquick-proxy.com/
Fabian Keil [Thu, 16 Oct 2014 11:55:15 +0000 (11:55 +0000)]
Disable +fast-redirects{} for ixquick-proxy.com/

10 years agoAdd #137: Add a (preferably vector-based) logo
Fabian Keil [Thu, 16 Oct 2014 11:54:58 +0000 (11:54 +0000)]
Add #137: Add a (preferably vector-based) logo

10 years agoRebuild docs
Fabian Keil [Mon, 6 Oct 2014 10:20:31 +0000 (10:20 +0000)]
Rebuild docs

10 years agoUpdate the 'Would you like to donate?' section
Fabian Keil [Mon, 6 Oct 2014 10:20:09 +0000 (10:20 +0000)]
Update the 'Would you like to donate?' section

Mention that donations will be used to get TODO list
items done and add the Zwiebelfreunde e.V. bank
account.

10 years agoAdd Sam Chen as contributor
Fabian Keil [Mon, 6 Oct 2014 10:19:43 +0000 (10:19 +0000)]
Add Sam Chen as contributor

10 years agoChange declared template file encoding to UTF-8
Fabian Keil [Mon, 6 Oct 2014 10:19:30 +0000 (10:19 +0000)]
Change declared template file encoding to UTF-8

The files already used a subset of UTF-8 anyway and changing
the declaration allows to properly display UTF-8 characters
used in the action files.

This change may require existing action files with ISO-8859-1
characters that aren't valid UTF-8 to be converted to UTF-8.

Requested by Sam Chen in #582.

10 years agoAdd #136: Make builds reproducible
Fabian Keil [Mon, 6 Oct 2014 10:18:37 +0000 (10:18 +0000)]
Add #136: Make builds reproducible

10 years agoRemove and incorrect and an obsolete sentence from the action file section
Fabian Keil [Mon, 6 Oct 2014 10:18:25 +0000 (10:18 +0000)]
Remove and incorrect and an obsolete sentence from the action file section

Using Privoxy without action files is not actually pointless if
its only being used as HTTP router or HTTP to SOCK gateways.

People who still care about syntax changes in 3.0.7 should look at
the ChangeLog to see all the changes combined.

10 years agoStop mentioning the log defaults before 3.0.7 which are no longer relevant
Fabian Keil [Mon, 6 Oct 2014 10:17:43 +0000 (10:17 +0000)]
Stop mentioning the log defaults before 3.0.7 which are no longer relevant

10 years agoMake it more obvious that many operating systems support log rotation out of the box
Fabian Keil [Mon, 6 Oct 2014 10:17:28 +0000 (10:17 +0000)]
Make it more obvious that many operating systems support log rotation out of the box

10 years agoSync config.guess and config.sub with upstream 2012-12-23/306afce2
Fabian Keil [Mon, 6 Oct 2014 10:17:12 +0000 (10:17 +0000)]
Sync config.guess and config.sub with upstream 2012-12-23/306afce2

... which is the last commit that is still GPLv2+.

10 years agoAdd #135: Add OpenBSM audit support
Fabian Keil [Mon, 6 Oct 2014 10:13:56 +0000 (10:13 +0000)]
Add #135: Add OpenBSM audit support

10 years agoUpdate URL of the 'current development version of this file'
Fabian Keil [Fri, 22 Aug 2014 09:45:29 +0000 (09:45 +0000)]
Update URL of the 'current development version of this file'

10 years agoUnblock 'adele*.'
Fabian Keil [Fri, 8 Aug 2014 13:05:23 +0000 (13:05 +0000)]
Unblock 'adele*.'

Reported by Adele Lime in #1663.

10 years agoUnblock "adina*."
Fabian Keil [Fri, 1 Aug 2014 12:34:21 +0000 (12:34 +0000)]
Unblock "adina*."

According to Wikipedia, "Adina is a Biblical Hebrew name meaning
delicate, slender, refined or gentle".

Fixes #919 reported by Morton A. Goldberg.

10 years agoLet server_http() regenerate the response line
Fabian Keil [Fri, 25 Jul 2014 11:57:17 +0000 (11:57 +0000)]
Let server_http() regenerate the response line

... making sure Privoxy forwards a valid one.

Normalizing the HTTP-version is an explicit RFC 2616 MUST,
RFC 7230 mandates that intermediaries send their own
HTTP-version in forwarded messages.

10 years agoLet sed() failures result in an error response
Fabian Keil [Fri, 25 Jul 2014 11:56:54 +0000 (11:56 +0000)]
Let sed() failures result in an error response

While at it, make sure fatal parse errors are reported
to the caller right away.

10 years agoNormalize the HTTP-version in forwarded request lines
Fabian Keil [Fri, 25 Jul 2014 11:56:26 +0000 (11:56 +0000)]
Normalize the HTTP-version in forwarded request lines

This is an explicit RFC 2616 MUST and RFC 7230 mandates
that intermediaries send their own HTTP-version in forwarded
messages.

10 years agoUpdate normalize_lws()'s description to reference RFC 7230
Fabian Keil [Fri, 25 Jul 2014 11:56:02 +0000 (11:56 +0000)]
Update normalize_lws()'s description to reference RFC 7230

10 years agoSpell whitespace consistently without whitespace
Fabian Keil [Fri, 25 Jul 2014 11:55:47 +0000 (11:55 +0000)]
Spell whitespace consistently without whitespace

That's how it's done in RFC 7230 which obsoletes RFC 2616.

10 years agoBump copyright
Fabian Keil [Fri, 25 Jul 2014 11:55:27 +0000 (11:55 +0000)]
Bump copyright

10 years agoReject requests with unsupported Expect header values
Fabian Keil [Fri, 25 Jul 2014 11:55:11 +0000 (11:55 +0000)]
Reject requests with unsupported Expect header values

This changes the test status for the following Co-Advisor
tests from "Violation" to "Success":

rfc2616/unsuppExpect-0100-continue
rfc2616/unsuppExpect-100-continueing
rfc2616/unsuppExpect-expect=params
rfc2616/unsuppExpect-expect=quoted-100c

For RFC 2616 rejecting such requests was a MUST,
but RFC 7230 downgraded this to a MAY.

10 years agoAdd #134: Track the total number of bytes written to and received from a socket.
Fabian Keil [Fri, 25 Jul 2014 11:54:28 +0000 (11:54 +0000)]
Add #134: Track the total number of bytes written to and received from a socket.

10 years agoRegenerate docs
Fabian Keil [Fri, 18 Jul 2014 10:19:46 +0000 (10:19 +0000)]
Regenerate docs

10 years agoUpdate the forward-override{} example to be consistent with the tagging example
Fabian Keil [Fri, 18 Jul 2014 10:01:39 +0000 (10:01 +0000)]
Update the forward-override{} example to be consistent with the tagging example

10 years agoNote that invalid forward-override{} parameter syntax isn't detected until the parame...
Fabian Keil [Fri, 18 Jul 2014 10:01:20 +0000 (10:01 +0000)]
Note that invalid forward-override{} parameter syntax isn't detected until the parameter is used

10 years agoAdd another +redirect{} example: a shortcut for illumos bugs
Fabian Keil [Fri, 18 Jul 2014 10:00:11 +0000 (10:00 +0000)]
Add another +redirect{} example: a shortcut for illumos bugs

10 years agoMove a 'static' before the 'const'
Fabian Keil [Fri, 18 Jul 2014 09:59:51 +0000 (09:59 +0000)]
Move a 'static' before the 'const'

10 years agoClarify what Privoxy does if both +block{} and +redirect{} apply
Fabian Keil [Mon, 14 Jul 2014 13:37:08 +0000 (13:37 +0000)]
Clarify what Privoxy does if both +block{} and +redirect{} apply

10 years agoBlock '/.*DigiAd'
Fabian Keil [Mon, 14 Jul 2014 13:01:28 +0000 (13:01 +0000)]
Block '/.*DigiAd'

10 years agoMove a pattern below its tests
Fabian Keil [Mon, 14 Jul 2014 13:01:02 +0000 (13:01 +0000)]
Move a pattern below its tests

10 years agoAdd an external filter example to add '[citation needed]' tags to images
Fabian Keil [Mon, 14 Jul 2014 13:00:07 +0000 (13:00 +0000)]
Add an external filter example to add '[citation needed]' tags to images

Finding images where this may make sense and the coordinates
fit is left as an excercise for the reader.

10 years agoUse a custom redirect{} for .washingtonpost.com/wp-apps/imrs\.php\?src=
Fabian Keil [Mon, 14 Jul 2014 12:57:00 +0000 (12:57 +0000)]
Use a custom redirect{} for .washingtonpost.com/wp-apps/imrs\.php\?src=

Previously enabling the 'Advanced' settings (or manually enabling
+fast-redirects{}) prevented some images from being loaded properly.

As a side effect this commit expands Oleg's reach even further.

10 years agoNote that security issues shouldn't be reported using the bug tracker
Fabian Keil [Mon, 14 Jul 2014 12:56:30 +0000 (12:56 +0000)]
Note that security issues shouldn't be reported using the bug tracker

Add myself as security contact as discussed on ijbswa-devel@
months ago.

10 years agoNote that donations will fund work on the TODO list
Fabian Keil [Thu, 3 Jul 2014 10:19:47 +0000 (10:19 +0000)]
Note that donations will fund work on the TODO list

10 years agoAdd #133: Consider allowing bitcoin donations
Fabian Keil [Wed, 25 Jun 2014 10:09:57 +0000 (10:09 +0000)]
Add #133: Consider allowing bitcoin donations

At least one donor is interested in this.

10 years agoAdd #132: Provide a Tor hidden service to reach the Privoxy website
Fabian Keil [Wed, 25 Jun 2014 10:09:07 +0000 (10:09 +0000)]
Add #132: Provide a Tor hidden service to reach the Privoxy website

At least one donor is interested in this, it's not lot of work
and we can eat our own dogfood by putting Privoxy between the
Tor hidden service and the website to rewrite the requests.

10 years agoMark TODO list items with the number of known donors who mentioned being interested...
Fabian Keil [Wed, 25 Jun 2014 10:08:13 +0000 (10:08 +0000)]
Mark TODO list items with the number of known donors who mentioned being interested in them

10 years agoUpdate the status of the curl-related work in progress for #1
Fabian Keil [Wed, 25 Jun 2014 10:03:53 +0000 (10:03 +0000)]
Update the status of the curl-related work in progress for #1

10 years agoVerify that PATCH requests pass the unknown_method() check
Fabian Keil [Fri, 20 Jun 2014 09:49:31 +0000 (09:49 +0000)]
Verify that PATCH requests pass the unknown_method() check

10 years agoBump copyright
Fabian Keil [Fri, 20 Jun 2014 09:47:10 +0000 (09:47 +0000)]
Bump copyright

10 years agoAdd support for the 'PATCH' method as defined in RFC5789
Fabian Keil [Fri, 20 Jun 2014 09:46:56 +0000 (09:46 +0000)]
Add support for the 'PATCH' method as defined in RFC5789

10 years agoRemove a stray '1' in the 'html-annoyances' filter
Fabian Keil [Fri, 20 Jun 2014 09:46:13 +0000 (09:46 +0000)]
Remove a stray '1' in the 'html-annoyances' filter

Regression tests for the win.

10 years agoAdd #131: handle-as-empty-doc-returns-ok should be replaced with an action
Fabian Keil [Mon, 16 Jun 2014 10:17:38 +0000 (10:17 +0000)]
Add #131: handle-as-empty-doc-returns-ok should be replaced with an action

10 years agoClarify that handle-as-empty-doc-returns-ok is still useful
Fabian Keil [Mon, 16 Jun 2014 10:16:53 +0000 (10:16 +0000)]
Clarify that handle-as-empty-doc-returns-ok is still useful

... and will not be removed without replacement

10 years agoAdd #130: Move header_tagger() out of the parser structs
Fabian Keil [Mon, 16 Jun 2014 10:15:32 +0000 (10:15 +0000)]
Add #130: Move header_tagger() out of the parser structs

10 years agoRemove a comment suggesting that normalize_lws()'s log message might be temporary
Fabian Keil [Thu, 12 Jun 2014 13:10:21 +0000 (13:10 +0000)]
Remove a comment suggesting that normalize_lws()'s log message might be temporary

It's rarely seen in the real world and only visible if
header debugging has been enabled anyway.

10 years agoReference RFC 7230 in remove_chunked_transfer_coding()'s description
Fabian Keil [Thu, 12 Jun 2014 13:09:03 +0000 (13:09 +0000)]
Reference RFC 7230 in remove_chunked_transfer_coding()'s description

... and note that the implementation is (still) incomplete.

10 years agoAdd #129: Completely implement RFC 7230 4.1 (Chunked Transfer Coding)
Fabian Keil [Thu, 12 Jun 2014 13:08:42 +0000 (13:08 +0000)]
Add #129: Completely implement RFC 7230 4.1 (Chunked Transfer Coding)

10 years agoRFC 2616 is obsolete, update a comment in redirect_url()
Fabian Keil [Thu, 12 Jun 2014 13:08:25 +0000 (13:08 +0000)]
RFC 2616 is obsolete, update a comment in redirect_url()

10 years agoAdd an external filter example to rotate images
Fabian Keil [Thu, 12 Jun 2014 13:07:19 +0000 (13:07 +0000)]
Add an external filter example to rotate images

10 years agoAdd #128: Add a config directive to control the stack limit.
Fabian Keil [Thu, 12 Jun 2014 13:06:54 +0000 (13:06 +0000)]
Add #128: Add a config directive to control the stack limit.

10 years agoMake it more obvious that +external-filter{} mostly behaves like +filter{}
Fabian Keil [Tue, 3 Jun 2014 10:33:59 +0000 (10:33 +0000)]
Make it more obvious that +external-filter{} mostly behaves like +filter{}

10 years agoLet +external-filter{} only filter "text" by default
Fabian Keil [Tue, 3 Jun 2014 10:33:17 +0000 (10:33 +0000)]
Let +external-filter{} only filter "text" by default

Given that this is what +filter{} does, it's probably
the expected behaviour.

10 years agoLet a couple of format strings use %u for unsigned integers
Fabian Keil [Tue, 3 Jun 2014 10:31:27 +0000 (10:31 +0000)]
Let a couple of format strings use %u for unsigned integers

Fixes cppcheck warnings.

10 years agoAdd another redirect{} example to stress that redirect loops can and should be avoided
Fabian Keil [Tue, 3 Jun 2014 10:30:20 +0000 (10:30 +0000)]
Add another redirect{} example to stress that redirect loops can and should be avoided

10 years agoFix white space
Fabian Keil [Tue, 3 Jun 2014 10:29:40 +0000 (10:29 +0000)]
Fix white space

10 years agoReduce indirection in get_content_type()
Fabian Keil [Tue, 3 Jun 2014 10:29:23 +0000 (10:29 +0000)]
Reduce indirection in get_content_type()

10 years agoUse strdup_or_die() where it makes sense
Fabian Keil [Tue, 3 Jun 2014 10:28:39 +0000 (10:28 +0000)]
Use strdup_or_die() where it makes sense

10 years agoReplace malloc() with malloc_or_die() when the size is puny
Fabian Keil [Tue, 3 Jun 2014 10:27:56 +0000 (10:27 +0000)]
Replace malloc() with malloc_or_die() when the size is puny

10 years agoAccept multi-digit HTTP major and minor versions in highlight_request_line()
Fabian Keil [Tue, 3 Jun 2014 10:26:21 +0000 (10:26 +0000)]
Accept multi-digit HTTP major and minor versions in highlight_request_line()

10 years agoReduce code duplication by setting http->ocmd in parse_http_request()
Fabian Keil [Tue, 3 Jun 2014 10:25:57 +0000 (10:25 +0000)]
Reduce code duplication by setting http->ocmd in parse_http_request()

10 years agoFix a cppcheck complaint in init_error_log()
Fabian Keil [Tue, 3 Jun 2014 10:24:00 +0000 (10:24 +0000)]
Fix a cppcheck complaint in init_error_log()

Superfluous write to 'this_thread'.

10 years agoAdd #127: Add "real" CGI support
Fabian Keil [Mon, 2 Jun 2014 07:23:14 +0000 (07:23 +0000)]
Add #127: Add "real" CGI support

10 years agoRemove #57 as it's done
Fabian Keil [Mon, 2 Jun 2014 07:22:40 +0000 (07:22 +0000)]
Remove #57 as it's done

10 years agoRebuild HTML docs for external filters
Fabian Keil [Mon, 2 Jun 2014 06:24:51 +0000 (06:24 +0000)]
Rebuild HTML docs for external filters

10 years agoRebuild config
Fabian Keil [Mon, 2 Jun 2014 06:23:23 +0000 (06:23 +0000)]
Rebuild config

10 years agoBump copyright
Fabian Keil [Mon, 2 Jun 2014 06:22:22 +0000 (06:22 +0000)]
Bump copyright

10 years agoAdd documentation for external filters
Fabian Keil [Mon, 2 Jun 2014 06:20:51 +0000 (06:20 +0000)]
Add documentation for external filters

10 years agoAdd support for external filters
Fabian Keil [Mon, 2 Jun 2014 06:19:06 +0000 (06:19 +0000)]
Add support for external filters

... which allow to process the response body with a script
or program written in any language the platform supports.

External filters are enabled with +external-filter{} after
they have been defined in one of the filter files with
a header line starting with "EXTERNAL-FILTER:".

For this to work, a temporary directory has to be specified
using the newly-added temporary-directory directive.

External filters are experimental and not expected to
work on all platforms (yet).

10 years agoRemove a duplicated check for localtime_r()
Fabian Keil [Mon, 2 Jun 2014 05:46:53 +0000 (05:46 +0000)]
Remove a duplicated check for localtime_r()

10 years agoAlso disable HTML filters for responses tagged with application/x-javascript
Fabian Keil [Mon, 2 Jun 2014 05:45:44 +0000 (05:45 +0000)]
Also disable HTML filters for responses tagged with application/x-javascript

10 years agoRebuild HTML docs for 3.0.22 UNSTABLE
Fabian Keil [Mon, 26 May 2014 10:49:19 +0000 (10:49 +0000)]
Rebuild HTML docs for 3.0.22 UNSTABLE

10 years agoBump entities for 3.0.22 UNRELEASED
Fabian Keil [Mon, 26 May 2014 10:48:39 +0000 (10:48 +0000)]
Bump entities for 3.0.22 UNRELEASED

10 years agoResize an array in parse_http_request() to the appropriate size
Fabian Keil [Mon, 26 May 2014 10:48:07 +0000 (10:48 +0000)]
Resize an array in parse_http_request() to the appropriate size

10 years agoDelete #56 as the Co-Advisor accout has been upgraded and update #126
Fabian Keil [Mon, 26 May 2014 10:47:21 +0000 (10:47 +0000)]
Delete #56 as the Co-Advisor accout has been upgraded and update #126

10 years agoDisable HTML filters for responses tagged with text/javascript as well
Fabian Keil [Mon, 26 May 2014 10:47:04 +0000 (10:47 +0000)]
Disable HTML filters for responses tagged with text/javascript as well

10 years agoShorten a comment with duplicated and incomplete information
Fabian Keil [Mon, 26 May 2014 10:46:45 +0000 (10:46 +0000)]
Shorten a comment with duplicated and incomplete information

10 years agoRename STATIC_PCRE to FEATURE_DYNAMIC_PCRE
Fabian Keil [Tue, 20 May 2014 15:02:09 +0000 (15:02 +0000)]
Rename STATIC_PCRE to FEATURE_DYNAMIC_PCRE

... to be more consistent with other feature names.

This change belongs to a previous commit but got lost
after the git export due to human error.

10 years agoActually show the FORCE_PREFIX value on the show-status page
Fabian Keil [Tue, 20 May 2014 11:58:36 +0000 (11:58 +0000)]
Actually show the FORCE_PREFIX value on the show-status page

Unless I miss something, this never worked before.

10 years agoConsistency-cosmetic for cgi_show_status()
Fabian Keil [Tue, 20 May 2014 11:56:08 +0000 (11:56 +0000)]
Consistency-cosmetic for cgi_show_status()

10 years agoBump copyright date
Fabian Keil [Tue, 20 May 2014 11:55:24 +0000 (11:55 +0000)]
Bump copyright date

10 years agoRename STATIC_PCRE to FEATURE_DYNAMIC_PCRE
Fabian Keil [Tue, 20 May 2014 11:55:10 +0000 (11:55 +0000)]
Rename STATIC_PCRE to FEATURE_DYNAMIC_PCRE

... to be more consistent with other feature names.

STATIC_PCRE is still defined as it's expected by the internal
pcre to statically link on Windows.

10 years agoDijkstraize show_defines(): two or more, use a for
Fabian Keil [Tue, 20 May 2014 11:54:24 +0000 (11:54 +0000)]
Dijkstraize show_defines(): two or more, use a for

10 years agoUpdate #56 and add #126: Dealing with the compliance test results
Fabian Keil [Tue, 20 May 2014 11:52:46 +0000 (11:52 +0000)]
Update #56 and add #126: Dealing with the compliance test results

10 years agoFix spelling
Fabian Keil [Tue, 13 May 2014 11:42:20 +0000 (11:42 +0000)]
Fix spelling

10 years agoAdd the hosting wish list relevant for #53
Fabian Keil [Tue, 13 May 2014 11:16:12 +0000 (11:16 +0000)]
Add the hosting wish list relevant for #53

Originally proposed in:
http://sourceforge.net/p/ijbswa/mailman/message/32306540/
Slightly modified to fix spelling errors etc.

10 years agoNote that #56 is work in progress
Fabian Keil [Tue, 13 May 2014 11:15:28 +0000 (11:15 +0000)]
Note that #56 is work in progress

10 years agoTone down #123 a bit
Fabian Keil [Mon, 12 May 2014 10:38:54 +0000 (10:38 +0000)]
Tone down #123 a bit

On second thought it probably makes no sense.

10 years agoClarify which Capsicum #124 is referring to
Fabian Keil [Mon, 12 May 2014 10:37:15 +0000 (10:37 +0000)]
Clarify which Capsicum #124 is referring to