2 File : doc/source/changelog.sgml
4 Purpose : Entity included in other project documents.
6 Copyright (C) 2013-2018 Privoxy Developers https://www.privoxy.org/
9 ======================================================================
10 This file used for inclusion with other documents only.
11 ======================================================================
13 If you make changes to this file, please verify the finished
14 docs all display as intended.
16 This file is included into:
23 The SGML ChangeLog can be generated with: utils/changelog2doc.pl ChangeLog
27 <application>Privoxy 3.0.29</application> fixes a couple of memory
28 leaks and introduces https inspection which allows to filter encrypted
29 requests and responses.
32 Changes in <application>Privoxy 3.0.29</application> stable:
41 Fixed memory leaks when a response is buffered and the buffer
42 limit is reached or Privoxy is running out of memory.
43 Commits bbd53f1010b and 4490d451f9b. OVE-20201118-0001.
44 Sponsored by: Robert Klemme
49 Fixed a memory leak in the show-status CGI handler when
50 no action files are configured. Commit c62254a686.
52 Sponsored by: Robert Klemme
57 Fixed a memory leak in the show-status CGI handler when
58 no filter files are configured. Commit 1b1370f7a8a.
60 Sponsored by: Robert Klemme
65 Fixes a memory leak when client tags are active.
66 Commit 245e1cf32. OVE-20201118-0004.
67 Sponsored by: Robert Klemme
72 Fixed a memory leak if multiple filters are executed
73 and the last one is skipped due to a pcre error.
74 Commit 5cfb7bc8fe. OVE-20201118-0005.
79 Prevent an unlikely dereference of a NULL-pointer that
80 could result in a crash if accept-intercepted-requests
81 was enabled, Privoxy failed to get the request destination
82 from the Host header and a memory allocation failed.
83 Commit 7530132349. CID 267165. OVE-20201118-0006.
88 Fixed memory leaks in the client-tags CGI handler when
89 client tags are configured and memory allocations fail.
90 Commit cf5640eb2a. CID 267168. OVE-20201118-0007.
95 Fixed memory leaks in the show-status CGI handler when memory
96 allocations fail. Commit 064eac5fd0 and commit fdee85c0bf3.
97 CID 305233. OVE-20201118-0008.
105 General improvements:
109 Added experimental https inspection support which allows to filter
110 https traffic. To enable it, install MbedTLS and configure with
111 --with-mbedtls, or install OpenSSL or LibreSSL and configure
113 Afterwards configure the directives in section 7 of the
114 config file and enable the +https-inspection action.
115 Initial MbedTLS-based code contributed by Vaclav Svec,
116 initial OpenSSL support contributed by Maxim Antonov.
117 With help from Nedzad Hrnjica and Ho+ Ho+ Ho+.
118 Integration and improvements sponsored by Robert Klemme.
123 pcrs: Request JIT compilation if it's supported and
124 the filter isn't dynamic. This can speed up filtering.
129 Added support for Brotli decompression.
130 Sponsored by: Robert Klemme
135 Added FEATURE_EXTENDED_STATISTICS to gather statistics for
136 block reasons and filter executions. To enable it, configure
137 with --enable-extended-statistics and visit
138 http://config.privoxy.org/show-status.
139 Sponsored by: Robert Klemme
144 Use the IP_FREEBIND socket option, if defined. This allows
145 Privoxy to bind to not-yet assigned IP addresses which is
146 useful in failover environments.
147 Patch by Sam Varshavchik.
152 Allow to use extended host patterns and vanilla host patterns
153 at the same time by prefixing extended host patterns with
154 "PCRE-HOST-PATTERN:". To enable this, configure with
155 --enable-pcre-host-patterns.
156 Sponsored by: Robert Klemme
161 Added "Cross-origin resource sharing" (CORS) support.
162 This allows to access Privoxy's CGI interface via JavaScript from
163 another domain (white-listed with the new cors-allowed-origin directive).
164 Based on a patch by Nedzad Hrnjica.
165 Sponsored by: Robert Klemme.
170 Add SOCKS5 username/password support.
171 Based on a patch by Sam, improved by Ivan Romanov.
172 Closes Patch#141 and solves TODO#105.
177 Bump the maximum number of action and filter files
179 Sponsored by: Robert Klemme
184 Fixed handling of filters with "split-large-forms 1"
185 when using the CGI editor.
186 Reported by withoutname in #921.
191 Better detect a mismatch of connection details when
192 figuring out whether or not a connection can be reused.
197 Don't send a "Connection failure" message instead of the
198 "DNS failure" message.
199 Sponsored by: Robert Klemme
204 Let LOG_LEVEL_REQUEST log all requests. Previously unencrypted
205 requests were only logged with LOG_LEVEL_REQUEST when they weren't
206 crunched (in which case they were logged with LOG_LEVEL_CRUNCH).
207 This was documented behaviour, but logging all requests seems more useful.
212 Fixed locking around localtime() and gmtime().
217 Removed OS/2 support. We haven't provided OS/2 packages in years,
218 it complicated the code and it depended on a fallback snprintf()
219 implementation which is GPLv2 only.
224 Remove the fallback snprintf() implementation
225 Now that OS/2 support is gone we no longer need it.
230 Fixed a bunch of format specifiers log messages.
235 Added a missing apostrophe in the 'More Privoxy' menu.
240 Explicitly prevent use of FEATURE_CONNECTION_SHARING
241 without FEATURE_CONNECTION_KEEP_ALIVE. It makes no sense
242 and does not compile anyway.
243 Sponsored by: Robert Klemme
248 Fix build without FEATURE_CONNECTION_KEEP_ALIVE.
249 Sponsored by: Robert Klemme
254 Downgrade the 'Graceful termination requested' message
255 to LOG_LEVEL_INFO as it isn't an error.
256 Sponsored by: Robert Klemme
261 decompress_iob(): Downgrade the no-content message to LOG_LEVEL_RE_FILTER
262 While at it, fix a typo in a comment.
263 Sponsored by: Robert Klemme
268 Fixed a couple of cppcheck warnings.
273 Rename LOG_LEVEL_GPC to LOG_LEVEL_REQUEST.
274 Only the shadow knows what "GPC" is supposed to stand for.
279 Remove SourceForge references in copyright headers.
284 Upgrade a bunch of links to the homepage to https://.
289 Add 'no-brotli-accepted' filter which prevents the
290 use of Brotli compression.
295 Changed license for pcrs to GPLv2+ after getting the
296 permission from Andreas. This allows to redistribute
297 Privoxy under the GPLv3 which is required when linking
298 to future mbedTLS versions which are expected to be
299 licensed under the Apache 2.0 license only.
304 Updated a bunch of tests that have to expect status code 403
305 now after r1.168/070e904afa5.
310 Lowercase the host name in the request line.
315 Only set SOURCE_DATE_EPOCH if it's not already set so
316 distributions can overwrite it through the environment.
324 Documentation changes:
328 Explain that Privoxy has to be distributed under the
329 GPLv3 (or later) when linked with an MbedTLS version
330 that is licensed under the Apache 2.0 license.
335 Import the GNU GPLv3 and include it the user manual.
340 Clarify FEATURE_FORCE_LOAD's description. It allows to bypass
341 blocking not filtering and only does it if blocks aren't enforced.
342 Reported by: Robert Klemme
347 FAQ: Remove Zwiebelfreunde e.V. from the list of fiduciary sponsors
348 As of 2021 they no longer handle donations for foreign organisations
349 due to lack of resources.
354 FAQ: Remove an obsolete comment with a link to the long-gone PDF manual.
359 FAQ: Add a link to the TODO list.
364 FAQ: Change the sponsor amounts to USD slightly rounding the
365 converted amounts up to get simple numbers.
366 Receiving USD is apparently easier for SPI and SPI is
367 preferred by sponsors as they can send invoices.
372 Advertise the client-tags CGI page in the user manual.
377 Stop advertising the show-version CGI page which no longer exists.
382 Add yet another reason why +prevent-compression may cause problems.
387 Don't claim that contributors need ssh. It's only needed for committers.
392 Replace obsolete CVS instructions with Git instructions.
397 Remove an obsolete comment
409 Change the suggested default-server-timeout to 5 to match the
410 suggested keep-alive-timeout. Otherwise using the defaults would
411 result in Privoxy reducing the default-server-timeout and logging
413 Sponsored by: Robert Klemme
418 Update the 'debug 1' description.
423 Add a missing 'client-specific-tag' directive.
428 Comment out trusted-cgi-referer pointing to example.org.
436 Action file improvements:
440 Block requests to /(.*/)?piwik\.php
445 Block requests to .connectaserver.de/
450 Block requests to pixel.inforsea.com/
455 Block requests to t.vi-serve.com/
460 Block requests to .ioam.de/
465 Block requests to t.9gag.com/img.gif
470 Block requests to .pixel.parsely.com/ as image
475 Block requests to pixel.wp.com/
480 Disable fast-redirects for .librarything.com/
485 Disable fast-redirects for issue.freebsdfoundation.org/
490 Disable fast-redirects for .twitter.com/.*origin=http
500 Add fast-redirects exception for .wikipedia.org/
505 Add fast-redirects exception for oss-fuzz.com/
510 Disable fast-redirects for .consensu.org/delivery/pixel\.php
511 and block the requests as image instead
516 Unblock .adbinstaller.com/
517 Reported by lvm in #942.
522 Unblock .adbshell.com
523 Reported by lvm in #942.
528 Unblock .tagesschau.de/
533 Disable fast-redirects for collector.githubapp.com/
534 and block requests to it as image instead
544 Add fast-redirects{} exception for sourcepoint.vice.com/
550 Reported by DRS David Soft in AF#945.
555 Change two block reasons that previously were the same.
556 Sponsored by: Robert Klemme
561 Added a +delay-response{} test.
566 Updated the location of the development version
567 of default.action.master.
579 Added a --keep-date option to keep the date in highlighted messages.
584 Highlight new log messages.
589 Make gather_loglevel_clf_stats() more tolerant. While at it,
590 count all CLF messages as requests, even if the request is invalid.
595 Only show HTTP version distribution if at least one version has been detected.
600 Only show crunch statistics if crunches were detected.
605 Warn if the request counts differ.
610 Generate statistics if the log only contains LOG_LEVEL_CLF messages
611 so it can be used with vanilla webserver logs.
612 Previously Privoxy-specific "Request:" messages were required.
617 Align the client-HTTP-version distribution like other distributions
622 Bump version to 0.9.1
627 Include status code distribution in the stats.
632 Let the statistics include the size of the content Privoxy
633 transferred excluding HTTP headers.
638 Get with the program and expect all requests to be logged with LOG_LEVEL_REQUEST.
639 It's no longer necessary to count both LOG_LEVEL_REQUEST and
640 LOG_LEVEL_CRUNCH messages to get the total number of requests.
645 Leverage the LOG_LEVEL_CLF message to gather statistics that where
646 previously taken from LOG_LEVEL_HEADER lines. This results in less
647 confusing results if https inspection is enabled in which case there
648 are two LOG_LEVEL_HEADER lines with request lines.
649 Sponsored by: Robert Klemme
654 Properly highlight the filter results message. Previously a brace got lost.
659 Prefer the number of CLF lines to get the total number of requests
660 as it works with older Privoxy versions as well.
668 Privoxy-Regression-Test:
672 Turn curl's globbing mode off so we can allow more characters in URLs.
677 Allow '[' and ']' in URLs.
682 Include the action file when complaining about missing Sticky Actions.
687 Fix a sentence in the documentation.
692 Bump version to 0.7.1
700 url-pattern-translator:
704 Detect a couple of pattern prefixes case-insensitively.
705 Sponsored by: Robert Klemme
710 Skip CLIENT-TAG patterns.
711 Sponsored by: Robert Klemme
716 Skip patterns that have already been converted.
717 It should now be safe to "convert" a file multiple times.
718 Sponsored by: Robert Klemme
723 Add the new 'PCRE-HOST-PATTERN:' prefix.
724 Sponsored by: Robert Klemme