diff --git a/ChangeLog b/ChangeLog index 4fb662799a..b1c4f3acf0 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,131 +1,136 @@ Changes in version 0.3.1.1-alpha - 2017-05-?? blurb goes here + o Major features (security, stability, experimental): + - Tor now has the optional ability to include modules written in + Rust. To turn this on, pass the "--enable-rust" flag to the + configure script. It's not time to get excited yet: currently, + there is no actual Rust functionality beyond some simple glue + code, and a notice at startup to tell you that Rust is running. + Still, we hope that programmers and packagers will try building + with rust support, so that we can find issues with the build + system, and solve portability issues. Closes ticket 22106. + o Major features (directory protocol): - Tor relays and authorities are now able to serve clients an abbreviated version of the networkstatus consensus document, - containing only the changes since the an older consensus document that - the client holds. Clients now request these documents when - available. When this new protocol is in use by both client and server, - they will use far less bandwidth (up to 94% less) to keep an up-to-date - consensus. Implements proposal 140; closes ticket 13339. Based - on work by by Daniel Martí. + containing only the changes since the an older consensus document + that the client holds. Clients now request these documents when + available. When this new protocol is in use by both client and + server, they will use far less bandwidth (up to 94% less) to keep + an up-to-date consensus. Implements proposal 140; closes ticket + 13339. Based on work by by Daniel Martí. o Major features (directory system): - - Tor's compression module now includes support for the zstd and lzma2 - compression algorithms, if the libzstd and liblzma libraries are - available when Tor is compiled. Once these features are exposed in the - directory module, they will enable Tor to provide better compression - ratios on directory documents. Part of an implementation for proposal - 278; closes ticket 21662. + - Tor's compression module now includes support for the zstd and + lzma2 compression algorithms, if the libzstd and liblzma libraries + are available when Tor is compiled. Once these features are + exposed in the directory module, they will enable Tor to provide + better compression ratios on directory documents. Part of an + implementation for proposal 278; closes ticket 21662. o Major features (internals): - Add an ed diff/patch backend, optimized for consensus documents. - This backend will be the basis of our consensus diff implementation. - Most of the work here was done - by Daniel Martí. Closes ticket 21643. - - o Major features (security, stability, experimental): - - Tor now has the optional ability to include modules written in - Rust. To turn this on, pass the "--enable-rust" flag to the - configure script. - It's not time to get excited yet: currently, there is no actual - Rust functionality beyond some simple glue code, and a notice at - startup to tell you that Rust is running. Still, we hope that - programmers and packagers will try building with rust - support, so that we can find issues with the build system, - and solve portability issues. Closes ticket 22106. + This backend will be the basis of our consensus diff + implementation. Most of the work here was done by Daniel Martí. + Closes ticket 21643. o Major features (traffic analysis resistance): - - Relays and clients will now send a padding cell on idle OR - connections every 1.5 to 9.5 seconds (tunable via consensus - parameters). Directory connections and inter-relay connections - are not padded. Padding is negotiated using Tor's link protocol, - so both relays and clients must upgrade for this to take effect. - Clients may still send padding despite the relay's version by - setting ConnectionPadding 1 in torrc, and may disable padding - by setting ConnectionPadding 0 in torrc. Padding may be minimized - for mobile users with the torrc option ReducedConnectionPadding. - Implements Proposal 251 and Section 2 of Proposal 254; closes ticket - 16861. - - Relays will publish 24 hour totals of padding and non-padding cell - counts to their extra-info descriptors, unless PaddingStatistics 0 - is set in torrc. These 24 hour totals are also rounded to multiples - of 10000. + - Relays and clients will now send a padding cell on idle OR + connections every 1.5 to 9.5 seconds (tunable via consensus + parameters). Directory connections and inter-relay connections are + not padded. Padding is negotiated using Tor's link protocol, so + both relays and clients must upgrade for this to take effect. + Clients may still send padding despite the relay's version by + setting ConnectionPadding 1 in torrc, and may disable padding by + setting ConnectionPadding 0 in torrc. Padding may be minimized for + mobile users with the torrc option ReducedConnectionPadding. + Implements Proposal 251 and Section 2 of Proposal 254; closes + ticket 16861. + - Relays will publish 24 hour totals of padding and non-padding cell + counts to their extra-info descriptors, unless PaddingStatistics 0 + is set in torrc. These 24 hour totals are also rounded to + multiples of 10000. o Major bugfixes (hidden service directory, security): - - Fix an assertion failure in the hidden service directory code, which - could be used by an attacker to remotely cause a Tor relay process to - exit. Relays running earlier versions of Tor 0.3.0.x should upgrade. - This security issue is tracked as tracked as + - Fix an assertion failure in the hidden service directory code, + which could be used by an attacker to remotely cause a Tor relay + process to exit. Relays running earlier versions of Tor 0.3.0.x + should upgrade. This security issue is tracked as tracked as TROVE-2017-002. Fixes bug 22246; bugfix on 0.3.0.1-alpha. o Major bugfixes (linux TPROXY support): - - Fix a typo that had prevented TPROXY-based transparent proxying from - working under Linux. Fixes bug 18100; bugfix on 0.2.6.3-alpha. + - Fix a typo that had prevented TPROXY-based transparent proxying + from working under Linux. Fixes bug 18100; bugfix on 0.2.6.3-alpha. Patch from "d4fq0fQAgoJ". + o Minor features (defaults, security): + - The default value for UseCreateFast is now 0: clients which + haven't yet received a consensus document will nonetheless use a + proper handshake to talk to their directory servers (when they + can). Closes ticket 21407. + + o Minor features (security, windows): + - Enable a couple of pieces of Windows hardening: one + (HeapEnableTerminationOnCorruption) that has been on-by-default + since Windows 8, and unavailable before Windows 7, and one + (PROCESS_DEP_DISABLE_ATL_THUNK_EMULATION) which we believe doesn't + affect us, but shouldn't do any harm. Closes ticket 21953. + o Minor feature (defaults, directory): - - Onion key rotation and expiry intervals are now defined as a network - consensus parameter as per proposal 274. The default lifetime of an - onion key is bumped from 7 to 28 days. Old onion keys will expire after 7 - days by default. Closes ticket 21641. + - Onion key rotation and expiry intervals are now defined as a + network consensus parameter as per proposal 274. The default + lifetime of an onion key is bumped from 7 to 28 days. Old onion + keys will expire after 7 days by default. Closes ticket 21641. o Minor feature (hidden services): - Add more information to the message logged when a hidden service descriptor has fewer introduction points than specified in - HiddenServiceNumIntroductionPoints. - Follow up to tickets 21598 and 21599, closes ticket 21622. - - Log a message when a hidden service descriptor has fewer introduction - points than specified in HiddenServiceNumIntroductionPoints. - Closes ticket 21598. + HiddenServiceNumIntroductionPoints. Follow up to tickets 21598 and + 21599, closes ticket 21622. + - Log a message when a hidden service descriptor has fewer + introduction points than specified in + HiddenServiceNumIntroductionPoints. Closes ticket 21598. - Log a message when a hidden service reaches its introduction point - circuit limit, and when that limit is reset. - Follow up to ticket 21594, closes ticket 21622. + circuit limit, and when that limit is reset. Follow up to ticket + 21594, closes ticket 21622. o Minor feature (include on config files): - Adds config-can-saveconf to GETINFO command to tell if SAVECONF will work without the FORCE option, closes ticket 1922. - - Allow the use of %include on configuration files to include settings - from other files or directories. Using %include with a directory will - include all (non-dot) files in that directory in lexically sorted order - (non-recursive), closes ticket 1922. - - Makes SAVECONF command return error when overwriting a torrc - that has includes. Using SAVECONF with the FORCE option will - allow it to overwrite torrc even if includes are used, closes ticket - 1922. + - Allow the use of %include on configuration files to include + settings from other files or directories. Using %include with a + directory will include all (non-dot) files in that directory in + lexically sorted order (non-recursive), closes ticket 1922. + - Makes SAVECONF command return error when overwriting a torrc that + has includes. Using SAVECONF with the FORCE option will allow it + to overwrite torrc even if includes are used, closes ticket 1922. o Minor features (controller): - - Warn the first time that a controller requests data in the - long-deprecated 'GETINFO network-status' format. Closes ticket 21703. - - o Minor features (defaults, security): - - The default value for UseCreateFast is now 0: clients which haven't yet - received a consensus document will nonetheless use a proper handshake - to talk to their directory servers (when they can). Closes ticket 21407. + - Warn the first time that a controller requests data in the long- + deprecated 'GETINFO network-status' format. Closes ticket 21703. o Minor features (fallback directories): - - Update the fallback directory mirror whitelist and blacklist based on - operator emails. Closes task 21121. + - Update the fallback directory mirror whitelist and blacklist based + on operator emails. Closes task 21121. o Minor features (fallback directory list): - Replace the 177 fallbacks originally introduced in Tor 0.2.9.8 in - December 2016 (of which ~126 were still functional), with a list of - 151 fallbacks (32 new, 119 existing, 58 removed) generated in - May 2017. - Resolves ticket 21564. + December 2016 (of which ~126 were still functional), with a list + of 151 fallbacks (32 new, 119 existing, 58 removed) generated in + May 2017. Resolves ticket 21564. o Minor features (hidden service, logging): - - Warn user if multiple entries in EntryNodes and at least one - HiddenService are used together. Pinning EntryNodes along with an hidden - service can be possibly harmful for instance see ticket 14917 or 21155. - Closes ticket 21155. + - Warn user if multiple entries in EntryNodes and at least one + HiddenService are used together. Pinning EntryNodes along with an + hidden service can be possibly harmful for instance see ticket + 14917 or 21155. Closes ticket 21155. o Minor features (infrastructure, seccomp2 sandbox): - We now have a document storage backend compatible with the Linux seccomp2 sandbox. The long-term plan is to use this backend for consensus documents and for storing unparseable directory - material. Closes ticket 21645. + material. Closes ticket 21645. o Minor features (linux seccomp2 sandbox): - Increase the maximum allowed size passed to mprotect(PROT_WRITE) @@ -136,164 +141,159 @@ Changes in version 0.3.1.1-alpha - 2017-05-?? o Minor features (logging): - Log files are no longer created world-readable by default. - (Previously, most distributors would store the logs in a - non-world-readable location to prevent inappropriate access. This - change is an extra precaution.) Closes ticket 21729; patch from - toralf. + (Previously, most distributors would store the logs in a non- + world-readable location to prevent inappropriate access. This + change is an extra precaution.) Closes ticket 21729; patch + from toralf. o Minor features (performance): - The minimal keccak implementation we include now accesses memory - more efficiently, especially on little-endian systems. - Closes ticket 21737. + more efficiently, especially on little-endian systems. Closes + ticket 21737. o Minor features (performance, controller): - Add an O(1) implementation of channel_find_by_global_id(). o Minor features (relay, configuration): - - The MyFamily line may now be repeated as many times as desired, for - relays that want to configure large families. Closes ticket 4998; - patch by Daniel Pinto. + - The MyFamily line may now be repeated as many times as desired, + for relays that want to configure large families. Closes ticket + 4998; patch by Daniel Pinto. o Minor features (safety): - - Add an explict check to extrainfo_parse_entry_from_string() for NULL - inputs. We don't believe this can actually happen, but it may help - silence a warning from the Clang analyzer. Closes ticket 21496. - - o Minor features (security, windows): - - Enable a couple of pieces of Windows hardening: one - (HeapEnableTerminationOnCorruption) that has been on-by-default since - Windows 8, and unavailable before Windows 7, and one - (PROCESS_DEP_DISABLE_ATL_THUNK_EMULATION) which we believe doesn't - affect us, but shouldn't do any harm. Closes ticket 21953. + - Add an explict check to extrainfo_parse_entry_from_string() for + NULL inputs. We don't believe this can actually happen, but it may + help silence a warning from the Clang analyzer. Closes + ticket 21496. o Minor features (testing): - Add a "--disable-memory-sentinels" feature to help with fuzzing. When Tor is compiled with this option, we disable a number of - redundant memory-safety failsafes that are intended to stop - bugs from becoming security issues. This makes it easier to hunt - for bugs that would be security issues without the failsafes - turned on. Closes ticket 21439. - - Add a general event-tracing instrumentation support to Tor. This - subsystem will enable developers and researchers to add fine-grained - instrumentation to their Tor instances, for use when examining Tor - network performance issues. There are no trace events yet, and - event-tracing is off by default unless enabled at compile time. - Implements ticket 13802. + redundant memory-safety failsafes that are intended to stop bugs + from becoming security issues. This makes it easier to hunt for + bugs that would be security issues without the failsafes turned + on. Closes ticket 21439. + - Add a general event-tracing instrumentation support to Tor. This + subsystem will enable developers and researchers to add fine- + grained instrumentation to their Tor instances, for use when + examining Tor network performance issues. There are no trace + events yet, and event-tracing is off by default unless enabled at + compile time. Implements ticket 13802. o Minor features (unit tests): - - Improve version parsing tests: add tests for typical version components, - add tests for invalid versions, including numeric range and non-numeric - prefixes. - Unit tests 21278, 21450, and 21507. Partially implements 21470. + - Improve version parsing tests: add tests for typical version + components, add tests for invalid versions, including numeric + range and non-numeric prefixes. Unit tests 21278, 21450, and + 21507. Partially implements 21470. o Minor bugfix (directory authority): - - Prevent the shared randomness subsystem from asserting when initialized - by a bridge authority with an incomplete configuration file. Fixes bug - 21586; bugfix on 0.2.9.8. + - Prevent the shared randomness subsystem from asserting when + initialized by a bridge authority with an incomplete configuration + file. Fixes bug 21586; bugfix on 0.2.9.8. o Minor bugfixes (bandwidth accounting): - Roll over monthly accounting at the configured hour and minute, - rather than always at 00:00. - Fixes bug 22245; bugfix on 0.0.9rc1. + rather than always at 00:00. Fixes bug 22245; bugfix on 0.0.9rc1. Found by Andrey Karpov with PVS-Studio. o Minor bugfixes (cell, logging): - - Downgrade a log statement from bug to protocol warning because there is - at least one use case where it can be triggered by a buggy tor - implementation on the Internet for instance. Fixes bug 21293; bugfix on - 0.1.1.14-alpha. + - Downgrade a log statement from bug to protocol warning because + there is at least one use case where it can be triggered by a + buggy tor implementation on the Internet for instance. Fixes bug + 21293; bugfix on 0.1.1.14-alpha. o Minor bugfixes (code correctness): - Accurately identify client connections using their lack of peer - authentication. This means that we bail out earlier if asked to extend - to a client. Follow-up to 21407. - Fixes bug 21406; bugfix on 0.2.4.23. + authentication. This means that we bail out earlier if asked to + extend to a client. Follow-up to 21407. Fixes bug 21406; bugfix + on 0.2.4.23. o Minor bugfixes (configuration): - - Do not crash when starting with LearnCircuitBuildTimeout 0. - Fixes bug 22252; bugfix on 0.2.9.3-alpha. + - Do not crash when starting with LearnCircuitBuildTimeout 0. Fixes + bug 22252; bugfix on 0.2.9.3-alpha. o Minor bugfixes (connection lifespan): - - Allow more control over how long TLS connections are kept open: unify - CircuitIdleTimeout and PredictedPortsRelevanceTime into a single option - called CircuitsAvailableTimeout. Also, allow the consensus to control - the default values for both this preference, as well as the lifespan - of relay-to-relay connections. Fixes bug 17592; bugfix on 0.2.5.5-alpha. - - Increase the intial circuit build timeout testing frequency, to help - ensure that ReducedConnectionPadding clients finish learning a timeout - before their orconn would expire. The initial testing rate was set back - in the days of TAP and before the Tor Browser updater, when we had to be - much more careful about new clients making lots of circuits. With this - change, a circuit build time is learned in about 15-20 minutes, instead - of ~100-120 minutes. + - Allow more control over how long TLS connections are kept open: + unify CircuitIdleTimeout and PredictedPortsRelevanceTime into a + single option called CircuitsAvailableTimeout. Also, allow the + consensus to control the default values for both this preference, + as well as the lifespan of relay-to-relay connections. Fixes bug + 17592; bugfix on 0.2.5.5-alpha. + - Increase the intial circuit build timeout testing frequency, to + help ensure that ReducedConnectionPadding clients finish learning + a timeout before their orconn would expire. The initial testing + rate was set back in the days of TAP and before the Tor Browser + updater, when we had to be much more careful about new clients + making lots of circuits. With this change, a circuit build time is + learned in about 15-20 minutes, instead of ~100-120 minutes. o Minor bugfixes (connection usage): - - Relays will now log hourly statistics on the total number of - connections to other relays. If the number of connections per relay - unexpectedly large, this log message is at notice level. Otherwise - it is at info. - - Use NETINFO cells to try to determine if both relays involved in - a connection will agree on the canonical status of that connection. - Prefer the connections where this is the case for extend cells, - and try to close connections where relays disagree on canonical - status early. Also, additionally alter the connection selection - logic to prefer the oldest valid connection for extend cells. - These two changes should reduce the number of long-term connections - that are kept open between relays. Fixes bug 17604; bugfix on - 0.2.5.5-alpha. + - Relays will now log hourly statistics on the total number of + connections to other relays. If the number of connections per + relay unexpectedly large, this log message is at notice level. + Otherwise it is at info. + - Use NETINFO cells to try to determine if both relays involved in a + connection will agree on the canonical status of that connection. + Prefer the connections where this is the case for extend cells, + and try to close connections where relays disagree on canonical + status early. Also, additionally alter the connection selection + logic to prefer the oldest valid connection for extend cells. + These two changes should reduce the number of long-term + connections that are kept open between relays. Fixes bug 17604; + bugfix on 0.2.5.5-alpha. o Minor bugfixes (control, hidden service client): - - Trigger HS descriptor events on the control port when the client is - unable to pick a suitable hidden service directory. This can happen if - they are all in the ExcludeNodes list or they all have been queried - inside the allowed 15 minutes. Fixes bug 22042; bugfix on - 0.2.5.2-alpha. + - Trigger HS descriptor events on the control port when the client + is unable to pick a suitable hidden service directory. This can + happen if they are all in the ExcludeNodes list or they all have + been queried inside the allowed 15 minutes. Fixes bug 22042; + bugfix on 0.2.5.2-alpha. o Minor bugfixes (controller): - - GETINFO onions/current and onions/detached no longer 551 on empty lists - Fixes bug 21329; bugfix on 0.2.7.1-alpha. + - GETINFO onions/current and onions/detached no longer 551 on empty + lists Fixes bug 21329; bugfix on 0.2.7.1-alpha. o Minor bugfixes (directory authority): - When rejecting a router descriptor because the relay is running an - obsolete version of Tor without ntor support, warn about the obsolete - tor version, not the missing ntor key. Fixes bug 20270; + obsolete version of Tor without ntor support, warn about the + obsolete tor version, not the missing ntor key. Fixes bug 20270; bugfix on 0.2.9.3-alpha. o Minor bugfixes (documentation): - - Default of NumEntryGuards is 1 if the consensus parameter - guard-n-primary-guards-to-use isn't set. Default of NumDirectoryGuards - is 3 if the consensus parameter guard-n-primary-dir-guards-to-use isn't - set. Fixes bug 21715; bugfix on 0.3.0.1-alpha. + - Default of NumEntryGuards is 1 if the consensus parameter guard-n- + primary-guards-to-use isn't set. Default of NumDirectoryGuards is + 3 if the consensus parameter guard-n-primary-dir-guards-to-use + isn't set. Fixes bug 21715; bugfix on 0.3.0.1-alpha. o Minor bugfixes (exit-side DNS): - Fix an untriggerable assertion that checked the output of a libevent DNS error, so that the assertion actually behaves as - expected. Fixes bug 22244; bugfix on 0.2.0.20-rc. Found by Andrey + expected. Fixes bug 22244; bugfix on 0.2.0.20-rc. Found by Andrey Karpov using PVS-Studio. o Minor bugfixes (fallback directory mirrors): - Make the usage example in updateFallbackDirs.py actually work. - (And explain what it does.) - Fixes bug 22270; bugfix on 0.3.0.3-alpha. + (And explain what it does.) Fixes bug 22270; bugfix + on 0.3.0.3-alpha. o Minor bugfixes (fallbacks): - - Decrease the guard flag average required to be a fallback. This allows - us to keep relays that have their guard flag removed when they restart. - Fixes bug 20913; bugfix on 0.2.8.1-alpha. - - Decrease the minimum number of fallbacks to 100. - Fixes bug 20913; bugfix on 0.2.8.1-alpha. - - Make sure fallback directory mirrors have the same address, port, and - relay identity key for at least 30 days before they are selected. - Fixes bug 20913; bugfix on 0.2.8.1-alpha. + - Decrease the guard flag average required to be a fallback. This + allows us to keep relays that have their guard flag removed when + they restart. Fixes bug 20913; bugfix on 0.2.8.1-alpha. + - Decrease the minimum number of fallbacks to 100. Fixes bug 20913; + bugfix on 0.2.8.1-alpha. + - Make sure fallback directory mirrors have the same address, port, + and relay identity key for at least 30 days before they are + selected. Fixes bug 20913; bugfix on 0.2.8.1-alpha. o Minor bugfixes (hidden service): - Stop printing cryptic warning when a client tries to connect on an - invalid port of the service. Fixes bug 16706; bugfix on 0.2.6.3-alpha. + invalid port of the service. Fixes bug 16706; bugfix + on 0.2.6.3-alpha. o Minor bugfixes (hidden services): - - Simplify hidden service descriptor creation by using an existing flag - to check if an introduction point is established. - Fixes bug 21599; bugfix on 0.2.7.2-alpha. + - Simplify hidden service descriptor creation by using an existing + flag to check if an introduction point is established. Fixes bug + 21599; bugfix on 0.2.7.2-alpha. o Minor bugfixes (memory leak): - Fix a small memory leak at exit from the backtrace handler code. @@ -301,49 +301,49 @@ Changes in version 0.3.1.1-alpha - 2017-05-?? o Minor bugfixes (testing): - Make test-network.sh always call chutney's test-network.sh. - Previously, this only worked on systems which had bash installed, due to - some bash-specific code in the script. - Fixes bug 19699; bugfix on 0.3.0.4-rc. Follow-up to ticket 21581. - - Use unbuffered I/O for utility functions around the process_handle_t - type. This fixes unit test failures reported on OpenBSD and FreeBSD. - Fixes bug 21654; bugfix on 0.2.3.1-alpha. + Previously, this only worked on systems which had bash installed, + due to some bash-specific code in the script. Fixes bug 19699; + bugfix on 0.3.0.4-rc. Follow-up to ticket 21581. + - Use unbuffered I/O for utility functions around the + process_handle_t type. This fixes unit test failures reported on + OpenBSD and FreeBSD. Fixes bug 21654; bugfix on 0.2.3.1-alpha. o Minor bugfixes (unit tests): - - Make display of captured unit test log messages consistent. - Fixes bug 21510; bugfix on 0.2.9.3-alpha. + - Make display of captured unit test log messages consistent. Fixes + bug 21510; bugfix on 0.2.9.3-alpha. o Minor bugfixes (voting consistency): - - Reject version numbers with non-numeric prefixes (such as +, -, and - whitespace). Disallowing whitespace prevents differential version - parsing between POSIX-based and Windows platforms. - Fixes bug 21507 and part of 21508; bugfix on 0.0.8pre1. + - Reject version numbers with non-numeric prefixes (such as +, -, + and whitespace). Disallowing whitespace prevents differential + version parsing between POSIX-based and Windows platforms. Fixes + bug 21507 and part of 21508; bugfix on 0.0.8pre1. o Minor bugfixes (windows, relay): - Resolve "Failure from drain_fd: No error" warnings on Windows relays. Fixes bug 21540; bugfix on 0.2.6.3-alpha. o Code simplification and refactoring: - - Break up the 630-line function connection_dir_client_reached_eof() into - a dozen smaller functions. This change should help maintainability and - readability of the client directory code. + - Break up the 630-line function connection_dir_client_reached_eof() + into a dozen smaller functions. This change should help + maintainability and readability of the client directory code. - Isolate our usage of the openssl headers so that they are only - used from our crypto wrapper modules, and from tests that examing those - modules' internals. Closes ticket 21841. + used from our crypto wrapper modules, and from tests that examing + those modules' internals. Closes ticket 21841. - Our API to launch directory requests has been greatly simplified to become more extensible and less error-prone. We'll be using this to improve support for adding extra headers to directory requests. Closes ticket 21646. - Our base64 decoding functions no longer overestimate the output - space that they will need when parsing unpadded inputs. - Closes ticket 17868. + space that they will need when parsing unpadded inputs. Closes + ticket 17868. - Remove unused "ROUTER_ADDED_NOTIFY_GENERATOR" internal value. Resolves ticket 22213. - The logic that directory caches use to spool request to clients, - serving them one part at a time so as not to allocate too much memory, - has been refactored for consistency. Previously there was a separate - spooling implementation per type of spoolable data. Now there - is one common spooling implementation, with extensible data types. - Closes ticket 21651. + serving them one part at a time so as not to allocate too much + memory, has been refactored for consistency. Previously there was + a separate spooling implementation per type of spoolable data. Now + there is one common spooling implementation, with extensible data + types. Closes ticket 21651. - Tor's compression module now supports multiple backends. Part of an implementation of proposal 278; closes ticket 21663. @@ -352,46 +352,49 @@ Changes in version 0.3.1.1-alpha - 2017-05-?? Closes ticket 21873. - Correct the documentation about the default DataDirectory value. Closes ticket 21151. - - Document key=value pluggable transport arguments for Bridge lines in - torrc. Fixes bug 20341; bugfix on 0.2.5.1-alpha. - - Note that bandwidth-limiting options don't affect TCP headers or DNS. - Closes ticket 17170. + - Document key=value pluggable transport arguments for Bridge lines + in torrc. Fixes bug 20341; bugfix on 0.2.5.1-alpha. + - Note that bandwidth-limiting options don't affect TCP headers or + DNS. Closes ticket 17170. + + o Removed features: + - We've removed the tor-checkkey tool from src/tools. Long ago, we + used it to help people detect RSA keys that were generated by + versions of Debian affected by CVE-2008-0166. But those keys have + been out of circulation for ages, and this tool is no longer + required. Closes ticket 21842. o Removed features (configuration options, all in ticket 22060): - AllowInvalidNodes was deprecated in 0.2.9.2-alpha and now has been removed. It is not possible anymore to use Invalid nodes. - - AllowSingleHopCircuits was deprecated in 0.2.9.2-alpha and now has been - removed. It's not possible anymore to attach streams to single hop exit - circuit. - - AllowSingleHopExits was deprecated in 0.2.9.2-alpha and now has been - removed. Relays no longer advertise that they can be used for single hop - exit proxy. + - AllowSingleHopCircuits was deprecated in 0.2.9.2-alpha and now has + been removed. It's not possible anymore to attach streams to + single hop exit circuit. + - AllowSingleHopExits was deprecated in 0.2.9.2-alpha and now has + been removed. Relays no longer advertise that they can be used for + single hop exit proxy. - CloseHSClientCircuitsImmediatelyOnTimeout was deprecated in 0.2.9.2-alpha and now has been removed. HS circuits never close on circuit build timeout, they have a longer timeout period. - CloseHSServiceRendCircuitsImmediatelyOnTimeout was deprecated in 0.2.9.2-alpha and now has been removed. HS circuits never close on circuit build timeout, they have a long timeout period. - - ExcludeSingleHopRelays was deprecated in 0.2.9.2-alpha and now has been - removed. Client will always exclude relays that supports single hop - exits meaning relays that still advertise AllowSingleHopExits. - - FastFirstHopPK was deprecated in 0.2.9.2-alpha and now has been removed. - Decision for this feature will always be decided by the consensus. - - TLSECGroup was deprecated in 0.2.9.2-alpha and now has been removed. - P256 EC group is always used. + - ExcludeSingleHopRelays was deprecated in 0.2.9.2-alpha and now has + been removed. Client will always exclude relays that supports + single hop exits meaning relays that still advertise + AllowSingleHopExits. + - FastFirstHopPK was deprecated in 0.2.9.2-alpha and now has been + removed. Decision for this feature will always be decided by + the consensus. + - TLSECGroup was deprecated in 0.2.9.2-alpha and now has been + removed. P256 EC group is always used. - WarnUnsafeSocks was deprecated in 0.2.9.2-alpha and now has been - removed. Tor will now always warn the user if only an IP address is - given instead of an hostname on a SOCKS connection if SafeSocks is 1. - - {Control,DNS,Dir,Socks,Trans,NATD,OR}ListenAddress was deprecated in - 0.2.9.2-alpha and now has been removed. Use the ORPort (and others). - - o Removed features: - - We've removed the tor-checkkey tool from src/tools. Long ago, we - used it to help people detect RSA keys that were generated by - versions of Debian affected by CVE-2008-0166. But those keys - have been out of circulation for ages, and this tool is no - longer required. Closes ticket 21842. - + removed. Tor will now always warn the user if only an IP address + is given instead of an hostname on a SOCKS connection if SafeSocks + is 1. + - {Control,DNS,Dir,Socks,Trans,NATD,OR}ListenAddress was deprecated + in 0.2.9.2-alpha and now has been removed. Use the ORPort + (and others). Changes in version 0.3.0.7 - 2017-05-15