platforms. Initial patch submitted by Simon South in #3564815.
- Optionally try to sanity-check strptime() results before trusting them.
Broken strptime() implementations have caused problems in the past and
- the most recent offender seems to be FreeBSD's libc:
- http://www.freebsd.org/cgi/query-pr.cgi?pr=173421
+ the most recent offender seems to be FreeBSD's libc (standards/173421).
- When filtering is enabled, let Range headers pass if the range starts at
the beginning. This should work around (or at least reduce ) the video
playback issues with various Apple clients as reported by Duc in #3426305.
- On Windows, the logfile is now written before showing the GUI error
message which blocks until the user acknowledges it.
Reported by Adriaan in #3593603.
+ - Remove an unreasonable parameter limit in the CGI interface. The new
+ parameter limit depends on the memory available and is currently unlikely
+ to be reachable, due to other limits in both Privoxy and common clients.
+ Reported by Andrew on ijbswa-users@.
+ - Decrease the chances of parse failures after requests with unsupported
+ methods were sent to the CGI interface.
- Action file improvements:
- - Remove the comment that indicated that updated versions of this file are
- released on their own.
+ - Remove the comment that indicated that updated default.action versions
+ are released on their own.
- Block 'optimize.indieclick.com/' and 'optimized-by.rubiconproject.com/'
- Unblock 'adjamblog.wordpress.com/' and 'adjamblog.files.wordpress.com/'.
Reported by Ryan Farmer in #3496116.
- Spell 'refresh-tags' correctly. Reported by Don in #3571927.
- Sort manpage options alphabetically.
- Remove an incorrect sentence in the toggle section. The toggle state
- doesn't affect whether or not the Windows version uses the tray icon and
- having to toggle Privoxy off to not show the icon makes no sense anyway.
+ doesn't affect whether or not the Windows version uses the tray icon.
Reported by Zeno Kugy in #3596395.
- - Add the DNT header to the client-header-order example.
- Add new contributors since 3.0.19.
- Log message improvements:
- When stopping to watch a client socket due to pipelining, additionally log
the socket number.
- - log the client socket and its condition before closing it. This makes it
+ - Log the client socket and its condition before closing it. This makes it
more obvious that the socket actually gets closed and should help when
diagnosing problems like #3464439.
- In case of SOCKS5 failures, do not explicitly log the server's response.
"debug 32768" anyway. This reverts v1.81 and the follow-up bug fix v1.84.
- Relocate the connection-accepted message from listen_loop() to serve().
This way it's printed by the thread that is actually serving the
- connection which is nice when grepping for thread ids in log files. While
- at it, use an upper-case first character which is more consistent with the
- other log messages.
+ connection which is nice when grepping for thread ids in log files.
- Code cleanups:
- Remove compatibility layer for versions prior to 3.0 since it has been
Reported by Matthew Fischer in #3507301.
- Fix a typo in the no-zlib-support complaint. Patch submitted by Matthew
Fischer in #3507304.
- - Update an error message that still tried to print directive_hash as long
- Shorten ssplit()'s prototype by removing the last two arguments. We always
want to skip empty fields and ignore leading delimiters, so having
parameters for this only complicates the API.
- Turn family mismatches in match_sockaddr() into fatal errors.
- Let enlist_unique_header() verify that the caller didn't pass a header
containing either \r or \n.
- - Change the hashes used in load_config() to unsigned int.
- That's what hash_string() actually returns and using a potentiallly larger
- type is at best useless.
+ - Change the hashes used in load_config() to unsigned int. That's what
+ hash_string() actually returns and using a potentiallly larger type
+ is at best useless.
- Use privoxy_tolower() instead of vanilla tolower() with manual casting of
the argument.
+ - Catch ssplit() failures in parse_cgi_parameters().
- Privoxy-Regression-Test:
+ - Add an 'Overwrite condition' directive to skip any matching tests before
+ it. As it has a global scope, using it is more convenient than clowning
+ around with the Ignore directive.
+ - Log to STDOUT instead of STDERR.
+ - Include the Privoxy version in the output.
- Various grammar and spelling corrections in documentation and code.
- Additional tests for range requests with filtering enabled.
- Tests with mostly invalid range request.
- - Log to STDOUT instead of STDERR.
- Add a couple of hide-if-modified-since{} tests with different date formats.
- Cleaned up the format of the regression-tests.action file to match the
format of default.action.
- Remove the "Copyright" line from print_version(). When using --help, every
line of screen space matters and thus shouldn't be wasted on things the
user doesn't care about.
- - Fix comment typos.
- - Add an 'Overwrite condition' directive to skip any matching tests before
- it. As it has a global scope, using it is more convenient than clowning
- around with the Ignore directive.
- - Include the Privoxy version in the output.
- Privoxy-Log-Parser:
- Improve the --statistics performance by skipping sanity checks for input
- that shouldn't affect the results anyway. In my non-scientific benchmarks
- this reduces the runtime by about 45%. Also add a --strict-checks option
+ that shouldn't affect the results anyway. Add a --strict-checks option
that enables some of the checks again, just in case anybody cares.
- - Accept and highlight: Stopping to watch the client socket. There's already
- another request waiting.
- - Cleanup variable initialization in print_non_clf_message().
- - Properly highlight the new log messages from get_request_line().
- - Let get_percentage() show 0 of x as 0% even if x is 0 as well.
- - Accept and ignore: Enlisting (sorted|left-over) header ...
- - Accept the shiny new LOG_LEVEL_ACTIONS.
- - Accept and highlight: Closing client socket 5. Keep-alive: 0, Socket
- alive: 1. Data available: 0.
- - Stop suppressing messages about accepted client connections and highlight
- them properly.
- - Accept and highlight: Accepted connection from 10.0.0.1 on socket 5.
- - Accept and highlight: Continuing buffering server headers from socket 5.
- Bytes most recently read: 498.
- - Accept and highlight: Client request 4 arrived in time on socket 7.
- - Accept and highlight: Closing client socket 8. Keep-alive: 1. Socket
- alive: 0. Data available: 0. Configuration file change detected: 0.
- Requests received: 11.
- - Accept and highlight: Drained 180 bytes before closing socket 6.
- - Accept and highlight the extended log message for client sockets.
- - Accept and highlight: Tainting client socket 7 due to unread data.
- - Accept and highlight: Optimistically sending 318 bytes of client
- headers intended for www.privoxy.org.
- - Accept and highlight: Client request 8 has been pipelined on socket 7 and
- the socket is still alive.
- - Accept: There better be a request body.
- - Accept and highlight: Shifting 360 pipelined bytes by 360 bytes.
- - Accept and highlight: Multiple Content-Type headers detected. Removing and
- ignoring: Content-Type: text/html.
+ - The distribution of client requests per connection is included in
+ the --statistic output.
+ - The --accept-unknown-messages option has been removed and the behavior
+ is now the default.
+ - Accept and (mostly) highlight new log messages introduced with
+ Privoxy 3.0.20.
- uagen:
- - Bump generated Firefox version to 16.
-
-- CGI interface improvements & bug fixes:
- - Remove an unreasonable parameter limit in parse_cgi_parameters(). The new
- parameter limit depends on the memory available and is currently unlikely
- to be reachable, due to other limits in both Privoxy and common clients.
- Reported by Andrew on ijbswa-users@.
- - Catch ssplit() failures in parse_cgi_parameters().
- - Deal with unsupported methods sent to the CGI pages by discarding any
- data following the headers.
+ - Bump generated Firefox version to 17.
- GNUmakefile improvements:
- The dok-tidy target no longer taints documents with a tidy-mark
- Let w3m itself do the line wrapping for the config file. It works better
than fmt as it can honour pre tags causing less unintentional line breaks.
- Ditch a pointless '-r' passed to rm to delete files.
- - Prevent completely empty lines in configure and try to unfold
- unintentional line breaks.
- - Let the config-file target optimistically update the original. Most of the
- issues are fixed now and it makes diffing with git easier.
+ - The config-file target now requires less manual intervention and updates
+ the original config.
- Change WDUMP to generate ASCII. Add WDUMP_UTF8 to allow UTF-8 in the
AUTHORS file so the names are right.
- Stop pretending that lynx and links are supported for the documentation.
- configure improvements:
- On Haiku, do not pass -lpthread to the compiler. Haiku's pthreads
implementation is contained in its system library, libroot, so no
- additional library needs to be searched. Patch submitted by Simon South in
- #3564815.
+ additional library needs to be searched.
+ Patch submitted by Simon South in #3564815.
- Additional Haiku-specific improvements. Disable checks intended for
multi-user systems as Haiku is presently single-user. Group Haiku-specific
settings in their own section, following the pattern for Solaris, OS/2 and
AmigaOS. Add additional library-related settings to remove the need for
- providing configure with custom LDFLAGS. Submitted by Simon South in
- #3574538.
- - Several improvements for clarity, diffability and logic.
+ providing configure with custom LDFLAGS.
+ Submitted by Simon South in #3574538.
- *** Version 3.0.19 Stable ***
+*** Version 3.0.19 Stable ***
- Bug fixes:
- Prevent a segmentation fault when de-chunking buffered content.