X-Git-Url: http://www.privoxy.org/gitweb/?a=blobdiff_plain;f=doc%2Fsource%2Fchangelog.sgml;h=7025d15588220c41d38e244551ed96bd0b20fc75;hb=3f9f7065e662a7c78f93d3f97ebe40452605976a;hp=f0afc1b3a0892b9ef0c8cc3823f0be5d83dfa51a;hpb=30cfc09cf02d40c8ec3848e770413d982315cc08;p=privoxy.git diff --git a/doc/source/changelog.sgml b/doc/source/changelog.sgml index f0afc1b3..7025d155 100644 --- a/doc/source/changelog.sgml +++ b/doc/source/changelog.sgml @@ -1,11 +1,9 @@ - - Privoxy 3.0.22 stable is mainly a bug-fix - release, it also has a couple of new features, though. - Note that the first two entries in the ChangeLog below refer to security - issues: - + + + Privoxy 3.0.34 fixes a few + minor bugs and comes with a couple of general improvements + and new features. + + + Changes in Privoxy 3.0.34 stable: + @@ -38,51 +39,68 @@ - Fixed a memory leak when rejecting client connections due to - the socket limit being reached (CID 66382). This affected - Privoxy 3.0.21 when compiled with IPv6 support (on most - platforms this is the default). + Improve the handling of chunk-encoded responses by buffering the data + even if filters are disabled and properly keeping track of where the + various chunks are supposed to start and end. Previously Privoxy would + merely check the last bytes received to see if they looked like the + last-chunk. This failed to work if the last-chunk wasn't received in one + read and could also result in actual data being misdetected + as last-chunk. + Should fix: SF support request #1739. + Reported by: withoutname. - Fixed an immediate-use-after-free bug (CID 66394) and two - additional unconfirmed use-after-free complaints made by - Coverity scan (CID 66391, CID 66376). + remove_chunked_transfer_coding(): Refuse to de-chunk invalid data + Previously the data could get corrupted even further. + Now we simply pass the unmodified data to the client. - Actually show the FORCE_PREFIX value on the show-status page. + gif_deanimate(): Tolerate multiple image extensions in a row. + This allows to deanimate all the gifs on: + https://commons.wikimedia.org/wiki/Category:Animated_smilies + Fixes SF bug #795 reported by Celejar. - Properly deal with Keep-Alive headers with timeout= parameters - If the timeout still can't be parsed, use the configured - timeout instead of preventing the client from keeping the - connection alive. Fixes #3615312/#870 reported by Bernard Guillot. + OpenSSL generate_host_certificate(): Use X509_get_subject_name() + instead of X509_get_issuer_name() to get the issuer for generated + website certificates so there are no warnings in the browser when using + an intermediate CA certificate instead of a self-signed root certificate. + Problem reported and patch submitted by Chakib Benziane. - Not using any filter files no longer results in warning messages - unless an action file is referencing header taggers or filters. - Reported by Stefan Kurtz in #3614835. + can_filter_request_body(): Fix a log message that contained a spurious u. - Fixed a bug that prevented Privoxy from reusing some reusable - connections. Two bit masks with different purpose unintentionally - shared the same bit. + handle_established_connection(): Check for pending TLS data from the client + before checking if data is available on the connection. + The TLS library may have already consumed all the data from the client + response in which case poll() and select() will not detect that data is + available to be read. + Sponsored by: Robert Klemme. - A couple of additional bugs were discovered by Coverity Scan. - The fixes that are not expected to affect users are not explicitly - mentioned here, for details please have a look at the CVS logs. + ssl_send_certificate_error(): Don't crash if there's no certificate + information available. This is only relevant when Privoxy is built with + wolfSSL 5.0.0 or later (code not yet published). Earlier wolfSSL versions + or the other TLS backends don't seem to trigger the crash. + + + + + socks5_connect(): Add support for target hosts specified as IPv4 address + Previously the IP address was sent as domain. @@ -94,86 +112,74 @@ - Introduced negative tag patterns NO-REQUEST-TAG and NO-RESPONSE-TAG. - They apply if no matching tag is found after parsing client or - server headers. + Add a client-body-tagger action which creates tags based on + the content of the request body. + Sponsored by: Robert Klemme. - 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:". - External filter support is experimental, not compiled by default - and known not to work on all platforms. + When client-body filters are enabled, buffer the whole request + before opening a connection to the server. + Makes it less likely that the server connection times out + and we don't open a connection if the buffering fails anyway. + Sponsored by: Robert Klemme. - Add support for the 'PATCH' method as defined in RFC5789. + Add periods to a couple of log messages. - Reject requests with unsupported Expect header values. - Fixes a couple of Co-Advisor tests. + accept_connection(): Add missing space to a log message. - Normalize the HTTP-version in forwarded requests and responses. - This is an explicit RFC 2616 MUST and RFC 7230 mandates that - intermediaries send their own HTTP-version in forwarded - messages. + Initialize ca-related defaults with strdup_or_die() so errors + aren't silently ignored. - Server 'Keep-Alive' headers are no longer forwarded. From a user's - point of view it doesn't really matter, but RFC 2616 (obsolete) - mandates that the header is removed and this fixes a Co-Advisor - complaint. + make_path: Use malloc_or_die() in cases where allocation errors + were already fatal anyway. - Change declared template file encoding to UTF-8. The templates - 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. + handle_established_connection(): Improve an error message slightly. - Do not pass rejected keep-alive timeouts to the server. It might - not have caused any problems (we know of), but doing the right - thing shouldn't hurt either. + receive_client_request(): Reject https URLs without CONNECT request. - Let log_error() use its own buffer size #define to make changing - the log buffer size slightly less inconvenient. + Include all requests in the statistics if mutexes are available. + Previously in case of reused connections only the last request got + counted. The statistics still aren't perfect but it's an improvement. - Turned single-threaded into a "proper" toggle directive with arguments. + Add read_socks_reply() and start using it in socks5_connect() + to apply the socket timeout more consistently. - CGI templates no longer enforce new windows for some links. + socks5_connect(): Deal with domain names in the socks reply - Remove an undocumented workaround ('HOST' header removal) for - an Apple iTunes bug that according to #729900 got fixed in 2003. + Add a filter for bundeswehr.de that hides the cookie and + privacy info banner. @@ -185,110 +191,89 @@ - The pattern 'promotions.' is no longer being blocked. - Reported by rakista in #3608540. - - - - - Disable fast-redirects for .microsofttranslator.com/. - - - - - Disable filter{banners-by-size} for .dgb-tagungszentren.de/. - - - - - Add adn.speedtest.net as a site-specific unblocker. - Support request #3612908. + Disable filter{banners-by-size} for .freiheitsfoo.de/. - Disable filter{banners-by-size} for creativecommons.org/. + Disable filter{banners-by-size} for freebsdfoundation.org/. - Block requests to data.gosquared.com/. Reported by cbug in #3613653. + Disable fast-redirects for consent.youtube.com/. - Unblock .conrad./newsletter/. Reported by David Bo in #3614238. + Block requests to ups.xplosion.de/. - Unblock .bundestag.de/. + Block requests for elsa.memoinsights.com/t. - Unblock .rote-hilfe.de/. + Fix a typo in a test. - Disable fast-redirects for .facebook.com/plugins/like.php. + Disable fast-redirects for launchpad.net/. - Unblock Stackexchange popup URLs that aren't used to serve ads. - Reported by David Wagner in #3615179. + Unblock .eff.org/. - Disable fast-redirects for creativecommons.org/. + Stop unblocking .org/.*(image|banner) which appears to be too generous + The example URL http://www.gnu.org/graphics/gnu-head-banner.png is + already unblocked due to .gnu.org being unblocked. - Unblock .stopwatchingus.info/. + Unblock adfd.org/. - Block requests for .adcash.com/script/. - Reported by Tyrexionibus in #3615289. + Disable filter{banners-by-link} for .eff.org/. - Disable HTML filters if the response was tagged as JavaScript. - Filtering JavaScript code with filters intended to deal with HTML - is usually a waste of time and, more importantly, may break stuff. + Block requests to odb.outbrain.com/. - 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. + Disable fast-redirects for .gandi.net/. - Unblock "adina*." Fixes #919 reported by Morton A. Goldberg. + Disable fast-redirects{} for .onion/.*/status/. - Block '/.*DigiAd'. + Disable fast-redirects{} for twitter.com/.*/status/. - Unblock 'adele*.'. Reported by Adele Lime in #1663. + Unblock pinkstinks.de/. - Disable banners-by-size for kggp.de/. + Disable fast-redirects for .hagalil.com/. @@ -296,28 +281,25 @@ - Filter file improvements & bug fixes: + Privoxy-Log-Parser: - Decrease the chances that js-annoyances creates invalid JavaScript. - Submitted by John McGowan on ijbswa-users@. + Bump version to 0.9.5. - Let the msn filter hide 'related' ads again. + Highlight more log messages. - Remove a stray '1' in the 'html-annoyances' filter. - - - - - Prevent img-reorder from messing up img tags with empty src - attributes. Fixes #880 reported by Duncan. + Highlight the Crunch reason only once. Previously the "crunch reason" + could also be highlighted when the URL contained a matching string. + The real crunch reason only occurs once per line, so there's no need + to continue looking for it after it has been found once. + While at it, add a comment with an example log line. @@ -325,110 +307,68 @@ - Documentation improvements: + uagen: - Updated the 'Would you like to donate?' section. - - - - - Note that invalid forward-override{} parameter syntax isn't - detected until the parameter is used. - - - - - Add another +redirect{} example: a shortcut for illumos bugs. - - - - - Make it more obvious that many operating systems support log - rotation out of the box. - - - - - Fixed dead links. Reported by Mark Nelson in #3614557. - - - - - Rephrased the 'Why is the configuration so complicated?' answer - to be slightly less condescending. Anonymously suggested in #3615122. - - - - - Be more explicit about accept-intercepted-requests's lack of MITM support. - - - - - Make 'demoronizer' FAQ entries more generic. - - - - - Add an example hostname to the --pre-chroot-nslookup description. - - - - - Add an example for a host pattern that matches an IP address. + Bump version to 1.2.4. - Rename the 'domain pattern' to 'host pattern' as it may - contain IP addresses as well. + Update BROWSER_VERSION and BROWSER_REVISION to 102.0 + to match the User-Agent of the current Firefox ESR. - Recommend forward-socks5t when using Tor. It seems to work fine and - modifying the Tor configuration to profit from it hasn't been necessary - for a while now. + Explicitly document that changing the 'Gecko token' is suspicious. - Add another redirect{} example to stress that redirect loops can - and should be avoided. + Consistently use a lower-case 'c' as copyright symbol. - The usual spelling and grammar fixes. Parts of them were - reported by Reuben Thomas in #3615276. + Bump copyright. - Mention the PCRS option letters T and D in the filter section. + Add 'aarch64' as Linux architecture. - Clarify that handle-as-empty-doc-returns-ok is still useful - and will not be removed without replacement. + Add OpenBSD architecture 'arm64'. - Note that security issues shouldn't be reported using the bug tracker. + Stop using sparc64 as FreeBSD architecture. + It hasn't been supported for a while now. - + + + + + + + Build system: + - Clarify what Privoxy does if both +block{} and +redirect{} apply. + Makefile: Add a 'dok' target that depends on the 'error' target + to show the "You are not using GNU make or did nor run configure" + message. - Removed the obsolete bookmarklets section. + configure: Fix --with-msan option. + Also (probably) reported by Andrew Savchenko. @@ -436,37 +376,42 @@ - Build system improvements: + macOS build system: - Let --with-group properly deal with secondary groups. - Patch submitted by Anatoly Arzhnikov in #3615187. + Enable HTTPS inspection when building the macOS binary + (using OpenSSL as TLS library). - - - - Fix web-actions target. - - + + + + + + + Documentation: + - Add a web-faq target that only updates the FAQ on the webserver. + Add OpenSSL to the list of libraries that may be licensed under the + Apache 2.0 license in which case the linked Privoxy binary has to be + distributed under the GPLv3 or later. - Remove already-commented-out non-portable DOSFILTER alternatives. + config: Fix the documented ca-directory default value. + Reported by avoidr. - Remove the obsolete targets dok-put and dok-get. + Rebuild developer-manual and tidy with 'HTML Tidy for FreeBSD version 5.8.0'. - Add a sf-shell target. + Update developer manual with new macOS packaging instructions.