Fabian Keil [Thu, 25 May 2017 11:17:11 +0000 (11:17 +0000)]
Make it more obvious that the --with-fdsetsize configure switch is pointless if poll() is available
Fabian Keil [Thu, 25 May 2017 11:16:56 +0000 (11:16 +0000)]
Never use select() when poll() is available
On most platforms select() is limitted by FD_SETSIZE while
poll() is not. This was a scaling issue for multi-user setups.
Using poll() has no downside other than the usual risk
that code modifications may introduce new bugs that have
yet to be found and fixed.
At least in theory this commit could also reduce the latency
when there are lots of connections and select() would use
"bit fields in arrays of integers" to store file descriptors.
Another side effect is that Privoxy no longer has to stop
monitoring the client sockets when pipelined requests are
waiting but can't be read yet.
This code keeps the select()-based code behind ifdefs for
now but hopefully it can be removed soonish to make the
code more readable.
Sponsored by: Robert Klemme
Fabian Keil [Thu, 25 May 2017 11:16:04 +0000 (11:16 +0000)]
Reduce chat()'s stack usage
... by removing a buffer that was left from a previous
refactoring.
Sponsored by: Robert Klemme
Fabian Keil [Thu, 25 May 2017 11:15:34 +0000 (11:15 +0000)]
Register missing dependencies for fuzz.c and client-tags.c
Previously project.h modificiations would not result in
rebuilds of fuzz.o and client-tags.o. This could cause
SIGBUS crashes in case of structure changes etc.
Fabian Keil [Thu, 25 May 2017 11:14:53 +0000 (11:14 +0000)]
Properly disable fuzz support when it hasn't been requested
Previously fuzz.o was compiled and linked in anyway
while the code was unreachable.
Fabian Keil [Thu, 25 May 2017 11:14:38 +0000 (11:14 +0000)]
Add missing space
Fabian Keil [Thu, 25 May 2017 11:14:27 +0000 (11:14 +0000)]
Add a 'reproducible-tarball-dist' target
It's currently separate from the "tarball-dist" target
because it requires a tar implementation with mtree spec
support.
It's far from being perfect and does not enforce a
reproducible mode, but it's better than nothing.
After the git migration it can probably be removed anyway.
Fabian Keil [Sat, 20 May 2017 09:28:11 +0000 (09:28 +0000)]
Fix a path pattern explanation by extending it
Issue pointed out by Lee on privoxy-users@.
Fabian Keil [Sat, 20 May 2017 09:27:54 +0000 (09:27 +0000)]
Fix a path pattern explanation
Fabian Keil [Sat, 20 May 2017 09:27:17 +0000 (09:27 +0000)]
Fix typo
Fabian Keil [Sat, 20 May 2017 09:27:07 +0000 (09:27 +0000)]
Add a web-homepage target
... which only updates the index.html
Fabian Keil [Sat, 20 May 2017 09:25:14 +0000 (09:25 +0000)]
Add #158: Use a single thread to wait for new requests on reused client connections
Fabian Keil [Sat, 20 May 2017 09:25:00 +0000 (09:25 +0000)]
Add #157: Add a directive to control the currently hardcoded receive-buffer size
Fabian Keil [Sat, 20 May 2017 09:24:35 +0000 (09:24 +0000)]
Remove a pointless comment
Fabian Keil [Sat, 20 May 2017 09:24:08 +0000 (09:24 +0000)]
Remove pointless-looking bzero() define for OS/2
bzero() isn't used anywhere in the file.
Fabian Keil [Thu, 4 May 2017 14:45:21 +0000 (14:45 +0000)]
Regenerate homepage with updated sponsor footer
Fabian Keil [Thu, 4 May 2017 14:35:02 +0000 (14:35 +0000)]
Remove ChameleonJohn from the sponsor footer on the homepage
The sponsor period started more than a year ago and
presumably they don't want to sponsor Privoxy for
another year (I asked but didn't get a reply).
Fabian Keil [Thu, 4 May 2017 14:34:28 +0000 (14:34 +0000)]
Bump copyright
Fabian Keil [Thu, 4 May 2017 14:34:18 +0000 (14:34 +0000)]
Use arc4random() if it's available
While Privoxy doesn't need high quality pseudo-random numbers
there's no reason not to use them when we can and this silences
a warning emitted by code checkers that can't tell whether or not
the quality matters.
Fabian Keil [Thu, 4 May 2017 14:33:17 +0000 (14:33 +0000)]
Show the FEATURE_EXTERNAL_FILTERS status on the status page
Better late than never.
Previously a couple of tests weren't executed as
Privoxy-Regression-Test couldn't detect that the
FEATURE_EXTERNAL_FILTERS dependency was sattisfied.
Fabian Keil [Thu, 27 Apr 2017 17:14:10 +0000 (17:14 +0000)]
Unblock msdn.microsoft.com/
It (presumably) isn't used to serve the kind of ads Privoxy should
block by default but happens to serve lots of pages with URLs that
are likely to result in false positives.
Reported by bugreporter1694 in AF#939.
Fabian Keil [Thu, 20 Apr 2017 11:12:12 +0000 (11:12 +0000)]
Bump copyright
Fabian Keil [Thu, 20 Apr 2017 11:11:43 +0000 (11:11 +0000)]
Add a client-header-tagger{client-ip-address} example
Fabian Keil [Thu, 20 Apr 2017 11:11:22 +0000 (11:11 +0000)]
Use https in URLs for our website
Fabian Keil [Thu, 20 Apr 2017 11:10:54 +0000 (11:10 +0000)]
Add TODO #156: Reject socks requests with an explicit error message
Fabian Keil [Sun, 9 Apr 2017 09:11:46 +0000 (09:11 +0000)]
Disable gif deanimation for requests tagged with CSS-REQUEST
The action will ignore content that isn't considered text
anyway and explicitly disabling it makes this more obvious
if "action" debugging (debug 65536) is enabled while
"gif deanimation" debugging (debug 256) isn't.
As noted by Lee this could have been done in r1.333 already.
Fabian Keil [Mon, 27 Mar 2017 10:22:27 +0000 (10:22 +0000)]
FAQ: Fix invalid syntax added in r2.134
Fabian Keil [Mon, 27 Mar 2017 10:21:18 +0000 (10:21 +0000)]
Rebuild website index with updated copyright and sponsor trailer
Fabian Keil [Mon, 27 Mar 2017 10:20:52 +0000 (10:20 +0000)]
Bump copyright
Fabian Keil [Mon, 27 Mar 2017 10:20:42 +0000 (10:20 +0000)]
Move the 'Become a sponsor' link into the SGML source
... instead of inserting it at build-time through the
dok-webserver target.
Fabian Keil [Mon, 27 Mar 2017 10:20:27 +0000 (10:20 +0000)]
Update sponsor trailer on the website to include the new sponsor 7binaryoptions.com
Fabian Keil [Mon, 27 Mar 2017 10:19:42 +0000 (10:19 +0000)]
Use https:// for the website
Fabian Keil [Mon, 27 Mar 2017 10:19:31 +0000 (10:19 +0000)]
Bump copyright
Fabian Keil [Mon, 27 Mar 2017 10:19:19 +0000 (10:19 +0000)]
Explicitly disable HTML filters for requests with CSS-REQUEST tag
The filters are unlikely to break CSS files but executing
them without (intentionally) getting any hits is a waste of
cpu time and makes the log more noisy when running with
"debug 64".
Fabian Keil [Wed, 8 Mar 2017 13:21:52 +0000 (13:21 +0000)]
Fix spelling in a comment added in r1.173
Fabian Keil [Wed, 8 Mar 2017 13:16:26 +0000 (13:16 +0000)]
Remove the 'View the source code version numbers' link from the CGI menu
It's rarely needed and likely to be completely removed
after the git migration anyway.
Fabian Keil [Wed, 8 Mar 2017 13:16:08 +0000 (13:16 +0000)]
Add TODO #155: The sig_handler() shouldn't call log_error()
Fabian Keil [Wed, 8 Mar 2017 13:15:49 +0000 (13:15 +0000)]
Explain why SIGPIPE is ignored and remove the 'FIXME: Why?' about it
Fabian Keil [Wed, 8 Mar 2017 13:15:25 +0000 (13:15 +0000)]
Stop suggesting that Privoxy is an anonymizing proxy
The term could lead to Privoxy users overestimating
what it can do on its own (without Tor).
Fabian Keil [Wed, 8 Mar 2017 13:13:18 +0000 (13:13 +0000)]
Ditch FEATURE_IMAGE_DETECT_MSIE
It's an obsolete workaround we inherited from Junkbuster
and was already disabled by default.
Users that feel the urge to work around issues with
image requests coming from an Internet Explorer version
from more than 15 years ago can still do this using tags.
Fabian Keil [Wed, 8 Mar 2017 13:11:38 +0000 (13:11 +0000)]
Add TODO #154: Underline links in docs and cgi pages
Fabian Keil [Wed, 8 Mar 2017 13:11:25 +0000 (13:11 +0000)]
Add TODO #153: Catch SIGINT and use it to close the listen socket
... but serve remaining connections.
Fabian Keil [Wed, 8 Mar 2017 13:11:15 +0000 (13:11 +0000)]
Remove TODO #15: Block untrusted CGI requests to sensitive pages with status code 403
I recently implemented this without remembering that I had
previously added it to the TODO list.
Fabian Keil [Wed, 8 Mar 2017 13:11:01 +0000 (13:11 +0000)]
Bump copyright
Fabian Keil [Wed, 8 Mar 2017 13:10:52 +0000 (13:10 +0000)]
Make it more obvious that SPI accepts Paypal, too
Currently most donations are made through the Paypal account
managed bei Zwiebelfreunde e.V. and a more even distribution
would be useful.
Fabian Keil [Wed, 8 Mar 2017 13:10:33 +0000 (13:10 +0000)]
Simplify template_fill_for_cgi()
Fabian Keil [Fri, 3 Mar 2017 17:43:35 +0000 (17:43 +0000)]
privoxy-log-parser: Don't gather host and resource statistics if they aren't requested
While the performance impact seems negible this significantly
reduces the memory usage if there are lots of requests.
Fabian Keil [Fri, 3 Mar 2017 17:43:11 +0000 (17:43 +0000)]
privoxy-log-parser: Prevent warnings when there are no connection timeouts or failures in the logs
The regressions were introduced in r1.165 and r1.166
and thus aren't relevant for the ChangeLog.
Fabian Keil [Fri, 24 Feb 2017 12:00:25 +0000 (12:00 +0000)]
privoxy-log-parser: Bump version as the behaviour (slightly) changed
Fabian Keil [Fri, 24 Feb 2017 12:00:16 +0000 (12:00 +0000)]
privoxy-log-parser: Bump copyright
Fabian Keil [Fri, 24 Feb 2017 12:00:07 +0000 (12:00 +0000)]
privoxy-log-parser: Count connection failures as well in statistics mode
Sponsored by: Robert Klemme
Fabian Keil [Fri, 24 Feb 2017 11:59:58 +0000 (11:59 +0000)]
privoxy-log-parser: Count connection timeouts as well in statistics mode
Sponsored by: Robert Klemme
Fabian Keil [Fri, 24 Feb 2017 11:59:44 +0000 (11:59 +0000)]
Consistently use strdup_or_die() instead of strdup()
Allocation failures aren't expected here and using strdup_or_die()
allows to remove a couple of explicit error checks which slightly
reduces the size of the binary.
Fabian Keil [Mon, 20 Feb 2017 17:28:52 +0000 (17:28 +0000)]
Change 'Sponsor FAQ' link text in the homepage footer to 'Become a sponsor'
Suggested by Ian.
Fabian Keil [Mon, 20 Feb 2017 15:57:40 +0000 (15:57 +0000)]
privoxy-log-parser: Fix an 'uninitialized value' warning
... when generating statistics for a log file without response headers.
While privoxy-log-parser was supposed to detect this already,
the check was flawed and the message the user didn't see was
somewhat confusing anyway.
Now the message is less confusing, more helpful and actually printed.
Reported by: Robert Klemme
Fabian Keil [Mon, 20 Feb 2017 13:49:44 +0000 (13:49 +0000)]
Rebuild user manual for 3.0.27 UNRELEASED
Fabian Keil [Mon, 20 Feb 2017 13:49:27 +0000 (13:49 +0000)]
Rebuild AUTHORS
Fabian Keil [Mon, 20 Feb 2017 13:49:03 +0000 (13:49 +0000)]
Bump copyright
Fabian Keil [Mon, 20 Feb 2017 13:48:54 +0000 (13:48 +0000)]
Factor create_client_specific_tag() out of add_tag_for_client()
... to reduce code duplication and make bugs like the one
fixed in r1.8 less likely.
Fabian Keil [Mon, 20 Feb 2017 13:47:51 +0000 (13:47 +0000)]
add_tag_for_client(): Set time_to_live properly
Previously the time_to_live was always set for the first tag.
Attempts to temporarily enable a tag would result in enabling
it permanently unless no tag was enabled already.
D'oh.
Fabian Keil [Mon, 20 Feb 2017 13:47:04 +0000 (13:47 +0000)]
Insert a refresh tag into the /client-tags cgi page
... when serving it while a client-specific tag
is temporarily enabled.
This makes it less likely that the user ends up
looking at tag state that is out of date.
Fabian Keil [Mon, 20 Feb 2017 13:46:25 +0000 (13:46 +0000)]
Let rsync take care of the permissions on the remote side
... instead of clowning around with find after rsync is done.
Fabian Keil [Mon, 20 Feb 2017 13:45:36 +0000 (13:45 +0000)]
Remove a superfluous 'simply' and replace another one
Fabian Keil [Mon, 20 Feb 2017 13:45:25 +0000 (13:45 +0000)]
Remove a superfluous 'simply'
Fabian Keil [Mon, 20 Feb 2017 13:45:14 +0000 (13:45 +0000)]
Use absolute URLs in the client-tag forms
It's more consistent with the rest of the CGI page
URLs and makes it more convenient to copy the forms
to external pages.
Fabian Keil [Mon, 20 Feb 2017 13:44:54 +0000 (13:44 +0000)]
Document the "trusted-cgi-referer" directive
Sponsored by: Robert Klemme
Fabian Keil [Mon, 20 Feb 2017 13:44:32 +0000 (13:44 +0000)]
Add a 'trusted-cgi-referrer' directive
It allows to configure another page or site that can be used
to reach sensitive CGI ressources.
Example:
trusted-cgi-referer http://www.example.org/blafasel
Currently the parameter is a vanilla string (not a regular
expression) and has to match the beginning of the Referer
the client used to reach a harmful ressource.
Sponsored by: Robert Klemme
Fabian Keil [Mon, 23 Jan 2017 16:23:16 +0000 (16:23 +0000)]
Add Yossi Zahn as contributor
Fabian Keil [Mon, 23 Jan 2017 16:23:03 +0000 (16:23 +0000)]
Adjust contributor name order to get closer to alphabetical order again
Fabian Keil [Mon, 23 Jan 2017 16:12:18 +0000 (16:12 +0000)]
Revert r1.165 which didn't perform as advertised
While the idea was to use "https:// when creating links
for the user manual on the website", the actual effect
was to use "https://" when Privoxy was supposed to serve
the user manual itself.
Reverting the commit is sufficient as the "use https://
when creating links for the user manual on the website"
use case is already covered by project.h r1.214.
Reported by Yossi Zahn on Privoxy-devel@.
Fabian Keil [Mon, 23 Jan 2017 16:10:28 +0000 (16:10 +0000)]
Fix a comment
Fabian Keil [Mon, 23 Jan 2017 13:06:53 +0000 (13:06 +0000)]
Add #152: Fix CSS references in the website documentation
Fabian Keil [Mon, 23 Jan 2017 13:06:41 +0000 (13:06 +0000)]
Add fetch tests for /toggle-client-tag
Fabian Keil [Mon, 23 Jan 2017 13:06:31 +0000 (13:06 +0000)]
Update /client-tags test now that a trusted Referer is no longer required
Fabian Keil [Mon, 23 Jan 2017 13:06:19 +0000 (13:06 +0000)]
Bump for-privoxy-version to 3.0.27
... as we now rely on untrusted cgi request being
rejected with status code 403 (instead of 200).
Fabian Keil [Mon, 23 Jan 2017 13:05:58 +0000 (13:05 +0000)]
Bumpy copyright
Fabian Keil [Mon, 23 Jan 2017 13:05:50 +0000 (13:05 +0000)]
Update test for /send-stylesheet and add another one
Fabian Keil [Mon, 23 Jan 2017 13:05:26 +0000 (13:05 +0000)]
cgi_error_disabled(): Use status code 403 and an appropriate response line
Fabian Keil [Mon, 23 Jan 2017 13:05:13 +0000 (13:05 +0000)]
Bump copyright
Fabian Keil [Mon, 23 Jan 2017 13:04:58 +0000 (13:04 +0000)]
Use a dedicated cgi handler to deal with tag-toggle requests
As a result the /client-tags page is now safe to reach without
trusted Referer header which makes bookmarking or linking to
it more convenient.
Finally, refreshing the /client-tags page to show the
current state can no longer unintentionally repeat the
previous toggle request.
Fabian Keil [Mon, 23 Jan 2017 13:03:26 +0000 (13:03 +0000)]
Fix a TODO reference
Fabian Keil [Mon, 23 Jan 2017 13:03:17 +0000 (13:03 +0000)]
Remove an obsolete reference to Privoxy 3.0.17
Fabian Keil [Mon, 23 Jan 2017 13:03:06 +0000 (13:03 +0000)]
Suggest to log applying actions as well when reproducing problems
Fabian Keil [Mon, 23 Jan 2017 13:02:45 +0000 (13:02 +0000)]
Remove a couple of SourceForge references in copyright headers
Fabian Keil [Mon, 23 Jan 2017 13:02:18 +0000 (13:02 +0000)]
templates: Consistently use https:// when linking to our website
Fabian Keil [Mon, 23 Jan 2017 13:01:56 +0000 (13:01 +0000)]
templates: Remove SourceForge references in Copyright header
Fabian Keil [Mon, 23 Jan 2017 13:01:37 +0000 (13:01 +0000)]
templates: Remove a couple of SourceForge references in a comment
While at it, fix the grammar.
Fabian Keil [Mon, 23 Jan 2017 13:00:51 +0000 (13:00 +0000)]
templates: Move the site-specific documentation block before the generic one
While most Privoxy installations don't have a site-specific
documentation block, in cases were it exists it's likely to
be more relevant than the generic one.
Showing it first makes it less likely that users stop reading
before they reach it, especially on pages that don't fit on
the screen.
Fabian Keil [Mon, 23 Jan 2017 12:59:45 +0000 (12:59 +0000)]
Bump SMGL entities for 3.0.27 UNRELEASED
Fabian Keil [Thu, 12 Jan 2017 14:27:47 +0000 (14:27 +0000)]
Regenerate HTML docs with recent changes
configure.in has been locally reverted to r1.204
to get 3.0.26 stable documentation that can be put
on the webserver before the next release.
Tidied with tidy 5.2.0 from http://www.html-tidy.org/.
As an expected side effect the diff is bloated enough
to be considered a "rewrite" by git (again), but using
a more recent tidy version should make it easier to
prevent frequent diff bloat in the future when building
on different platforms.
As an unexpected side-effect some pre tags are messed
up now and their first line contains bogus white-space
that causes rendering issues. This regression should
be analysed and fixed or worked around before the next
release but doesn't seem critical.
It's conceivable that the tidy upgrade caused less
obvious regressions that have yet to be found.
Fabian Keil [Thu, 12 Jan 2017 14:20:07 +0000 (14:20 +0000)]
Add Clint Adams as contributor (Debian bug #848211)
Fabian Keil [Thu, 12 Jan 2017 14:19:58 +0000 (14:19 +0000)]
Unblock adventofcode.com/
Reported by Clint Adams in Debian bug #848211.
Fixes Roland's AF#937.
Fabian Keil [Thu, 12 Jan 2017 14:19:37 +0000 (14:19 +0000)]
Update copyright year and devel mailing list
Fabian Keil [Thu, 12 Jan 2017 14:19:27 +0000 (14:19 +0000)]
Explicitly mention that Privoxy binaries are built by individuals on their own systems
Buyer beware!
Fabian Keil [Thu, 12 Jan 2017 14:19:13 +0000 (14:19 +0000)]
Bump copyright
Fabian Keil [Thu, 12 Jan 2017 14:19:02 +0000 (14:19 +0000)]
Add a link to the sponsor FAQ to the sponsor section on the homepage
Fabian Keil [Thu, 12 Jan 2017 14:18:43 +0000 (14:18 +0000)]
Unblock adlibris.com
Reported by Wyrex in #935
Fabian Keil [Tue, 10 Jan 2017 12:13:32 +0000 (12:13 +0000)]
Update #69 to note that the autconf files can't be simply updated due to license issues
Fabian Keil [Tue, 10 Jan 2017 12:13:19 +0000 (12:13 +0000)]
Belately update #53 to note that the mailing lists moved away from SF
Ian Silvester [Tue, 3 Jan 2017 15:23:19 +0000 (15:23 +0000)]
Add Tobias Netzel as the OS X (PPC) packager