Lee [Tue, 23 Oct 2018 03:00:43 +0000 (23:00 -0400)]
Merge branch 'master' of ssh://git.privoxy.org:23/git/privoxy
unable to do a push - allarently i have to pull first
Lee [Tue, 23 Oct 2018 02:56:55 +0000 (22:56 -0400)]
get rid of <cr><lf> line endings and trailing spaces
run 'dos2unix ldp.dsl.in' and then
vi ldp.dsl.in; :1,$ s/ $//
Fabian Keil [Tue, 16 Oct 2018 12:58:18 +0000 (14:58 +0200)]
Regenerate for 3.0.26 (STABLE)
Fabian Keil [Tue, 16 Oct 2018 12:53:03 +0000 (14:53 +0200)]
Regenerate homepage
Fabian Keil [Tue, 16 Oct 2018 12:02:49 +0000 (14:02 +0200)]
Remove 7binaryoptions.com from the footer
Fabian Keil [Tue, 16 Oct 2018 12:01:17 +0000 (14:01 +0200)]
Remove 7binaryoptions.com from the footer
The sponsored 12 months are up.
Fabian Keil [Tue, 9 Oct 2018 13:17:16 +0000 (15:17 +0200)]
Fix parameter index in a comment
Fabian Keil [Tue, 9 Oct 2018 16:26:58 +0000 (18:26 +0200)]
Fix parameter index in a comment
Lee [Sun, 12 Aug 2018 15:47:13 +0000 (11:47 -0400)]
tell tidy the input is ISO-8859-1 & to not complain so much
docbook output is ISO-8859-1 and tidy just assumes ASCII
without the '-latin1' option you get things like
line 86 column 13 - Warning: replacing invalid UTF-8 bytes (char. code U+00A9)
where docbook converts this
<!entity my-copy "©">
Copyright &my-copy; 2001-2017 by Privoxy Developers
to this
Copyright © 2001-2017 by Privoxy Developers
and tidy strips out the copyright character.
with the '-latin1' option tidy leaves the copyright character as is.
options -q --mute MISSING_ATTRIBUTE --mute TRIM_EMPTY_ELEMENT
just gets rid of verbose messages for things nobody is going to fix
Lee [Fri, 10 Aug 2018 19:40:35 +0000 (15:40 -0400)]
rebuild docs
Lee [Fri, 10 Aug 2018 19:19:09 +0000 (15:19 -0400)]
add windows/ build files from the old cvs winsetup/ directory
Lee [Fri, 10 Aug 2018 18:18:09 +0000 (14:18 -0400)]
rebuild the docs
Lee [Fri, 10 Aug 2018 18:17:11 +0000 (14:17 -0400)]
update the docs for the sourceforge.net/cvs => privoxy.org/git migration
Lee [Tue, 10 Jul 2018 00:11:25 +0000 (20:11 -0400)]
remove all of the CVS "$Id: xxx" lines that GIT doesn't do anything with
bump the copyright and rebuild the docs
RIP CVS
no more automatic version number and change timestamp in the source :(
Lee [Mon, 9 Jul 2018 18:39:16 +0000 (14:39 -0400)]
update the URL for the Privoxy TODO list
sourceforge cvs is no more :(
the TODO list is now kept in GIT and can be seen at
https://www.privoxy.org/gitweb/?p=privoxy.git;a=blob_plain;f=TODO;hb=HEAD
Fabian Keil [Mon, 9 Jul 2018 09:58:04 +0000 (11:58 +0200)]
Use https for the FAQ link
Fabian Keil [Mon, 9 Jul 2018 09:55:53 +0000 (11:55 +0200)]
TODO: Remove CVS id and update URL
Reported by Lee.
Roland Rosenfeld [Thu, 10 May 2018 11:18:18 +0000 (13:18 +0200)]
Update debian directory to 3.0.26-6 status.
Lee [Sat, 21 Apr 2018 18:46:03 +0000 (14:46 -0400)]
get rid of a compiler warning
urlmatch.c:494:1: warning: ‘static’ is not at beginning of declaration [-Wold-style-declaration]
jb_err static normalize_http_version(char *http_version)
^~~~~~
swap 'jb_err' and 'static' so that ‘static’ is at beginning of declaration
Lee [Sat, 31 Mar 2018 11:49:56 +0000 (07:49 -0400)]
echo the filename to stderr for 'make dok-tidy'
make it a bit easier to find errors in docbook generated html
tidy doesn't show the filename it's working on, so if
you do a 'make dok-tidy' you get *lots* of output to
stderr but no clue as to which file has all those
errors/warnings
Lee [Mon, 19 Mar 2018 15:51:56 +0000 (11:51 -0400)]
rebuild docs
Lee [Mon, 19 Mar 2018 15:46:58 +0000 (11:46 -0400)]
have docbook generate valid html
http://validator.w3.org/check
fusses about 'end tag for element "P" which is not open'
if a table is inside a paragraph - eg
<p><table> ... </table></p>
docbook 3.1 turns <screen> and <programlisting> into
html <table>s, so get rid of all the enclosing <para>s
problematic constructs:
<para><figure> ... </figure></para>
<para><itemizedlist> ... </itemizedlist></para>
<para><literal> ... </literal></para>
<para><orderedlist> ... </orderedlist></para>
<para><programlisting> ... </programlisting></para>
<para><screen> ... </screen></para>
<para><simplelist> ... </simplelist></para>
Lee [Mon, 19 Mar 2018 01:16:39 +0000 (21:16 -0400)]
generate correct html - no chars
a blank line right after a <para>, <literallayout>, <screen>
or just before the closing tag causes docbook 3.1 to generate
a ' '
eg: this sgml
following patterns</quote>, and <literal>-block</literal> means <quote>don't
block URLs that match the following patterns, even if <literal>+block</literal>
previously applied.</quote>
</para>
<para>
Again, actions are invoked by placing them on a line, enclosed in curly braces and
leads to this html:
>, and <TT
CLASS="LITERAL"
>-block</TT
> means <SPAN
CLASS="QUOTE"
>"don't
block URLs that match the following patterns, even if <TT
CLASS="LITERAL"
>+block</TT
>
previously applied."</SPAN
> </P
><P
> Again, actions are invoked by placing them on a line, enclosed in curly braces and
having " " right after the "</SPAN>" is just wrong.
Lee [Sun, 18 Mar 2018 15:00:16 +0000 (11:00 -0400)]
make dok: don't run tidy on the docbook generated html
at least as of tidy 5.6.0, tidy -indent -wrap
breaks <pre> formatting if the line is wrapped
<pre>a long line
</pre>
when indented and wrapped ends up like this
<pre>
a long line
</pre>
The pre-formatted text shouldn't have leading spaces added. It should look like
<pre>
a long line
</pre>
Lee [Sun, 18 Mar 2018 14:19:24 +0000 (10:19 -0400)]
use the wayback machine for the docbook site that no longer exists
url="http://opensource.bureau-cornavin.com/crash-course/index.html"
$ nslookup opensource.bureau-cornavin.com.
** server can't find opensource.bureau-cornavin.com: Non-existent domain
Lee [Thu, 15 Mar 2018 15:26:04 +0000 (11:26 -0400)]
rebuild docs
Lee [Thu, 15 Mar 2018 01:27:04 +0000 (21:27 -0400)]
adjust <literallayout> lines to not exceed the line wrap length
Ideally we shouldn't be creating pre-formatted text that exceeds
the line wrap length.
manually editing files after generating them with 'make dok' is
for the birds..
Lee [Wed, 14 Mar 2018 11:23:55 +0000 (07:23 -0400)]
add faq for what to do if editing the config file is access denied
Lee [Wed, 14 Mar 2018 11:01:16 +0000 (07:01 -0400)]
workaround for tidy -indent -wrap breaking <pre> formatting
tidy -indent -wrap 78 messes up the formatting of a long
line following a <pre> tag by splitting the line into <pre>
and the text and indenting both. eg
<pre>a really long line</pre>
is turned into
<pre>
a really long line</pre>
and we end up with lots of leading spaces.
change the line wrap to column 120 and hope that's enough
to keep this bug from happening
Roland Rosenfeld [Tue, 13 Mar 2018 15:13:38 +0000 (16:13 +0100)]
Update mail address of Roland Rosenfeld and fix indentation.
Lee [Sat, 10 Mar 2018 14:24:25 +0000 (09:24 -0500)]
language nit
Stopping to watch is like parking at a scenic overlook to admire the scenery.
We're ignoring the scenery and continuing to drive.
Fabian Keil [Fri, 9 Mar 2018 12:08:50 +0000 (13:08 +0100)]
Remove Id tag
Fabian Keil [Fri, 9 Mar 2018 11:55:14 +0000 (12:55 +0100)]
Remove Id tag
Fabian Keil [Fri, 9 Mar 2018 11:51:22 +0000 (12:51 +0100)]
Bump copyright
Fabian Keil [Fri, 9 Mar 2018 11:48:03 +0000 (12:48 +0100)]
Remove id tag
Roland Rosenfeld [Thu, 8 Mar 2018 12:25:42 +0000 (13:25 +0100)]
fix typo in FAQ.
Fabian Keil [Thu, 1 Mar 2018 11:15:12 +0000 (12:15 +0100)]
Expect a 404 for /show-version which no longer exists
Fabian Keil [Thu, 1 Mar 2018 11:13:03 +0000 (12:13 +0100)]
Remove cgi_show_version()
It's no longer useful now that we are using git.
Eventually the git hash should be added to the
version number shown on each page.
Fabian Keil [Thu, 1 Mar 2018 11:08:52 +0000 (12:08 +0100)]
Remove show_rcs() and the CVS ids it relied upon
Lee [Wed, 7 Mar 2018 06:11:07 +0000 (01:11 -0500)]
fix comment
it's the nagle algorithm being disabled, so call it by it's name
Fabian Keil [Thu, 17 Aug 2017 17:12:15 +0000 (19:12 +0200)]
Change write_pid_file()'s prototype to take the path as argument
Fabian Keil [Sat, 18 Mar 2017 17:54:11 +0000 (18:54 +0100)]
Consistently use the U(ngreedy) flag in the 'img-reorder' filter
Fabian Keil [Sat, 30 Dec 2017 10:11:14 +0000 (11:11 +0100)]
Add brief HTTP/2 FAQ
Fabian Keil [Fri, 29 Dec 2017 16:54:57 +0000 (17:54 +0100)]
#121: Fix typo
Fabian Keil [Mon, 25 Dec 2017 12:17:48 +0000 (13:17 +0100)]
Add a web-sponsors target to only update the sponsoring page
Fabian Keil [Mon, 25 Dec 2017 12:05:22 +0000 (13:05 +0100)]
Add betrugstest.com as Privoxy sponsor
Fabian Keil [Fri, 25 Aug 2017 10:47:11 +0000 (10:47 +0000)]
Regenerate docs
Fabian Keil [Fri, 25 Aug 2017 10:46:37 +0000 (10:46 +0000)]
FAQ: Change two more SPI links to https
Fabian Keil [Sat, 12 Aug 2017 09:42:31 +0000 (09:42 +0000)]
Fix server-response fuzzing
... which I broke when I added the receive-buffer-size directive.
When fuzzing, a zero-size buffer was used which resulted in all
fuzzing inputs that were supposed to be treated as server-response
being rejected.
Setting a receive_buffer_size in process_fuzzed_input() prevents
this. The other fuzzing modes weren't affected by the regression.
Fabian Keil [Sat, 12 Aug 2017 09:41:48 +0000 (09:41 +0000)]
Bump copyright
Fabian Keil [Sat, 12 Aug 2017 09:40:50 +0000 (09:40 +0000)]
pcrs_compile_replacement(): Remove an assertion that could be triggered with invalid input
Without the assertion the invalid input is properly rejected:
Error: Failed to compile pcrs replacement. Error: (pcrs:) Backreference out of range
This reverts one half of r1.50 which apparently wasn't
properly tested.
Fabian Keil [Sat, 12 Aug 2017 09:40:22 +0000 (09:40 +0000)]
Remove an obsolete comment
Fabian Keil [Sat, 12 Aug 2017 09:40:14 +0000 (09:40 +0000)]
Compile socks fuzzing code depending on FUZZ instead of FUZZ_SOCKS
We no longer allow to use a fuzzing build for non-fuzzing work
so unconditionally including the socks fuzzing code doesn't add
any additional inconvenience.
Fabian Keil [Sat, 12 Aug 2017 09:37:17 +0000 (09:37 +0000)]
Add the pointer to the receive buffer to the csp
It allows to free it outside of handle_established_connection()
and will allow to use it in other functions in the future.
Fabian Keil [Sat, 12 Aug 2017 09:36:42 +0000 (09:36 +0000)]
Streamline handle_established_connection()'s parameter list
csp references fwd already so there's no need to pass
it as separate parameter as well.
Fabian Keil [Sat, 12 Aug 2017 09:35:32 +0000 (09:35 +0000)]
load_config(): Rearrange code to prevent a useless store
Fabian Keil [Sat, 12 Aug 2017 09:33:25 +0000 (09:33 +0000)]
Warn when still using select()
Fabian Keil [Sat, 12 Aug 2017 09:33:14 +0000 (09:33 +0000)]
Warn when compiling without calloc()
Lee [Mon, 10 Jul 2017 21:19:36 +0000 (21:19 +0000)]
add 'make dok-tidy' to the list of things to do for a 'make dok'
Lee [Sat, 1 Jul 2017 18:34:07 +0000 (18:34 +0000)]
bump copyright
Lee [Sat, 1 Jul 2017 17:14:12 +0000 (17:14 +0000)]
get rid of another compiler warning on Windows for %llu
i686-w64-mingw32-gcc -c -pipe -O2 -DWINVER=0x501 -mwindows -Wall -Ipcre parsers.c -o parsers.o
parsers.c: In function 'create_content_length_header':
parsers.c:4671:36: warning: unknown conversion type character 'l' in format [-Wformat=]
snprintf(header, buffer_length, "Content-Length: %llu", content_length);
^
parsers.c:4671:36: warning: too many arguments for format [-Wformat-extra-args]
Lee [Sat, 1 Jul 2017 17:08:25 +0000 (17:08 +0000)]
fix format specifier in log_error for unsigned long long variables
Fabian Keil [Mon, 26 Jun 2017 12:18:21 +0000 (12:18 +0000)]
listen_loop(): Reuse a single thread attribute object
The object doesn't change and creating a new one for
every thread is a waste of (cpu) time.
Sponsored by: Robert Klemme
Fabian Keil [Mon, 26 Jun 2017 12:18:06 +0000 (12:18 +0000)]
Remove an obsolete NULL check
Fabian Keil [Mon, 26 Jun 2017 12:17:57 +0000 (12:17 +0000)]
Free csp resources in the thread that belongs to the csp
... instead of the main thread which has enough on
its plate already.
Sponsored by: Robert Klemme
Fabian Keil [Mon, 26 Jun 2017 12:17:43 +0000 (12:17 +0000)]
Factor free_csp_resources() out of sweep()
Sponsored by: Robert Klemme
Fabian Keil [Mon, 26 Jun 2017 12:17:34 +0000 (12:17 +0000)]
Fix a comment that described the effect of debug 1024 incorrectly
The comment is correct in the source file already but the config
file generation requires manual labour and the "[m]anual config fixes"
I applied in r1.100 (2009) added the comment at the wrong place.
Fabian Keil [Mon, 26 Jun 2017 12:17:17 +0000 (12:17 +0000)]
Rebuild config file with enable-accept-filter documentation
Sponsored by: Robert Klemme
Fabian Keil [Mon, 26 Jun 2017 12:16:47 +0000 (12:16 +0000)]
Rebuild user-manual with enable-accept-filter documentation
Sponsored by: Robert Klemme
Fabian Keil [Mon, 26 Jun 2017 12:16:32 +0000 (12:16 +0000)]
Document the enable-accept-filter directive
Sponsored by: Robert Klemme
Fabian Keil [Mon, 26 Jun 2017 12:16:21 +0000 (12:16 +0000)]
Rebuild config file with listen-backlog documentation
Sponsored by: Robert Klemme
Fabian Keil [Mon, 26 Jun 2017 12:15:27 +0000 (12:15 +0000)]
Rebuild the user manual with listen-backlog documentation
Sponsored by: Robert Klemme
Fabian Keil [Mon, 26 Jun 2017 12:14:38 +0000 (12:14 +0000)]
Document the listen-backlog directive
Sponsored by: Robert Klemme
Fabian Keil [Mon, 26 Jun 2017 12:14:25 +0000 (12:14 +0000)]
Improve 'socket timeout reached' message
Log the timeout that was triggered and downgrade the
log level to LOG_LEVEL_CONNECT to reduce the log noise
with common debug settings.
The timeout isn't necessary the result of an error and
usually merely indicates that Privoxy's socket timeout
is lower than the relevant timeouts used by client and
server.
Sponsored by: Robert Klemme
Fabian Keil [Mon, 26 Jun 2017 12:13:52 +0000 (12:13 +0000)]
Add a listen-backlog directive
Which specifies the backlog value passed to listen().
Sponsored by: Robert Klemme
Fabian Keil [Mon, 26 Jun 2017 12:12:55 +0000 (12:12 +0000)]
Enable accept filter only once
Previously Privoxy would (attempt to) enable it before
each accept call which isn't necessary.
Sponsored by: Robert Klemme
Fabian Keil [Mon, 26 Jun 2017 12:11:13 +0000 (12:11 +0000)]
Add an enable-accept-filter directive
Which allows to toggle accept filter support at
run time when compiled with FEATURE_ACCEPT_FILTER
support.
It makes testing more convenient and now that it's
optional we can emit an error message if enabling
the accept filter fails.
Sponsored by: Robert Klemme
Fabian Keil [Mon, 26 Jun 2017 12:10:31 +0000 (12:10 +0000)]
Explicitly taint the server socket in case of CONNECT requests
This doesn't fix any known problems, but makes
some log messages less confusing.
Fabian Keil [Mon, 26 Jun 2017 12:10:18 +0000 (12:10 +0000)]
Add fast-redirects exception for '.youtube.com/.*origin=http'
Fabian Keil [Mon, 26 Jun 2017 12:10:07 +0000 (12:10 +0000)]
Update reference to the 'show-version' page
Fabian Keil [Mon, 26 Jun 2017 12:09:56 +0000 (12:09 +0000)]
Update comments that still mentioned 'show-proxy-args' instead of 'show-status'
Fabian Keil [Mon, 26 Jun 2017 12:09:43 +0000 (12:09 +0000)]
Remove list of supposedly declared functions from a comment
The list was out of date and people who care about the
information can simply scroll down a bit.
Fabian Keil [Mon, 26 Jun 2017 12:09:30 +0000 (12:09 +0000)]
Unblock .golang.org/
Fabian Keil [Thu, 8 Jun 2017 13:13:48 +0000 (13:13 +0000)]
Skip a regex if we don't need the captured result
At least in theory this is more efficient but the gains
don't seem impressive enough to be clearly measurable with
real world log files.
At least it looks faster now ...
Fabian Keil [Thu, 8 Jun 2017 13:13:26 +0000 (13:13 +0000)]
get_content_length(): Replace an assertion with a compile-time check
Fabian Keil [Thu, 8 Jun 2017 13:12:45 +0000 (13:12 +0000)]
Remove a mysterious comment with a GNU FDL link
... as it isn't useful and could confuse license scanners.
In May 2002 it was briefly claimed that "this document" was covered
by the GNU FDL. The commit message (r1.5) doesn't explain the motivation
or whether all copyright holders were actually asked and agreed to the
declared license change.
It's thus hard to tell whether or not the license change was legit,
but luckily two days later the "doc license" was "put" "back to GPL"
anyway (r1.6).
At the same time the offending comment with a link to the FDL
(not the GPL) was added for no obvious reason.
Now it's gone again.
Fabian Keil [Thu, 8 Jun 2017 13:11:08 +0000 (13:11 +0000)]
Let write_pid_file() terminate if the pid file can't be opened
Logging the issue at info level is unlikely to help.
Fabian Keil [Thu, 8 Jun 2017 13:10:42 +0000 (13:10 +0000)]
Rebuild HTML docs
Sponsored by: Robert Klemme
Fabian Keil [Thu, 8 Jun 2017 13:09:45 +0000 (13:09 +0000)]
Rebuild AUTHORS
Fabian Keil [Thu, 8 Jun 2017 13:09:34 +0000 (13:09 +0000)]
Regenerate config file with 'receive-buffer-size' and 'trusted-cgi-referer' sections
Sponsored by: Robert Klemme
Fabian Keil [Thu, 8 Jun 2017 13:08:39 +0000 (13:08 +0000)]
Add a small fuzzing section to the developer documentation
Fabian Keil [Thu, 8 Jun 2017 13:08:11 +0000 (13:08 +0000)]
Add Johan Sintorn as contributor
He reporting a performance issue in 2015 (SF#894, jbsockets.c,v 1.133).
Fabian Keil [Thu, 8 Jun 2017 13:05:09 +0000 (13:05 +0000)]
Fix indentation in handle_established_connection()
Fabian Keil [Thu, 8 Jun 2017 13:04:56 +0000 (13:04 +0000)]
rfc2553_connect_to(): Properly detect and log when poll() reached the time out
Previously this was logged as:
Could not connect to [...]: No error: 0.
which isn't very helpful.
The select() code path doesn't look like it would handle timeouts
properly either but apparently nobody noticed this yet ...
Sponsored by: Robert Klemme
Fabian Keil [Thu, 8 Jun 2017 13:04:34 +0000 (13:04 +0000)]
Fix indentation
Fabian Keil [Sun, 4 Jun 2017 14:43:31 +0000 (14:43 +0000)]
Let sockaddr_storage_to_ip() return void
The previous failure conditions weren't (supposed to be)
reachable and weren't consistently checked anyway.
Fabian Keil [Sun, 4 Jun 2017 14:43:10 +0000 (14:43 +0000)]
Let sockaddr_storage_to_ip() assert that the address family is AF_INET or AF_INET6
Privoxy currently doesn't support any other address families
so there's no need to pretent to handle them.
Fabian Keil [Sun, 4 Jun 2017 14:42:54 +0000 (14:42 +0000)]
Let sockaddr_storage_to_ip() assert that addr isn't NULL
Calling the function with a NULL pointer is unreasonable,
we currently don't do it (intentionally) and shouldn't start
to do it (intentionally) in the future.
Fabian Keil [Sun, 4 Jun 2017 14:42:32 +0000 (14:42 +0000)]
Relocate the DEFAULT_KEEP_ALIVE_TIMEOUT definition to loadcfg.c
It's no longer referenced anywhere else.
Fabian Keil [Sun, 4 Jun 2017 14:42:13 +0000 (14:42 +0000)]
Remove code that has been pointless since 2009
This should have been done with gateway.c r1.52 which
rendered the global keep_alive_timeout obsolete.