Compatibility with macOS 11 and adding more recent PCRE
[OSXPackageBuilder.git] / pkg resources / interface texts / ReadMe64.txt
1 September 2021, Privoxy 3.0.32 (stable) macOS installer V1.0 released.
2
3 Version Support
4
5 This installer has been tested on Macs with Intel 64 bit processors running OS X 10.11 and higher. It may work on earlier releases, but is untested.
6
7 What's New
8
9 Privoxy 3.0.32 fixes multiple DoS issues and a couple of other bugs. The issues also affect earlier Privoxy releases. As such is recommended for all users.
10
11 Full ChangeLog
12
13 - Security/Reliability:
14   - ssplit(): Remove an assertion that could be triggered with a
15     crafted CGI request.
16     Commit 2256d7b4d67. OVE-20210203-0001.
17     Reported by: Joshua Rogers (Opera)
18   - cgi_send_banner(): Overrule invalid image types. Prevents a
19     crash with a crafted CGI request if Privoxy is toggled off.
20     Commit e711c505c48. OVE-20210206-0001.
21     Reported by: Joshua Rogers (Opera)
22   - socks5_connect(): Don't try to send credentials when none are
23     configured. Fixes a crash due to a NULL-pointer dereference
24     when the socks server misbehaves.
25     Commit 85817cc55b9. OVE-20210207-0001.
26     Reported by: Joshua Rogers (Opera)
27   - chunked_body_is_complete(): Prevent an invalid read of size two.
28     Commit a912ba7bc9c. OVE-20210205-0001.
29     Reported by: Joshua Rogers (Opera)
30   - Obsolete pcre: Prevent invalid memory accesses with an invalid
31     pattern passed to pcre_compile(). Note that the obsolete pcre code
32     is scheduled to be removed before the 3.0.33 release. There has been
33     a warning since 2008 already.
34     Commit 28512e5b624. OVE-20210222-0001.
35     Reported by: Joshua Rogers (Opera)
36
37 - Bug fixes:
38   - Properly parse the client-tag-lifetime directive. Previously it was
39     not accepted as an obsolete hash value was being used.
40     Reported by: Joshua Rogers (Opera)
41   - decompress_iob(): Prevent reading of uninitialized data.
42     Reported by: Joshua Rogers (Opera).
43   - decompress_iob(): Don't advance cur past eod when looking
44     for the end of the file name and comment.
45   - decompress_iob(): Cast value to unsigned char before shifting.
46     Prevents a left-shift of a negative value which is undefined behaviour.
47     Reported by: Joshua Rogers (Opera)
48   - gif_deanimate(): Confirm that that we have enough data before doing
49     any work. Fixes a crash when fuzzing with an empty document.
50     Reported by: Joshua Rogers (Opera).
51   - buf_copy(): Fail if there's no data to write or nothing to do.
52     Prevents undefined behaviour "applying zero offset to null pointer".
53     Reported by: Joshua Rogers (Opera)
54   - log_error(): Treat LOG_LEVEL_FATAL as fatal even when --stfu is
55     being used while fuzzing.
56     Reported by: Joshua Rogers (Opera).
57   - Respect DESTDIR when considering whether or not to install
58     config files with ".new" extension.
59   - OpenSSL ssl_store_cert(): Fix two error messages.
60   - Fix a couple of format specifiers.
61   - Silence compiler warnings when compiling with NDEBUG.
62   - fuzz_server_header(): Fix compiler warning.
63   - fuzz_client_header(): Fix compiler warning.
64   - cgi_send_user_manual(): Also reject requests if the user-manual
65     directive specifies a https:// URL. Previously Privoxy would try and
66     fail to open a local file.
67
68 - General improvements:
69   - Log the TLS version and the the cipher when debug 2 is enabled.
70   - ssl_send_certificate_error(): Respect HEAD requests by not sending a body.
71   - ssl_send_certificate_error(): End the body with a single new line.
72   - serve(): Increase the chances that the host is logged when closing
73     a server socket.
74   - handle_established_connection(): Add parentheses to clarify an expression
75     Suggested by: David Binderman
76   - continue_https_chat(): Explicitly unset CSP_FLAG_CLIENT_CONNECTION_KEEP_ALIVE
77     if process_encrypted_request() fails. This makes it more obvious that the
78     connection will not be reused. Previously serve() relied on
79     CSP_FLAG_SERVER_CONTENT_LENGTH_SET and CSP_FLAG_CHUNKED being unset.
80     Inspired by a patch from Joshua Rogers (Opera).
81   - decompress_iob(): Add periods to a couple of log messages
82   - Terminate the body of the HTTP snipplets with a single new line
83     instead of "\r\n".
84   - configure: Add --with-assertions option and only enable assertions
85     when it is used
86   - windows build: Use --with-brotli and --with-mbedtls by default and
87     enable dynamic error checking.
88   - gif_deanimate(): Confirm we've got an image before trying to write it
89     Saves a pointless buf_copy() call.
90   - OpenSSL ssl_store_cert(): Remove a superfluous space before the serial number.
91
92 - Action file improvements:
93   - Disable fast-redirects for .golem.de/
94   - Unblock requests to adri*.
95   - Block requests for trc*.taboola.com/
96   - Disable fast-redirects for .linkedin.com/
97
98 - Filter file improvements:
99   - Make the second pcrs job of the img-reorder filter greedy again.
100     The ungreedy version broke the img tags on:
101     https://bulk.fefe.de/scalability/.
102
103 - Privoxy-Log-Parser:
104   - Highlight a few more messages.
105   - Clarify the --statistics output. The shown "Reused connections"
106     are server connections so name them appropriately.
107   - Bump version to 0.9.3.
108
109 - Privoxy-Regression-Test:
110   - Add the --check-bad-ssl option to the --help output.
111   - Bump version to 0.7.3.
112
113 - Documentation:
114   - Add pushing the created tag to the release steps in the developer manual.
115   - Clarify that 'debug 32768' should be used in addition to the other debug
116     directives when reporting problems.
117   - Add a 'Third-party licenses and copyrights' section to the user manual.
118
119
120 Please see the "What's New in this Release" section in the User Manual for details of all new features introduced and bugs fixed in this release.