aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog1747
-rw-r--r--ReleaseNotes1971
-rw-r--r--changes/258573
-rw-r--r--changes/272864
-rw-r--r--changes/TROVE-2018-0056
-rw-r--r--changes/bug20424_029_minimal4
-rw-r--r--changes/bug21394.27
-rw-r--r--changes/bug223108
-rw-r--r--changes/bug23693.14
-rw-r--r--changes/bug2403113
-rw-r--r--changes/bug241044
-rw-r--r--changes/bug247675
-rw-r--r--changes/bug247697
-rw-r--r--changes/bug247824
-rw-r--r--changes/bug248543
-rw-r--r--changes/bug249035
-rw-r--r--changes/bug249044
-rw-r--r--changes/bug249693
-rw-r--r--changes/bug249787
-rw-r--r--changes/bug249894
-rw-r--r--changes/bug251204
-rw-r--r--changes/bug252135
-rw-r--r--changes/bug252234
-rw-r--r--changes/bug252264
-rw-r--r--changes/bug252493
-rw-r--r--changes/bug25249.23
-rw-r--r--changes/bug25296_0325
-rw-r--r--changes/bug253066
-rw-r--r--changes/bug253723
-rw-r--r--changes/bug253784
-rw-r--r--changes/bug254154
-rw-r--r--changes/bug254405
-rw-r--r--changes/bug254508
-rw-r--r--changes/bug254745
-rw-r--r--changes/bug254794
-rw-r--r--changes/bug255053
-rw-r--r--changes/bug255125
-rw-r--r--changes/bug255605
-rw-r--r--changes/bug255814
-rw-r--r--changes/bug255823
-rw-r--r--changes/bug256175
-rw-r--r--changes/bug256293
-rw-r--r--changes/bug256643
-rw-r--r--changes/bug256794
-rw-r--r--changes/bug25686_diagnostic4
-rw-r--r--changes/bug256916
-rw-r--r--changes/bug25691_again6
-rw-r--r--changes/bug257055
-rw-r--r--changes/bug257324
-rw-r--r--changes/bug257334
-rw-r--r--changes/bug257613
-rw-r--r--changes/bug259013
-rw-r--r--changes/bug260075
-rw-r--r--changes/bug260526
-rw-r--r--changes/bug260695
-rw-r--r--changes/bug260725
-rw-r--r--changes/bug261167
-rw-r--r--changes/bug261216
-rw-r--r--changes/bug261585
-rw-r--r--changes/bug261964
-rw-r--r--changes/bug26258_0334
-rw-r--r--changes/bug262695
-rw-r--r--changes/bug262723
-rw-r--r--changes/bug264355
-rw-r--r--changes/bug264704
-rw-r--r--changes/bug264854
-rw-r--r--changes/bug264973
-rw-r--r--changes/bug26497-backport3
-rw-r--r--changes/bug26497-cd4
-rw-r--r--changes/bug265235
-rw-r--r--changes/bug26535.0295
-rw-r--r--changes/bug26535.0325
-rw-r--r--changes/bug266277
-rw-r--r--changes/bug267794
-rw-r--r--changes/bug267854
-rw-r--r--changes/bug267873
-rw-r--r--changes/bug268303
-rw-r--r--changes/bug268533
-rw-r--r--changes/bug268734
-rw-r--r--changes/bug268764
-rw-r--r--changes/bug269244
-rw-r--r--changes/bug269274
-rw-r--r--changes/bug269323
-rw-r--r--changes/bug269484
-rw-r--r--changes/bug270814
-rw-r--r--changes/bug270885
-rw-r--r--changes/bug270903
-rw-r--r--changes/bug270933
-rw-r--r--changes/bug271644
-rw-r--r--changes/bug271774
-rw-r--r--changes/bug271853
-rw-r--r--changes/bug272064
-rw-r--r--changes/bug272265
-rw-r--r--changes/bug272953
-rw-r--r--changes/bug273163
-rw-r--r--changes/bug273354
-rw-r--r--changes/bug273444
-rw-r--r--changes/bug273455
-rw-r--r--changes/bug274183
-rw-r--r--changes/bug274533
-rw-r--r--changes/bug274615
-rw-r--r--changes/bug274633
-rw-r--r--changes/bug274655
-rw-r--r--changes/bug276494
-rw-r--r--changes/bug276586
-rw-r--r--changes/bug276874
-rw-r--r--changes/bug277084
-rw-r--r--changes/bug277094
-rw-r--r--changes/bug277404
-rw-r--r--changes/bug277415
-rw-r--r--changes/bug278004
-rw-r--r--changes/bug278043
-rw-r--r--changes/bug279486
-rw-r--r--changes/bug282024
-rw-r--r--changes/bug282456
-rw-r--r--changes/bug284134
-rw-r--r--changes/bug284193
-rw-r--r--changes/bug285543
-rw-r--r--changes/bug286196
-rw-r--r--changes/bug290295
-rw-r--r--changes/bug292444
-rw-r--r--changes/bugs_25036_250557
-rw-r--r--changes/coveralls3
-rw-r--r--changes/feature253134
-rw-r--r--changes/feature26372_0294
-rw-r--r--changes/geoip-2018-03-084
-rw-r--r--changes/geoip-2018-04-034
-rw-r--r--changes/geoip-2018-05-014
-rw-r--r--changes/geoip-2018-06-074
-rw-r--r--changes/geoip-2018-07-034
-rw-r--r--changes/geoip-2018-08-074
-rw-r--r--changes/geoip-2018-09-064
-rw-r--r--changes/geoip-2018-10-094
-rw-r--r--changes/geoip-2018-11-064
-rw-r--r--changes/geoip-2018-12-054
-rw-r--r--changes/geoip-2019-01-034
-rw-r--r--changes/geoip-2019-02-054
-rw-r--r--changes/refactor238144
-rw-r--r--changes/task267714
-rw-r--r--changes/ticket236353
-rw-r--r--changes/ticket243436
-rw-r--r--changes/ticket246293
-rw-r--r--changes/ticket24629-backport3
-rw-r--r--changes/ticket248035
-rw-r--r--changes/ticket250714
-rw-r--r--changes/ticket252024
-rw-r--r--changes/ticket252484
-rw-r--r--changes/ticket253234
-rw-r--r--changes/ticket257144
-rw-r--r--changes/ticket260064
-rw-r--r--changes/ticket260623
-rw-r--r--changes/ticket263433
-rw-r--r--changes/ticket264673
-rw-r--r--changes/ticket265603
-rw-r--r--changes/ticket266474
-rw-r--r--changes/ticket269137
-rw-r--r--changes/ticket26952-cargo3
-rw-r--r--changes/ticket26952-ccache3
-rw-r--r--changes/ticket270873
-rw-r--r--changes/ticket272526
-rw-r--r--changes/ticket27252-0325
-rw-r--r--changes/ticket274105
-rw-r--r--changes/ticket275505
-rw-r--r--changes/ticket277384
-rw-r--r--changes/ticket289736
-rw-r--r--changes/ticket291685
-rw-r--r--changes/travis_distcheck4
-rw-r--r--changes/trove-2018-001.16
-rw-r--r--changes/trove-2018-0048
169 files changed, 3685 insertions, 761 deletions
diff --git a/ChangeLog b/ChangeLog
index e572f3d12a..318ebc723b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,1701 @@
+Changes in version 0.3.3.12 - 2019-02-21
+ Tor 0.3.3.12 fixes a medium-severity security bug affecting Tor
+ 0.3.2.1-alpha and later. All Tor instances running an affected release
+ should upgrade to 0.3.3.12, 0.3.4.11, 0.3.5.8, or 0.4.0.2-alpha.
+
+ This release marks the end of support for the Tor 0.3.3.x series. We
+ recommend that users switch to either the Tor 0.3.4 series (supported
+ until at least 10 June 2019), or the Tor 0.3.5 series, which will
+ receive long-term support until at least 1 Feb 2022.
+
+ o Major bugfixes (cell scheduler, KIST, security):
+ - Make KIST consider the outbuf length when computing what it can
+ put in the outbuf. Previously, KIST acted as though the outbuf
+ were empty, which could lead to the outbuf becoming too full. It
+ is possible that an attacker could exploit this bug to cause a Tor
+ client or relay to run out of memory and crash. Fixes bug 29168;
+ bugfix on 0.3.2.1-alpha. This issue is also being tracked as
+ TROVE-2019-001 and CVE-2019-8955.
+
+ o Minor features (geoip):
+ - Update geoip and geoip6 to the February 5 2019 Maxmind GeoLite2
+ Country database. Closes ticket 29478.
+
+ o Minor bugfixes (build, compatibility, rust, backport from 0.4.0.2-alpha):
+ - Update Cargo.lock file to match the version made by the latest
+ version of Rust, so that "make distcheck" will pass again. Fixes
+ bug 29244; bugfix on 0.3.3.4-alpha.
+
+ o Minor bugfixes (onion services, backport from 0.4.0.2-alpha):
+ - Stop logging "Tried to establish rendezvous on non-OR circuit..."
+ as a warning. Instead, log it as a protocol warning, because there
+ is nothing that relay operators can do to fix it. Fixes bug 29029;
+ bugfix on 0.2.5.7-rc.
+
+
+Changes in version 0.3.3.11 - 2019-01-07
+ Tor 0.3.3.11 backports numerous fixes from later versions of Tor.
+ numerous fixes, including an important fix for anyone using OpenSSL
+ 1.1.1. Anyone running an earlier version of Tor 0.3.3 should upgrade
+ to this version, or to a later series.
+
+ As a reminder, support the Tor 0.3.3 series will end on 22 Feb 2019.
+ We anticipate that this will be the last release of Tor 0.3.3, unless
+ some major bug is before then. Some time between now and then, users
+ should switch to either the Tor 0.3.4 series (supported until at least
+ 10 June 2019), or the Tor 0.3.5 series, which will receive long-term
+ support until at least 1 Feb 2022.
+
+ o Major bugfixes (OpenSSL, portability, backport from 0.3.5.5-alpha):
+ - Fix our usage of named groups when running as a TLS 1.3 client in
+ OpenSSL 1.1.1. Previously, we only initialized EC groups when
+ running as a relay, which caused clients to fail to negotiate TLS
+ 1.3 with relays. Fixes bug 28245; bugfix on 0.2.9.15 (when TLS 1.3
+ support was added).
+
+ o Major bugfixes (restart-in-process, backport from 0.3.5.1-alpha):
+ - Fix a use-after-free error that could be caused by passing Tor an
+ impossible set of options that would fail during options_act().
+ Fixes bug 27708; bugfix on 0.3.3.1-alpha.
+
+ o Minor features (continuous integration, backport from 0.3.5.1-alpha):
+ - Only run one online rust build in Travis, to reduce network
+ errors. Skip offline rust builds on Travis for Linux gcc, because
+ they're redundant. Implements ticket 27252.
+ - Skip gcc on OSX in Travis CI, because it's rarely used. Skip a
+ duplicate hardening-off build in Travis on Tor 0.2.9. Skip gcc on
+ Linux with default settings, because all the non-default builds
+ use gcc on Linux. Implements ticket 27252.
+
+ o Minor features (continuous integration, backport from 0.3.5.3-alpha):
+ - Use the Travis Homebrew addon to install packages on macOS during
+ Travis CI. The package list is the same, but the Homebrew addon
+ does not do a `brew update` by default. Implements ticket 27738.
+
+ o Minor features (fallback directory list, backport from 0.3.5.6-rc):
+ - Replace the 150 fallbacks originally introduced in Tor
+ 0.3.3.1-alpha in January 2018 (of which ~115 were still
+ functional), with a list of 157 fallbacks (92 new, 65 existing, 85
+ removed) generated in December 2018. Closes ticket 24803.
+
+ o Minor features (geoip):
+ - Update geoip and geoip6 to the January 3 2019 Maxmind GeoLite2
+ Country database. Closes ticket 29012.
+
+ o Minor features (OpenSSL bug workaround, backport from 0.3.5.7):
+ - Work around a bug in OpenSSL 1.1.1a, which prevented the TLS 1.3
+ key export function from handling long labels. When this bug is
+ detected, Tor will disable TLS 1.3. We recommend upgrading to a
+ version of OpenSSL without this bug when it becomes available.
+ Closes ticket 28973.
+
+ o Minor bugfixes (relay statistics, backport from 0.3.5.7):
+ - Update relay descriptor on bandwidth changes only when the uptime
+ is smaller than 24h, in order to reduce the efficiency of guard
+ discovery attacks. Fixes bug 24104; bugfix on 0.1.1.6-alpha.
+
+ o Minor bugfixes (C correctness, backport from 0.3.5.4-alpha):
+ - Avoid undefined behavior in an end-of-string check when parsing
+ the BEGIN line in a directory object. Fixes bug 28202; bugfix
+ on 0.2.0.3-alpha.
+
+ o Minor bugfixes (code safety, backport from 0.3.5.3-alpha):
+ - Rewrite our assertion macros so that they no longer suppress the
+ compiler's -Wparentheses warnings. Fixes bug 27709; bugfix
+
+ o Minor bugfixes (compilation, backport from 0.3.5.5-alpha):
+ - Initialize a variable unconditionally in aes_new_cipher(), since
+ some compilers cannot tell that we always initialize it before
+ use. Fixes bug 28413; bugfix on 0.2.9.3-alpha.
+
+ o Minor bugfixes (directory authority, backport from 0.3.5.4-alpha):
+ - Log additional info when we get a relay that shares an ed25519 ID
+ with a different relay, instead making a BUG() warning. Fixes bug
+ 27800; bugfix on 0.3.2.1-alpha.
+
+ o Minor bugfixes (directory permissions, backport form 0.3.5.3-alpha):
+ - When a user requests a group-readable DataDirectory, give it to
+ them. Previously, when the DataDirectory and the CacheDirectory
+ were the same, the default setting (0) for
+ CacheDirectoryGroupReadable would override the setting for
+ DataDirectoryGroupReadable. Fixes bug 26913; bugfix
+ on 0.3.3.1-alpha.
+
+ o Minor bugfixes (onion service v3, backport from 0.3.5.1-alpha):
+ - When the onion service directory can't be created or has the wrong
+ permissions, do not log a stack trace. Fixes bug 27335; bugfix
+ on 0.3.2.1-alpha.
+
+ o Minor bugfixes (onion service v3, backport from 0.3.5.2-alpha):
+ - Close all SOCKS request (for the same .onion) if the newly fetched
+ descriptor is unusable. Before that, we would close only the first
+ one leaving the other hanging and let to time out by themselves.
+ Fixes bug 27410; bugfix on 0.3.2.1-alpha.
+
+ o Minor bugfixes (onion service v3, backport from 0.3.5.3-alpha):
+ - Don't warn so loudly when Tor is unable to decode an onion
+ descriptor. This can now happen as a normal use case if a client
+ gets a descriptor with client authorization but the client is not
+ authorized. Fixes bug 27550; bugfix on 0.3.5.1-alpha.
+
+ o Minor bugfixes (onion service v3, backport from 0.3.5.6-rc):
+ - When deleting an ephemeral onion service (DEL_ONION), do not close
+ any rendezvous circuits in order to let the existing client
+ connections finish by themselves or closed by the application. The
+ HS v2 is doing that already so now we have the same behavior for
+ all versions. Fixes bug 28619; bugfix on 0.3.3.1-alpha.
+
+ o Minor bugfixes (HTTP tunnel):
+ - Fix a bug warning when closing an HTTP tunnel connection due to
+ an HTTP request we couldn't handle. Fixes bug 26470; bugfix on
+ 0.3.2.1-alpha.
+
+ o Minor bugfixes (memory leaks, backport from 0.3.5.5-alpha):
+ - Fix a harmless memory leak in libtorrunner.a. Fixes bug 28419;
+ bugfix on 0.3.3.1-alpha. Patch from Martin Kepplinger.
+
+ o Minor bugfixes (netflow padding, backport from 0.3.5.1-alpha):
+ - Ensure circuitmux queues are empty before scheduling or sending
+ padding. Fixes bug 25505; bugfix on 0.3.1.1-alpha.
+
+ o Minor bugfixes (protover, backport from 0.3.5.3-alpha):
+ - Reject protocol names containing bytes other than alphanumeric
+ characters and hyphens ([A-Za-z0-9-]). Fixes bug 27316; bugfix
+ on 0.2.9.4-alpha.
+
+ o Minor bugfixes (rust, backport from 0.3.5.1-alpha):
+ - Compute protover votes correctly in the rust version of the
+ protover code. Previously, the protover rewrite in 24031 allowed
+ repeated votes from the same voter for the same protocol version
+ to be counted multiple times in protover_compute_vote(). Fixes bug
+ 27649; bugfix on 0.3.3.5-rc.
+ - Reject protover names that contain invalid characters. Fixes bug
+ 27687; bugfix on 0.3.3.1-alpha.
+
+ o Minor bugfixes (rust, backport from 0.3.5.2-alpha):
+ - protover_all_supported() would attempt to allocate up to 16GB on
+ some inputs, leading to a potential memory DoS. Fixes bug 27206;
+ bugfix on 0.3.3.5-rc.
+
+ o Minor bugfixes (rust, backport from 0.3.5.4-alpha):
+ - Fix a potential null dereference in protover_all_supported(). Add
+ a test for it. Fixes bug 27804; bugfix on 0.3.3.1-alpha.
+ - Return a string that can be safely freed by C code, not one
+ created by the rust allocator, in protover_all_supported(). Fixes
+ bug 27740; bugfix on 0.3.3.1-alpha.
+ - Fix an API mismatch in the rust implementation of
+ protover_compute_vote(). This bug could have caused crashes on any
+ directory authorities running Tor with Rust (which we do not yet
+ recommend). Fixes bug 27741; bugfix on 0.3.3.6.
+
+ o Minor bugfixes (testing, backport from 0.3.5.1-alpha):
+ - If a unit test running in a subprocess exits abnormally or with a
+ nonzero status code, treat the test as having failed, even if the
+ test reported success. Without this fix, memory leaks don't cause
+ the tests to fail, even with LeakSanitizer. Fixes bug 27658;
+ bugfix on 0.2.2.4-alpha.
+
+ o Minor bugfixes (testing, backport from 0.3.5.4-alpha):
+ - Treat backtrace test failures as expected on BSD-derived systems
+ (NetBSD, OpenBSD, and macOS/Darwin) until we solve bug 17808.
+ (FreeBSD failures have been treated as expected since 18204 in
+ 0.2.8.) Fixes bug 27948; bugfix on 0.2.5.2-alpha.
+
+ o Minor bugfixes (unit tests, guard selection, backport from 0.3.5.6-rc):
+ - Stop leaking memory in an entry guard unit test. Fixes bug 28554;
+ bugfix on 0.3.0.1-alpha.
+
+
+Changes in version 0.3.3.10 - 2018-09-10
+ Tor 0.3.3.10 backports numerous fixes from later versions of Tor.
+
+ o Minor features (bug workaround, backport from 0.3.4.7-rc):
+ - Compile correctly on systems that provide the C11 stdatomic.h
+ header, but where C11 atomic functions don't actually compile.
+ Closes ticket 26779; workaround for Debian issue 903709.
+
+ o Minor features (compatibility, backport from 0.3.4.8):
+ - Tell OpenSSL to maintain backward compatibility with previous
+ RSA1024/DH1024 users in Tor. With OpenSSL 1.1.1-pre6, these
+ ciphers are disabled by default. Closes ticket 27344.
+
+ o Minor features (continuous integration, backport from 0.3.4.7-rc):
+ - Backport Travis rust distcheck to 0.3.3. Closes ticket 24629.
+ - Enable macOS builds in our Travis CI configuration. Closes
+ ticket 24629.
+ - Install libcap-dev and libseccomp2-dev so these optional
+ dependencies get tested on Travis CI. Closes ticket 26560.
+ - Run asciidoc during Travis CI. Implements ticket 27087.
+ - Use ccache in our Travis CI configuration. Closes ticket 26952.
+
+ o Minor features (continuous integration, rust, backport from 0.3.4.7-rc):
+ - Use cargo cache in our Travis CI configuration. Closes
+ ticket 26952.
+
+ o Minor features (controller, backport from 0.3.4.6-rc):
+ - The control port now exposes the list of HTTPTunnelPorts and
+ ExtOrPorts via GETINFO net/listeners/httptunnel and
+ net/listeners/extor respectively. Closes ticket 26647.
+
+ o Minor features (directory authorities, backport from 0.3.4.7-rc):
+ - Authorities no longer vote to make the subprotocol version
+ "LinkAuth=1" a requirement: it is unsupportable with NSS, and
+ hasn't been needed since Tor 0.3.0.1-alpha. Closes ticket 27286.
+
+ o Minor features (geoip):
+ - Update geoip and geoip6 to the August 7 2018 Maxmind GeoLite2
+ Country database. Closes ticket 27089.
+
+ o Minor bugfixes (compilation, backport from 0.3.4.6-rc):
+ - When compiling with --enable-openbsd-malloc or --enable-tcmalloc,
+ tell the compiler not to include the system malloc implementation.
+ Fixes bug 20424; bugfix on 0.2.0.20-rc.
+ - Don't try to use a pragma to temporarily disable the
+ -Wunused-const-variable warning if the compiler doesn't support
+ it. Fixes bug 26785; bugfix on 0.3.2.11.
+
+ o Minor bugfixes (compilation, backport from 0.3.4.7-rc):
+ - Silence a spurious compiler warning on the GetAdaptersAddresses
+ function pointer cast. This issue is already fixed by 26481 in
+ 0.3.5 and later, by removing the lookup and cast. Fixes bug 27465;
+ bugfix on 0.2.3.11-alpha.
+ - Stop calling SetProcessDEPPolicy() on 64-bit Windows. It is not
+ supported, and always fails. Some compilers warn about the
+ function pointer cast on 64-bit Windows. Fixes bug 27461; bugfix
+ on 0.2.2.23-alpha.
+
+ o Minor bugfixes (compilation, windows, backport from 0.3.4.7-rc):
+ - Don't link or search for pthreads when building for Windows, even
+ if we are using build environment (like mingw) that provides a
+ pthreads library. Fixes bug 27081; bugfix on 0.1.0.1-rc.
+
+ o Minor bugfixes (continuous integration, backport from 0.3.4.6-rc):
+ - Skip a pair of unreliable key generation tests on Windows, until
+ the underlying issue in bug 26076 is resolved. Fixes bug 26830 and
+ bug 26853; bugfix on 0.2.7.3-rc and 0.3.2.1-alpha respectively.
+
+ o Minor bugfixes (continuous integration, backport from 0.3.4.7-rc):
+ - Build with zstd on macOS. Fixes bug 27090; bugfix on 0.3.1.5-alpha.
+ - Pass the module flags to distcheck configure, and log the flags
+ before running configure. (Backported to 0.2.9 and later as a
+ precaution.) Fixes bug 27088; bugfix on 0.3.4.1-alpha.
+
+ o Minor bugfixes (continuous integration, backport from 0.3.4.8):
+ - When a Travis build fails, and showing a log fails, keep trying to
+ show the other logs. Fixes bug 27453; bugfix on 0.3.4.7-rc.
+ - When we use echo in Travis, don't pass a --flag as the first
+ argument. Fixes bug 27418; bugfix on 0.3.4.7-rc.
+
+ o Minor bugfixes (directory authority, backport from 0.3.4.6-rc):
+ - When voting for recommended versions, make sure that all of the
+ versions are well-formed and parsable. Fixes bug 26485; bugfix
+ on 0.1.1.6-alpha.
+
+ o Minor bugfixes (in-process restart, backport from 0.3.4.7-rc):
+ - Always call tor_free_all() when leaving tor_run_main(). When we
+ did not, restarting tor in-process would cause an assertion
+ failure. Fixes bug 26948; bugfix on 0.3.3.1-alpha.
+
+ o Minor bugfixes (linux seccomp2 sandbox, backport from 0.3.4.7-rc):
+ - Fix a bug in our sandboxing rules for the openat() syscall.
+ Previously, no openat() call would be permitted, which would break
+ filesystem operations on recent glibc versions. Fixes bug 25440;
+ bugfix on 0.2.9.15. Diagnosis and patch from Daniel Pinto.
+
+ o Minor bugfixes (logging, backport from 0.3.4.6-rc):
+ - Improve the log message when connection initiators fail to
+ authenticate direct connections to relays. Fixes bug 26927; bugfix
+ on 0.3.0.1-alpha.
+
+ o Minor bugfixes (onion services, backport from 0.3.4.7-rc):
+ - Fix bug that causes services to not ever rotate their descriptors
+ if they were getting SIGHUPed often. Fixes bug 26932; bugfix
+ on 0.3.2.1-alpha.
+
+ o Minor bugfixes (onion services, backport from 0.3.4.8):
+ - Silence a spurious compiler warning in
+ rend_client_send_introduction(). Fixes bug 27463; bugfix
+ on 0.1.1.2-alpha.
+
+ o Minor bugfixes (portability, backport from 0.3.4.6-rc):
+ - Work around two different bugs in the OS X 10.10 and later SDKs
+ that would prevent us from successfully targeting earlier versions
+ of OS X. Fixes bug 26876; bugfix on 0.3.3.1-alpha.
+
+ o Minor bugfixes (portability, backport from 0.3.4.7-rc):
+ - Fix compilation of the unit tests on GNU/Hurd, which does not
+ define PATH_MAX. Fixes bug 26873; bugfix on 0.3.3.1-alpha. Patch
+ from "paulusASol".
+
+ o Minor bugfixes (rust, backport from 0.3.4.7-rc):
+ - Backport test_rust.sh from master. Fixes bug 26497; bugfix
+ on 0.3.1.5-alpha.
+ - Consistently use ../../.. as a fallback for $abs_top_srcdir in
+ test_rust.sh. Fixes bug 27093; bugfix on 0.3.4.3-alpha.
+ - Protover parsing was accepting the presence of whitespace in
+ version strings, which the C implementation would choke on, e.g.
+ "Desc=1\t,2". Fixes bug 27177; bugfix on 0.3.3.5-rc.
+ - Protover parsing was ignoring a 2nd hyphen and everything after
+ it, accepting entries like "Link=1-5-foo". Fixes bug 27164; bugfix
+ on 0.3.3.1-alpha.
+ - Stop setting $CARGO_HOME. cargo will use the user's $CARGO_HOME, or
+ $HOME/.cargo by default. Fixes bug 26497; bugfix on 0.3.1.5-alpha.
+ - cd to ${abs_top_builddir}/src/rust before running cargo in
+ src/test/test_rust.sh. This makes the working directory consistent
+ between builds and tests. Fixes bug 26497; bugfix on 0.3.3.2-alpha.
+
+ o Minor bugfixes (single onion services, Tor2web, backport from 0.3.4.6-rc):
+ - Log a protocol warning when single onion services or Tor2web clients
+ fail to authenticate direct connections to relays.
+ Fixes bug 26924; bugfix on 0.2.9.1-alpha.
+
+ o Minor bugfixes (testing, backport from 0.3.4.6-rc):
+ - Disable core dumps in test_bt.sh, to avoid failures in "make
+ distcheck". Fixes bug 26787; bugfix on 0.2.5.2-alpha.
+
+ o Minor bugfixes (testing, chutney, backport from 0.3.4.8):
+ - When running make test-network-all, use the mixed+hs-v2 network.
+ (A previous fix to chutney removed v3 onion services from the
+ mixed+hs-v23 network, so seeing "mixed+hs-v23" in tests is
+ confusing.) Fixes bug 27345; bugfix on 0.3.2.1-alpha.
+ - Before running make test-network-all, delete old logs and test
+ result files, to avoid spurious failures. Fixes bug 27295; bugfix
+ on 0.2.7.3-rc.
+
+ o Minor bugfixes (testing, openssl compatibility, backport from 0.3.4.7-rc):
+ - Our "tortls/cert_matches_key" unit test no longer relies on
+ OpenSSL internals. Previously, it relied on unsupported OpenSSL
+ behavior in a way that caused it to crash with OpenSSL 1.0.2p.
+ Fixes bug 27226; bugfix on 0.2.5.1-alpha.
+
+ o Minor bugfixes (v3 onion services, backport from 0.3.4.6-rc):
+ - Stop sending ed25519 link specifiers in v3 onion service introduce
+ cells and descriptors, when the rendezvous or introduction point
+ doesn't support ed25519 link authentication. Fixes bug 26627;
+ bugfix on 0.3.2.4-alpha.
+
+ o Minor bugfixes (Windows, compilation, backport from 0.3.4.7-rc):
+ - Silence a compilation warning on MSVC 2017 and clang-cl. Fixes bug
+ 27185; bugfix on 0.2.2.2-alpha.
+
+
+Changes in version 0.3.3.9 - 2018-07-13
+ Tor 0.3.3.9 moves to a new bridge authority, meaning people running
+ bridge relays should upgrade.
+
+ o Directory authority changes:
+ - The "Bifroest" bridge authority has been retired; the new bridge
+ authority is "Serge", and it is operated by George from the
+ TorBSD project. Closes ticket 26771.
+
+
+Changes in version 0.3.2.11 - 2018-07-13
+ Tor 0.3.2.11 moves to a new bridge authority, meaning people running
+ bridge relays should upgrade. We also take this opportunity to backport
+ other minor fixes.
+
+ o Directory authority changes:
+ - The "Bifroest" bridge authority has been retired; the new bridge
+ authority is "Serge", and it is operated by George from the
+ TorBSD project. Closes ticket 26771.
+
+ o Directory authority changes (backport from 0.3.3.7):
+ - Add an IPv6 address for the "dannenberg" directory authority.
+ Closes ticket 26343.
+
+ o Major bugfixes (directory authorities, backport from 0.3.4.1-alpha):
+ - When directory authorities read a zero-byte bandwidth file, they
+ would previously log a warning with the contents of an
+ uninitialised buffer. They now log a warning about the empty file
+ instead. Fixes bug 26007; bugfix on 0.2.2.1-alpha.
+
+ o Major bugfixes (onion service, backport from 0.3.4.1-alpha):
+ - Correctly detect when onion services get disabled after HUP. Fixes
+ bug 25761; bugfix on 0.3.2.1.
+
+ o Minor features (sandbox, backport from 0.3.3.4-alpha):
+ - Explicitly permit the poll() system call when the Linux
+ seccomp2-based sandbox is enabled: apparently, some versions of
+ libc use poll() when calling getpwnam(). Closes ticket 25313.
+
+ o Minor feature (continuous integration, backport from 0.3.3.5-rc):
+ - Update the Travis CI configuration to use the stable Rust channel,
+ now that we have decided to require that. Closes ticket 25714.
+
+ o Minor features (continuous integration, backport from 0.3.4.1-alpha):
+ - Our .travis.yml configuration now includes support for testing the
+ results of "make distcheck". (It's not uncommon for "make check"
+ to pass but "make distcheck" to fail.) Closes ticket 25814.
+ - Our Travis CI configuration now integrates with the Coveralls
+ coverage analysis tool. Closes ticket 25818.
+
+ o Minor features (relay, diagnostic, backport from 0.3.4.3-alpha):
+ - Add several checks to detect whether Tor relays are uploading
+ their descriptors without specifying why they regenerated them.
+ Diagnostic for ticket 25686.
+
+ o Minor features (compilation, backport from 0.3.4.4-rc):
+ - When building Tor, prefer to use Python 3 over Python 2, and more
+ recent (contemplated) versions over older ones. Closes
+ ticket 26372.
+
+ o Minor features (geoip):
+ - Update geoip and geoip6 to the July 3 2018 Maxmind GeoLite2
+ Country database. Closes ticket 26674.
+
+ o Minor bugfixes (correctness, client, backport from 0.3.4.1-alpha):
+ - Upon receiving a malformed connected cell, stop processing the
+ cell immediately. Previously we would mark the connection for
+ close, but continue processing the cell as if the connection were
+ open. Fixes bug 26072; bugfix on 0.2.4.7-alpha.
+
+ o Minor bugfixes (Linux seccomp2 sandbox, backport from 0.3.4.1-alpha):
+ - Allow the nanosleep() system call, which glibc uses to implement
+ sleep() and usleep(). Fixes bug 24969; bugfix on 0.2.5.1-alpha.
+
+ o Minor bugfixes (testing, compatibility, backport from 0.3.4.4-rc):
+ - When running the hs_ntor_ref.py test, make sure only to pass
+ strings (rather than "bytes" objects) to the Python subprocess
+ module. Python 3 on Windows seems to require this. Fixes bug
+ 26535; bugfix on 0.3.1.1-alpha.
+ - When running the ntor_ref.py test, make sure only to pass strings
+ (rather than "bytes" objects) to the Python subprocess module.
+ Python 3 on Windows seems to require this. Fixes bug 26535; bugfix
+ on 0.2.5.5-alpha.
+
+ o Minor bugfixes (compatibility, openssl, backport from 0.3.4.2-alpha):
+ - Work around a change in OpenSSL 1.1.1 where return values that
+ would previously indicate "no password" now indicate an empty
+ password. Without this workaround, Tor instances running with
+ OpenSSL 1.1.1 would accept descriptors that other Tor instances
+ would reject. Fixes bug 26116; bugfix on 0.2.5.16.
+
+ o Minor bugfixes (documentation, backport from 0.3.3.5-rc):
+ - Document that the PerConnBW{Rate,Burst} options will fall back to
+ their corresponding consensus parameters only if those parameters
+ are set. Previously we had claimed that these values would always
+ be set in the consensus. Fixes bug 25296; bugfix on 0.2.2.7-alpha.
+
+ o Minor bugfixes (compilation, backport from 0.3.4.4-rc):
+ - Fix a compilation warning on some versions of GCC when building
+ code that calls routerinfo_get_my_routerinfo() twice, assuming
+ that the second call will succeed if the first one did. Fixes bug
+ 26269; bugfix on 0.2.8.2-alpha.
+
+ o Minor bugfixes (client, backport from 0.3.4.1-alpha):
+ - Don't consider Tor running as a client if the ControlPort is open,
+ but no actual client ports are open. Fixes bug 26062; bugfix
+ on 0.2.9.4-alpha.
+
+ o Minor bugfixes (hardening, backport from 0.3.4.2-alpha):
+ - Prevent a possible out-of-bounds smartlist read in
+ protover_compute_vote(). Fixes bug 26196; bugfix on 0.2.9.4-alpha.
+
+ o Minor bugfixes (C correctness, backport from 0.3.3.4-alpha):
+ - Fix a very unlikely (impossible, we believe) null pointer
+ dereference. Fixes bug 25629; bugfix on 0.2.9.15. Found by
+ Coverity; this is CID 1430932.
+
+ o Minor bugfixes (onion service, backport from 0.3.4.1-alpha):
+ - Fix a memory leak when a v3 onion service is configured and gets a
+ SIGHUP signal. Fixes bug 25901; bugfix on 0.3.2.1-alpha.
+ - When parsing the descriptor signature, look for the token plus an
+ extra white-space at the end. This is more correct but also will
+ allow us to support new fields that might start with "signature".
+ Fixes bug 26069; bugfix on 0.3.0.1-alpha.
+
+ o Minor bugfixes (relay, backport from 0.3.4.3-alpha):
+ - Relays now correctly block attempts to re-extend to the previous
+ relay by Ed25519 identity. Previously they would warn in this
+ case, but not actually reject the attempt. Fixes bug 26158; bugfix
+ on 0.3.0.1-alpha.
+
+ o Minor bugfixes (relay, crash, backport from 0.3.4.1-alpha):
+ - Avoid a crash when running with DirPort set but ORPort turned off.
+ Fixes a case of bug 23693; bugfix on 0.3.1.1-alpha.
+
+ o Minor bugfixes (compilation, backport from 0.3.4.2-alpha):
+ - Silence unused-const-variable warnings in zstd.h with some GCC
+ versions. Fixes bug 26272; bugfix on 0.3.1.1-alpha.
+
+ o Minor bugfixes (testing, backport from 0.3.3.4-alpha):
+ - Avoid intermittent test failures due to a test that had relied on
+ onion service introduction point creation finishing within 5
+ seconds of real clock time. Fixes bug 25450; bugfix
+ on 0.3.1.3-alpha.
+
+ o Minor bugfixes (compilation, backport from 0.3.3.4-alpha):
+ - Fix a C99 compliance issue in our configuration script that caused
+ compilation issues when compiling Tor with certain versions of
+ xtools. Fixes bug 25474; bugfix on 0.3.2.5-alpha.
+
+ o Minor bugfixes (memory, correctness, backport from 0.3.4.4-rc):
+ - Fix a number of small memory leaks identified by coverity. Fixes
+ bug 26467; bugfix on numerous Tor versions.
+
+ o Code simplification and refactoring (backport from 0.3.3.5-rc):
+ - Move the list of default directory authorities to its own file.
+ Closes ticket 24854. Patch by "beastr0".
+
+
+Changes in version 0.2.9.16 - 2018-07-13
+ Tor 0.2.9.16 moves to a new bridge authority, meaning people running
+ bridge relays should upgrade. We also take this opportunity to backport
+ other minor fixes.
+
+ o Directory authority changes:
+ - The "Bifroest" bridge authority has been retired; the new bridge
+ authority is "Serge", and it is operated by George from the
+ TorBSD project. Closes ticket 26771.
+
+ o Directory authority changes (backport from 0.3.3.7):
+ - Add an IPv6 address for the "dannenberg" directory authority.
+ Closes ticket 26343.
+
+ o Major bugfixes (directory authorities, backport from 0.3.4.1-alpha):
+ - When directory authorities read a zero-byte bandwidth file, they
+ would previously log a warning with the contents of an
+ uninitialised buffer. They now log a warning about the empty file
+ instead. Fixes bug 26007; bugfix on 0.2.2.1-alpha.
+
+ o Minor features (sandbox, backport from 0.3.3.4-alpha):
+ - Explicitly permit the poll() system call when the Linux
+ seccomp2-based sandbox is enabled: apparently, some versions of
+ libc use poll() when calling getpwnam(). Closes ticket 25313.
+
+ o Minor features (continuous integration, backport from 0.3.4.1-alpha):
+ - Our .travis.yml configuration now includes support for testing the
+ results of "make distcheck". (It's not uncommon for "make check"
+ to pass but "make distcheck" to fail.) Closes ticket 25814.
+ - Our Travis CI configuration now integrates with the Coveralls
+ coverage analysis tool. Closes ticket 25818.
+
+ o Minor features (compilation, backport from 0.3.4.4-rc):
+ - When building Tor, prefer to use Python 3 over Python 2, and more
+ recent (contemplated) versions over older ones. Closes
+ ticket 26372.
+
+ o Minor features (geoip):
+ - Update geoip and geoip6 to the July 3 2018 Maxmind GeoLite2
+ Country database. Closes ticket 26674.
+
+ o Minor bugfixes (correctness, client, backport from 0.3.4.1-alpha):
+ - Upon receiving a malformed connected cell, stop processing the
+ cell immediately. Previously we would mark the connection for
+ close, but continue processing the cell as if the connection were
+ open. Fixes bug 26072; bugfix on 0.2.4.7-alpha.
+
+ o Minor bugfixes (Linux seccomp2 sandbox, backport from 0.3.4.1-alpha):
+ - Allow the nanosleep() system call, which glibc uses to implement
+ sleep() and usleep(). Fixes bug 24969; bugfix on 0.2.5.1-alpha.
+
+ o Minor bugfixes (testing, compatibility, backport from 0.3.4.4-rc):
+ - When running the ntor_ref.py test, make sure only to pass strings
+ (rather than "bytes" objects) to the Python subprocess module.
+ Python 3 on Windows seems to require this. Fixes bug 26535; bugfix
+ on 0.2.5.5-alpha.
+
+ o Minor bugfixes (compatibility, openssl, backport from 0.3.4.2-alpha):
+ - Work around a change in OpenSSL 1.1.1 where return values that
+ would previously indicate "no password" now indicate an empty
+ password. Without this workaround, Tor instances running with
+ OpenSSL 1.1.1 would accept descriptors that other Tor instances
+ would reject. Fixes bug 26116; bugfix on 0.2.5.16.
+
+ o Minor bugfixes (compilation, backport from 0.3.4.4-rc):
+ - Fix a compilation warning on some versions of GCC when building
+ code that calls routerinfo_get_my_routerinfo() twice, assuming
+ that the second call will succeed if the first one did. Fixes bug
+ 26269; bugfix on 0.2.8.2-alpha.
+
+ o Minor bugfixes (client, backport from 0.3.4.1-alpha):
+ - Don't consider Tor running as a client if the ControlPort is open,
+ but no actual client ports are open. Fixes bug 26062; bugfix
+ on 0.2.9.4-alpha.
+
+ o Minor bugfixes (hardening, backport from 0.3.4.2-alpha):
+ - Prevent a possible out-of-bounds smartlist read in
+ protover_compute_vote(). Fixes bug 26196; bugfix on 0.2.9.4-alpha.
+
+ o Minor bugfixes (C correctness, backport from 0.3.3.4-alpha):
+ - Fix a very unlikely (impossible, we believe) null pointer
+ dereference. Fixes bug 25629; bugfix on 0.2.9.15. Found by
+ Coverity; this is CID 1430932.
+
+ o Minor bugfixes (memory, correctness, backport from 0.3.4.4-rc):
+ - Fix a number of small memory leaks identified by coverity. Fixes
+ bug 26467; bugfix on numerous Tor versions.
+
+ o Code simplification and refactoring (backport from 0.3.3.5-rc):
+ - Move the list of default directory authorities to its own file.
+ Closes ticket 24854. Patch by "beastr0".
+
+
+Changes in version 0.3.3.8 - 2018-07-09
+ Tor 0.3.3.8 backports several changes from the 0.3.4.x series, including
+ fixes for a memory leak affecting directory authorities.
+
+ o Major bugfixes (directory authority, backport from 0.3.4.3-alpha):
+ - Stop leaking memory on directory authorities when planning to
+ vote. This bug was crashing authorities by exhausting their
+ memory. Fixes bug 26435; bugfix on 0.3.3.6.
+
+ o Major bugfixes (rust, testing, backport from 0.3.4.3-alpha):
+ - Make sure that failing tests in Rust will actually cause the build
+ to fail: previously, they were ignored. Fixes bug 26258; bugfix
+ on 0.3.3.4-alpha.
+
+ o Minor features (compilation, backport from 0.3.4.4-rc):
+ - When building Tor, prefer to use Python 3 over Python 2, and more
+ recent (contemplated) versions over older ones. Closes
+ ticket 26372.
+
+ o Minor features (geoip):
+ - Update geoip and geoip6 to the July 3 2018 Maxmind GeoLite2
+ Country database. Closes ticket 26674.
+
+ o Minor features (relay, diagnostic, backport from 0.3.4.3-alpha):
+ - Add several checks to detect whether Tor relays are uploading
+ their descriptors without specifying why they regenerated them.
+ Diagnostic for ticket 25686.
+
+ o Minor bugfixes (circuit path selection, backport from 0.3.4.1-alpha):
+ - Don't count path selection failures as circuit build failures.
+ This change should eliminate cases where Tor blames its guard or
+ the network for situations like insufficient microdescriptors
+ and/or overly restrictive torrc settings. Fixes bug 25705; bugfix
+ on 0.3.3.1-alpha.
+
+ o Minor bugfixes (compilation, backport from 0.3.4.4-rc):
+ - Fix a compilation warning on some versions of GCC when building
+ code that calls routerinfo_get_my_routerinfo() twice, assuming
+ that the second call will succeed if the first one did. Fixes bug
+ 26269; bugfix on 0.2.8.2-alpha.
+
+ o Minor bugfixes (control port, backport from 0.3.4.4-rc):
+ - Handle the HSADDRESS= argument to the HSPOST command properly.
+ (Previously, this argument was misparsed and thus ignored.) Fixes
+ bug 26523; bugfix on 0.3.3.1-alpha. Patch by "akwizgran".
+
+ o Minor bugfixes (memory, correctness, backport from 0.3.4.4-rc):
+ - Fix a number of small memory leaks identified by coverity. Fixes
+ bug 26467; bugfix on numerous Tor versions.
+
+ o Minor bugfixes (relay, backport from 0.3.4.3-alpha):
+ - Relays now correctly block attempts to re-extend to the previous
+ relay by Ed25519 identity. Previously they would warn in this
+ case, but not actually reject the attempt. Fixes bug 26158; bugfix
+ on 0.3.0.1-alpha.
+
+ o Minor bugfixes (restart-in-process, backport from 0.3.4.1-alpha):
+ - When shutting down, Tor now clears all the flags in the control.c
+ module. This should prevent a bug where authentication cookies are
+ not generated on restart. Fixes bug 25512; bugfix on 0.3.3.1-alpha.
+
+ o Minor bugfixes (testing, compatibility, backport from 0.3.4.4-rc):
+ - When running the hs_ntor_ref.py test, make sure only to pass
+ strings (rather than "bytes" objects) to the Python subprocess
+ module. Python 3 on Windows seems to require this. Fixes bug
+ 26535; bugfix on 0.3.1.1-alpha.
+ - When running the ntor_ref.py test, make sure only to pass strings
+ (rather than "bytes" objects) to the Python subprocess module.
+ Python 3 on Windows seems to require this. Fixes bug 26535; bugfix
+ on 0.2.5.5-alpha.
+
+
+Changes in version 0.3.3.7 - 2018-06-12
+ Tor 0.3.3.7 backports several changes from the 0.3.4.x series, including
+ fixes for bugs affecting compatibility and stability.
+
+ o Directory authority changes:
+ - Add an IPv6 address for the "dannenberg" directory authority.
+ Closes ticket 26343.
+
+ o Minor features (geoip):
+ - Update geoip and geoip6 to the June 7 2018 Maxmind GeoLite2
+ Country database. Closes ticket 26351.
+
+ o Minor bugfixes (compatibility, openssl, backport from 0.3.4.2-alpha):
+ - Work around a change in OpenSSL 1.1.1 where return values that
+ would previously indicate "no password" now indicate an empty
+ password. Without this workaround, Tor instances running with
+ OpenSSL 1.1.1 would accept descriptors that other Tor instances
+ would reject. Fixes bug 26116; bugfix on 0.2.5.16.
+
+ o Minor bugfixes (compilation, backport from 0.3.4.2-alpha):
+ - Silence unused-const-variable warnings in zstd.h with some GCC
+ versions. Fixes bug 26272; bugfix on 0.3.1.1-alpha.
+
+ o Minor bugfixes (controller, backport from 0.3.4.2-alpha):
+ - Improve accuracy of the BUILDTIMEOUT_SET control port event's
+ TIMEOUT_RATE and CLOSE_RATE fields. (We were previously
+ miscounting the total number of circuits for these field values.)
+ Fixes bug 26121; bugfix on 0.3.3.1-alpha.
+
+ o Minor bugfixes (hardening, backport from 0.3.4.2-alpha):
+ - Prevent a possible out-of-bounds smartlist read in
+ protover_compute_vote(). Fixes bug 26196; bugfix on 0.2.9.4-alpha.
+
+ o Minor bugfixes (path selection, backport from 0.3.4.1-alpha):
+ - Only select relays when they have the descriptors we prefer to use
+ for them. This change fixes a bug where we could select a relay
+ because it had _some_ descriptor, but reject it later with a
+ nonfatal assertion error because it didn't have the exact one we
+ wanted. Fixes bugs 25691 and 25692; bugfix on 0.3.3.4-alpha.
+
+
+Changes in version 0.3.3.6 - 2018-05-22
+ Tor 0.3.3.6 is the first stable release in the 0.3.3 series. It
+ backports several important fixes from the 0.3.4.1-alpha.
+
+ The Tor 0.3.3 series includes controller support and other
+ improvements for v3 onion services, official support for embedding Tor
+ within other applications, and our first non-trivial module written in
+ the Rust programming language. (Rust is still not enabled by default
+ when building Tor.) And as usual, there are numerous other smaller
+ bugfixes, features, and improvements.
+
+ Below are the changes since 0.3.3.5-rc. For a list of all changes
+ since 0.3.2.10, see the ReleaseNotes file.
+
+ o Major bugfixes (directory authorities, security, backport from 0.3.4.1-alpha):
+ - When directory authorities read a zero-byte bandwidth file, they
+ would previously log a warning with the contents of an
+ uninitialised buffer. They now log a warning about the empty file
+ instead. Fixes bug 26007; bugfix on 0.2.2.1-alpha.
+
+ o Major bugfixes (security, directory authority, denial-of-service):
+ - Fix a bug that could have allowed an attacker to force a directory
+ authority to use up all its RAM by passing it a maliciously
+ crafted protocol versions string. Fixes bug 25517; bugfix on
+ 0.2.9.4-alpha. This issue is also tracked as TROVE-2018-005.
+
+ o Major bugfixes (crash, backport from 0.3.4.1-alpha):
+ - Avoid a rare assertion failure in the circuit build timeout code
+ if we fail to allow any circuits to actually complete. Fixes bug
+ 25733; bugfix on 0.2.2.2-alpha.
+
+ o Major bugfixes (directory authorities, backport from 0.3.4.1-alpha):
+ - Avoid a crash when testing router reachability on a router that
+ could have an ed25519 ID, but which does not. Fixes bug 25415;
+ bugfix on 0.3.3.2-alpha.
+
+ o Major bugfixes (onion service, backport from 0.3.4.1-alpha):
+ - Correctly detect when onion services get disabled after HUP. Fixes
+ bug 25761; bugfix on 0.3.2.1.
+
+ o Major bugfixes (relay, denial of service, backport from 0.3.4.1-alpha):
+ - Impose a limit on circuit cell queue size. The limit can be
+ controlled by a consensus parameter. Fixes bug 25226; bugfix
+ on 0.2.4.14-alpha.
+
+ o Minor features (compatibility, backport from 0.3.4.1-alpha):
+ - Avoid some compilation warnings with recent versions of LibreSSL.
+ Closes ticket 26006.
+
+ o Minor features (continuous integration, backport from 0.3.4.1-alpha):
+ - Our .travis.yml configuration now includes support for testing the
+ results of "make distcheck". (It's not uncommon for "make check"
+ to pass but "make distcheck" to fail.) Closes ticket 25814.
+ - Our Travis CI configuration now integrates with the Coveralls
+ coverage analysis tool. Closes ticket 25818.
+
+ o Minor features (geoip):
+ - Update geoip and geoip6 to the May 1 2018 Maxmind GeoLite2 Country
+ database. Closes ticket 26104.
+
+ o Minor bugfixes (client, backport from 0.3.4.1-alpha):
+ - Don't consider Tor running as a client if the ControlPort is open,
+ but no actual client ports are open. Fixes bug 26062; bugfix
+ on 0.2.9.4-alpha.
+
+ o Minor bugfixes (correctness, client, backport from 0.3.4.1-alpha):
+ - Upon receiving a malformed connected cell, stop processing the
+ cell immediately. Previously we would mark the connection for
+ close, but continue processing the cell as if the connection were
+ open. Fixes bug 26072; bugfix on 0.2.4.7-alpha.
+
+ o Minor bugfixes (documentation, backport from 0.3.4.1-alpha):
+ - Stop saying in the manual that clients cache ipv4 dns answers from
+ exit relays. We haven't used them since 0.2.6.3-alpha, and in
+ ticket 24050 we stopped even caching them as of 0.3.2.6-alpha, but
+ we forgot to say so in the man page. Fixes bug 26052; bugfix
+ on 0.3.2.6-alpha.
+
+ o Minor bugfixes (Linux seccomp2 sandbox, backport from 0.3.4.1-alpha):
+ - Allow the nanosleep() system call, which glibc uses to implement
+ sleep() and usleep(). Fixes bug 24969; bugfix on 0.2.5.1-alpha.
+
+ o Minor bugfixes (onion service, backport from 0.3.4.1-alpha):
+ - Fix a memory leak when a v3 onion service is configured and gets a
+ SIGHUP signal. Fixes bug 25901; bugfix on 0.3.2.1-alpha.
+ - When parsing the descriptor signature, look for the token plus an
+ extra white-space at the end. This is more correct but also will
+ allow us to support new fields that might start with "signature".
+ Fixes bug 26069; bugfix on 0.3.0.1-alpha.
+
+ o Minor bugfixes (relay, crash, backport from 0.3.4.1-alpha):
+ - Avoid a crash when running with DirPort set but ORPort tuned off.
+ Fixes a case of bug 23693; bugfix on 0.3.1.1-alpha.
+
+ o Documentation (backport from 0.3.4.1-alpha):
+ - Correct an IPv6 error in the documentation for ExitPolicy. Closes
+ ticket 25857. Patch from "CTassisF".
+
+
+Changes in version 0.3.3.5-rc - 2018-04-15
+ Tor 0.3.3.5-rc fixes various bugs in earlier versions of Tor,
+ including some that could affect reliability or correctness.
+
+ This is the first release candidate in the 0.3.3 series. If we find no
+ new bugs or regression here, then the first stable 0.3.3 release will
+ be nearly identical to this one.
+
+ o Major bugfixes (security, protover, voting):
+ - Revise Rust implementation of protover to use a more memory-
+ efficient voting algorithm and corresponding data structures, thus
+ avoiding a potential memory-based DoS attack where specially
+ crafted protocol strings would expand to fill available memory.
+ Fixes bug 24031; bugfix on 0.3.3.1-alpha.
+
+ o Major bugfixes (performance, load balancing):
+ - Directory authorities no longer vote in favor of the Guard flag
+ for relays without directory support. Starting in Tor
+ 0.3.0.1-alpha, clients have been avoiding using such relays in the
+ Guard position, leading to increasingly broken load balancing for
+ the 5%-or-so of Guards that don't advertise directory support.
+ Fixes bug 22310; bugfix on 0.3.0.6.
+
+ o Minor feature (continuous integration):
+ - Update the Travis CI configuration to use the stable Rust channel,
+ now that we have decided to require that. Closes ticket 25714.
+
+ o Minor features (config options):
+ - Change the way the default value for MaxMemInQueues is calculated.
+ We now use 40% of the hardware RAM if the system has 8 GB RAM or
+ more. Otherwise we use the former value of 75%. Closes
+ ticket 24782.
+
+ o Minor features (geoip):
+ - Update geoip and geoip6 to the April 3 2018 Maxmind GeoLite2
+ Country database. Closes ticket 25718.
+
+ o Minor bugfixes (client):
+ - When using a listed relay as a bridge, and also using
+ microdescriptors, and considering that relay as a non-bridge in a
+ circuit, treat its microdescriptor as a valid source of
+ information about that relay. This change should prevent a non-
+ fatal assertion error. Fixes bug 25691; bugfix on 0.3.3.4-alpha.
+
+ o Minor bugfixes (controller):
+ - Restore the correct operation of the RESOLVE command, which had
+ been broken since we added the ability to enable/disable DNS on
+ specific listener ports. Fixes bug 25617; bugfix on 0.2.9.3-alpha.
+
+ o Minor bugfixes (distribution, compilation, rust):
+ - Build correctly when the rust dependencies submodule is loaded,
+ but the TOR_RUST_DEPENDENCIES environment variable is not set.
+ Fixes bug 25679; bugfix on 0.3.3.1-alpha.
+ - Actually include all of our Rust source in our source
+ distributions. (Previously, a few of the files were accidentally
+ omitted.) Fixes bug 25732; bugfix on 0.3.3.2-alpha.
+
+ o Minor bugfixes (documentation):
+ - Document that the PerConnBW{Rate,Burst} options will fall back to
+ their corresponding consensus parameters only if those parameters
+ are set. Previously we had claimed that these values would always
+ be set in the consensus. Fixes bug 25296; bugfix on 0.2.2.7-alpha.
+ - Revert a misformatting issue in the ExitPolicy documentation.
+ Fixes bug 25582; bugfix on 0.3.3.1-alpha.
+
+ o Minor bugfixes (exit relay DNS retries):
+ - Re-attempt timed-out DNS queries 3 times before failure, since our
+ timeout is 5 seconds for them, but clients wait 10-15. Also allow
+ slightly more timeouts per resolver when an exit has multiple
+ resolvers configured. Fixes bug 21394; bugfix on 0.3.1.9.
+
+ o Minor bugfixes (onion services):
+ - Re-instate counting the client HSDir fetch circuits against the
+ MaxClientCircuitsPending rate limit. Fixes bug 24989; bugfix
+ on 0.3.3.1-alpha.
+ - Remove underscores from the _HSLayer{2,3}Nodes options. This
+ expert-user configuration can now be enabled as HSLayer{2,3}Nodes.
+ Fixes bug 25581; bugfix on 0.3.3.1-alpha
+
+ o Code simplification and refactoring:
+ - Move the list of default directory authorities to its own file.
+ Closes ticket 24854. Patch by "beastr0".
+
+ o Documentation (manpage, denial of service):
+ - Provide more detail about the denial-of-service options, by
+ listing each mitigation and explaining how they relate. Closes
+ ticket 25248.
+
+
+Changes in version 0.3.3.4-alpha - 2018-03-29
+ Tor 0.3.3.4-alpha includes various bugfixes for issues found during
+ the alpha testing of earlier releases in its series. We are
+ approaching a stable 0.3.3.4-alpha release: more testing is welcome!
+
+ o New system requirements:
+ - When built with Rust, Tor now depends on version 0.2.39 of the
+ libc crate. Closes tickets 25310 and 25664.
+
+ o Major bugfixes (relay, connection):
+ - If we have failed to connect to a relay and received a connection
+ refused, timeout, or similar error (at the TCP level), do not try
+ that same address/port again for 60 seconds after the failure has
+ occurred. Fixes bug 24767; bugfix on 0.0.6.
+
+ o Minor features (geoip):
+ - Update geoip and geoip6 to the March 8 2018 Maxmind GeoLite2
+ Country database. Closes ticket 25469.
+
+ o Minor features (log messages):
+ - Improve log message in the out-of-memory handler to include
+ information about memory usage from the different compression
+ backends. Closes ticket 25372.
+
+ o Minor features (sandbox):
+ - Explicitly permit the poll() system call when the Linux
+ seccomp2-based sandbox is enabled: apparently, some versions of
+ libc use poll() when calling getpwnam(). Closes ticket 25313.
+
+ o Minor bugfixes (C correctness):
+ - Fix a very unlikely (impossible, we believe) null pointer
+ dereference. Fixes bug 25629; bugfix on 0.2.9.15. Found by
+ Coverity; this is CID 1430932.
+
+ o Minor bugfixes (channel, client):
+ - Better identify client connection when reporting to the geoip
+ client cache. Fixes bug 24904; bugfix on 0.3.1.7.
+
+ o Minor bugfixes (compilation):
+ - Fix a C99 compliance issue in our configuration script that caused
+ compilation issues when compiling Tor with certain versions of
+ xtools. Fixes bug 25474; bugfix on 0.3.2.5-alpha.
+
+ o Minor bugfixes (controller, reliability):
+ - Avoid a (nonfatal) assertion failure when extending a one-hop
+ circuit from the controller to become a multihop circuit. Fixes
+ bug 24903; bugfix on 0.2.5.2-alpha.
+
+ o Major bugfixes (networking):
+ - Tor will no longer reject IPv6 address strings from Tor Browser
+ when they are passed as hostnames in SOCKS5 requests. Fixes bug
+ 25036, bugfix on Tor 0.3.1.2.
+
+ o Minor bugfixes (networking):
+ - string_is_valid_hostname() will not consider IP strings to be
+ valid hostnames. Fixes bug 25055; bugfix on Tor 0.2.5.5.
+
+ o Minor bugfixes (onion service v3):
+ - Avoid an assertion failure when the next onion service
+ descriptor rotation type is out of sync with the consensus's
+ valid-after time. Instead, log a warning message with extra
+ information, so we can better hunt down the cause of this
+ assertion. Fixes bug 25306; bugfix on 0.3.2.1-alpha.
+
+ o Minor bugfixes (testing):
+ - Avoid intermittent test failures due to a test that had relied on
+ onion service introduction point creation finishing within 5
+ seconds of real clock time. Fixes bug 25450; bugfix
+ on 0.3.1.3-alpha.
+ - Rust crates are now automatically detected and tested. Previously,
+ some crates were not tested by `make test-rust` due to a static
+ string in the `src/test/test_rust.sh` script specifying which
+ crates to test. Fixes bug 25560; bugfix on 0.3.3.3-alpha.
+
+ o Minor bugfixes (testing, benchmarks):
+ - Fix a crash when running benchmark tests on win32 systems. The
+ crash was due to a mutex that wasn't initialized before logging
+ and options were initialized. Fixes bug 25479; bugfix
+ on 0.3.3.3-alpha.
+
+ o Minor bugfixes (warnings, ipv6):
+ - Avoid a bug warning that could occur when trying to connect to a
+ relay over IPv6. This warning would occur on a Tor instance that
+ downloads router descriptors, but prefers to use microdescriptors.
+ Fixes bug 25213; bugfix on 0.3.3.1-alpha.
+
+ o Code simplification and refactoring:
+ - Remove the old (deterministic) directory retry logic entirely:
+ We've used exponential backoff exclusively for some time. Closes
+ ticket 23814.
+
+ o Documentation:
+ - Improved the documentation of AccountingStart parameter. Closes
+ ticket 23635.
+ - Update the documentation for "Log" to include the current list of
+ logging domains. Closes ticket 25378.
+
+
+Changes in version 0.3.1.10 - 2018-03-03
+ Tor 0.3.1.10 backports a number of bugfixes, including important fixes for
+ security issues.
+
+ It includes an important security fix for a remote crash attack
+ against directory authorities, tracked as TROVE-2018-001.
+
+ This release also backports our new system for improved resistance to
+ denial-of-service attacks against relays.
+
+ This release also fixes several minor bugs and annoyances from
+ earlier releases.
+
+ All directory authorities should upgrade to one of the versions
+ released today. Relays running 0.3.1.x may wish to update to one of
+ the versions released today, for the DoS mitigations.
+
+ Please note: according to our release calendar, Tor 0.3.1 will no
+ longer be supported after 1 July 2018. If you will be running Tor
+ after that date, you should make sure to plan to upgrade to the latest
+ stable version, or downgrade to 0.2.9 (which will receive long-term
+ support).
+
+ o Major bugfixes (denial-of-service, directory authority, backport from 0.3.3.3-alpha):
+ - Fix a protocol-list handling bug that could be used to remotely crash
+ directory authorities with a null-pointer exception. Fixes bug 25074;
+ bugfix on 0.2.9.4-alpha. Also tracked as TROVE-2018-001 and
+ CVE-2018-0490.
+
+ o Major features (denial-of-service mitigation, backport from 0.3.3.2-alpha):
+ - Give relays some defenses against the recent network overload. We
+ start with three defenses (default parameters in parentheses).
+ First: if a single client address makes too many concurrent
+ connections (>100), hang up on further connections. Second: if a
+ single client address makes circuits too quickly (more than 3 per
+ second, with an allowed burst of 90) while also having too many
+ connections open (3), refuse new create cells for the next while
+ (1-2 hours). Third: if a client asks to establish a rendezvous
+ point to you directly, ignore the request. These defenses can be
+ manually controlled by new torrc options, but relays will also
+ take guidance from consensus parameters, so there's no need to
+ configure anything manually. Implements ticket 24902.
+
+ o Minor features (linux seccomp2 sandbox, backport from 0.3.2.5-alpha):
+ - Update the sandbox rules so that they should now work correctly
+ with Glibc 2.26. Closes ticket 24315.
+
+ o Major bugfixes (onion services, retry behavior, backport from 0.3.3.1-alpha):
+ - Fix an "off by 2" error in counting rendezvous failures on the
+ onion service side. While we thought we would stop the rendezvous
+ attempt after one failed circuit, we were actually making three
+ circuit attempts before giving up. Now switch to a default of 2,
+ and allow the consensus parameter "hs_service_max_rdv_failures" to
+ override. Fixes bug 24895; bugfix on 0.0.6.
+
+ o Major bugfixes (protocol versions, backport from 0.3.3.2-alpha):
+ - Add Link protocol version 5 to the supported protocols list. Fixes
+ bug 25070; bugfix on 0.3.1.1-alpha.
+
+ o Major bugfixes (relay, backport from 0.3.3.1-alpha):
+ - Fix a set of false positives where relays would consider
+ connections to other relays as being client-only connections (and
+ thus e.g. deserving different link padding schemes) if those
+ relays fell out of the consensus briefly. Now we look only at the
+ initial handshake and whether the connection authenticated as a
+ relay. Fixes bug 24898; bugfix on 0.3.1.1-alpha.
+
+ o Minor features (denial-of-service avoidance, backport from 0.3.3.2-alpha):
+ - Make our OOM handler aware of the geoip client history cache so it
+ doesn't fill up the memory. This check is important for IPv6 and
+ our DoS mitigation subsystem. Closes ticket 25122.
+
+ o Minor feature (relay statistics, backport from 0.3.2.6-alpha):
+ - Change relay bandwidth reporting stats interval from 4 hours to 24
+ hours in order to reduce the efficiency of guard discovery
+ attacks. Fixes ticket 23856.
+
+ o Minor features (compatibility, OpenSSL, backport from 0.3.3.3-alpha):
+ - Tor will now support TLS1.3 once OpenSSL 1.1.1 is released.
+ Previous versions of Tor would not have worked with OpenSSL 1.1.1,
+ since they neither disabled TLS 1.3 nor enabled any of the
+ ciphersuites it requires. Now we enable the TLS 1.3 ciphersuites.
+ Closes ticket 24978.
+
+ o Minor features (fallback directory mirrors, backport from 0.3.2.9):
+ - The fallback directory list has been re-generated based on the
+ current status of the network. Tor uses fallback directories to
+ bootstrap when it doesn't yet have up-to-date directory
+ information. Closes ticket 24801.
+ - Make the default DirAuthorityFallbackRate 0.1, so that clients
+ prefer to bootstrap from fallback directory mirrors. This is a
+ follow-up to 24679, which removed weights from the default
+ fallbacks. Implements ticket 24681.
+
+ o Minor features (geoip):
+ - Update geoip and geoip6 to the February 7 2018 Maxmind GeoLite2
+ Country database.
+
+ o Minor bugfix (channel connection, backport from 0.3.3.2-alpha):
+ - Use the actual observed address of an incoming relay connection,
+ not the canonical address of the relay from its descriptor, when
+ making decisions about how to handle the incoming connection.
+ Fixes bug 24952; bugfix on 0.2.4.11-alpha. Patch by "ffmancera".
+
+ o Minor bugfix (directory authority, backport from 0.3.3.2-alpha):
+ - Directory authorities, when refusing a descriptor from a rejected
+ relay, now explicitly tell the relay (in its logs) to set a valid
+ ContactInfo address and contact the bad-relays@ mailing list.
+ Fixes bug 25170; bugfix on 0.2.9.1.
+
+ o Minor bugfixes (address selection, backport from 0.3.2.9):
+ - When the fascist_firewall_choose_address_ functions don't find a
+ reachable address, set the returned address to the null address
+ and port. This is a precautionary measure, because some callers do
+ not check the return value. Fixes bug 24736; bugfix
+ on 0.2.8.2-alpha.
+
+ o Major bugfixes (bootstrapping, backport from 0.3.2.5-alpha):
+ - Fetch descriptors aggressively whenever we lack enough to build
+ circuits, regardless of how many descriptors we are missing.
+ Previously, we would delay launching the fetch when we had fewer
+ than 15 missing descriptors, even if some of those descriptors
+ were blocking circuits from building. Fixes bug 23985; bugfix on
+ 0.1.1.11-alpha. The effects of this bug became worse in
+ 0.3.0.3-alpha, when we began treating missing descriptors from our
+ primary guards as a reason to delay circuits.
+ - Don't try fetching microdescriptors from relays that have failed
+ to deliver them in the past. Fixes bug 23817; bugfix
+ on 0.3.0.1-alpha.
+
+ o Minor bugfixes (compilation, backport from 0.3.2.7-rc):
+ - Fix a signed/unsigned comparison warning introduced by our fix to
+ TROVE-2017-009. Fixes bug 24480; bugfix on 0.2.5.16.
+
+ o Minor bugfixes (control port, linux seccomp2 sandbox, backport from 0.3.2.5-alpha):
+ - Avoid a crash when attempting to use the seccomp2 sandbox together
+ with the OwningControllerProcess feature. Fixes bug 24198; bugfix
+ on 0.2.5.1-alpha.
+
+ o Minor bugfixes (denial-of-service, backport from 0.3.3.3-alpha):
+ - Fix a possible crash on malformed consensus. If a consensus had
+ contained an unparseable protocol line, it could have made clients
+ and relays crash with a null-pointer exception. To exploit this
+ issue, however, an attacker would need to be able to subvert the
+ directory authority system. Fixes bug 25251; bugfix on
+ 0.2.9.4-alpha. Also tracked as TROVE-2018-004.
+
+ o Minor bugfixes (directory cache, backport from 0.3.2.5-alpha):
+ - Recover better from empty or corrupt files in the consensus cache
+ directory. Fixes bug 24099; bugfix on 0.3.1.1-alpha.
+ - When a consensus diff calculation is only partially successful,
+ only record the successful parts as having succeeded. Partial
+ success can happen if (for example) one compression method fails
+ but the others succeed. Previously we misrecorded all the
+ calculations as having succeeded, which would later cause a
+ nonfatal assertion failure. Fixes bug 24086; bugfix
+ on 0.3.1.1-alpha.
+
+ o Minor bugfixes (entry guards, backport from 0.3.2.3-alpha):
+ - Tor now updates its guard state when it reads a consensus
+ regardless of whether it's missing descriptors. That makes tor use
+ its primary guards to fetch descriptors in some edge cases where
+ it would previously have used fallback directories. Fixes bug
+ 23862; bugfix on 0.3.0.1-alpha.
+
+ o Minor bugfixes (logging, backport from 0.3.3.2-alpha):
+ - Don't treat inability to store a cached consensus object as a bug:
+ it can happen normally when we are out of disk space. Fixes bug
+ 24859; bugfix on 0.3.1.1-alpha.
+
+ o Minor bugfixes (memory usage, backport from 0.3.2.8-rc):
+ - When queuing DESTROY cells on a channel, only queue the circuit-id
+ and reason fields: not the entire 514-byte cell. This fix should
+ help mitigate any bugs or attacks that fill up these queues, and
+ free more RAM for other uses. Fixes bug 24666; bugfix
+ on 0.2.5.1-alpha.
+
+ o Minor bugfixes (network layer, backport from 0.3.2.5-alpha):
+ - When closing a connection via close_connection_immediately(), we
+ mark it as "not blocked on bandwidth", to prevent later calls from
+ trying to unblock it, and give it permission to read. This fixes a
+ backtrace warning that can happen on relays under various
+ circumstances. Fixes bug 24167; bugfix on 0.1.0.1-rc.
+
+ o Minor bugfixes (path selection, backport from 0.3.2.4-alpha):
+ - When selecting relays by bandwidth, avoid a rounding error that
+ could sometimes cause load to be imbalanced incorrectly.
+ Previously, we would always round upwards; now, we round towards
+ the nearest integer. This had the biggest effect when a relay's
+ weight adjustments should have given it weight 0, but it got
+ weight 1 instead. Fixes bug 23318; bugfix on 0.2.4.3-alpha.
+ - When calculating the fraction of nodes that have descriptors, and
+ all nodes in the network have zero bandwidths, count the number of
+ nodes instead. Fixes bug 23318; bugfix on 0.2.4.10-alpha.
+ - Actually log the total bandwidth in compute_weighted_bandwidths().
+ Fixes bug 24170; bugfix on 0.2.4.3-alpha.
+
+ o Minor bugfixes (performance, fragile-hardening, backport from 0.3.3.1-alpha):
+ - Improve the performance of our consensus-diff application code
+ when Tor is built with the --enable-fragile-hardening option set.
+ Fixes bug 24826; bugfix on 0.3.1.1-alpha.
+
+ o Minor bugfixes (OSX, backport from 0.3.3.1-alpha):
+ - Don't exit the Tor process if setrlimit() fails to change the file
+ limit (which can happen sometimes on some versions of OSX). Fixes
+ bug 21074; bugfix on 0.0.9pre5.
+
+ o Minor bugfixes (portability, msvc, backport from 0.3.2.9):
+ - Fix a bug in the bit-counting parts of our timing-wheel code on
+ MSVC. (Note that MSVC is still not a supported build platform, due
+ to cyptographic timing channel risks.) Fixes bug 24633; bugfix
+ on 0.2.9.1-alpha.
+
+ o Minor bugfixes (relay, partial backport):
+ - Make the internal channel_is_client() function look at what sort
+ of connection handshake the other side used, rather than whether
+ the other side ever sent a create_fast cell to us. Backports part
+ of the fixes from bugs 22805 and 24898.
+
+ o Minor bugfixes (spec conformance, backport from 0.3.3.3-alpha):
+ - Forbid "-0" as a protocol version. Fixes part of bug 25249; bugfix on
+ 0.2.9.4-alpha.
+ - Forbid UINT32_MAX as a protocol version. Fixes part of bug 25249;
+ bugfix on 0.2.9.4-alpha.
+
+ o Code simplification and refactoring (backport from 0.3.3.3-alpha):
+ - Update the "rust dependencies" submodule to be a project-level
+ repository, rather than a user repository. Closes ticket 25323.
+
+
+Changes in version 0.2.9.15 - 2018-03-03
+ Tor 0.2.9.15 backports important security and stability bugfixes from
+ later Tor releases.
+
+ It includes an important security fix for a remote crash attack
+ against directory authorities, tracked as TROVE-2018-001.
+
+ This release also backports our new system for improved resistance to
+ denial-of-service attacks against relays.
+
+ This release also fixes several minor bugs and annoyances from
+ earlier releases.
+
+ All directory authorities should upgrade to one of the versions
+ released today. Relays running 0.2.9.x may wish to update to one of
+ the versions released today, for the DoS mitigations.
+
+ o Major bugfixes (denial-of-service, directory authority, backport from 0.3.3.3-alpha):
+ - Fix a protocol-list handling bug that could be used to remotely crash
+ directory authorities with a null-pointer exception. Fixes bug 25074;
+ bugfix on 0.2.9.4-alpha. Also tracked as TROVE-2018-001 and
+ CVE-2018-0490.
+
+ o Major features (denial-of-service mitigation):
+ - Give relays some defenses against the recent network overload. We
+ start with three defenses (default parameters in parentheses).
+ First: if a single client address makes too many concurrent
+ connections (>100), hang up on further connections. Second: if a
+ single client address makes circuits too quickly (more than 3 per
+ second, with an allowed burst of 90) while also having too many
+ connections open (3), refuse new create cells for the next while
+ (1-2 hours). Third: if a client asks to establish a rendezvous
+ point to you directly, ignore the request. These defenses can be
+ manually controlled by new torrc options, but relays will also
+ take guidance from consensus parameters, so there's no need to
+ configure anything manually. Implements ticket 24902.
+
+ o Major bugfixes (bootstrapping):
+ - Fetch descriptors aggressively whenever we lack enough to build
+ circuits, regardless of how many descriptors we are missing.
+ Previously, we would delay launching the fetch when we had fewer
+ than 15 missing descriptors, even if some of those descriptors
+ were blocking circuits from building. Fixes bug 23985; bugfix on
+ 0.1.1.11-alpha. The effects of this bug became worse in
+ 0.3.0.3-alpha, when we began treating missing descriptors from our
+ primary guards as a reason to delay circuits.
+
+ o Major bugfixes (onion services, retry behavior):
+ - Fix an "off by 2" error in counting rendezvous failures on the
+ onion service side. While we thought we would stop the rendezvous
+ attempt after one failed circuit, we were actually making three
+ circuit attempts before giving up. Now switch to a default of 2,
+ and allow the consensus parameter "hs_service_max_rdv_failures" to
+ override. Fixes bug 24895; bugfix on 0.0.6.
+
+ o Minor feature (relay statistics):
+ - Change relay bandwidth reporting stats interval from 4 hours to 24
+ hours in order to reduce the efficiency of guard discovery
+ attacks. Fixes ticket 23856.
+
+ o Minor features (compatibility, OpenSSL):
+ - Tor will now support TLS1.3 once OpenSSL 1.1.1 is released.
+ Previous versions of Tor would not have worked with OpenSSL 1.1.1,
+ since they neither disabled TLS 1.3 nor enabled any of the
+ ciphersuites it requires. Now we enable the TLS 1.3 ciphersuites.
+ Closes ticket 24978.
+
+ o Minor features (denial-of-service avoidance):
+ - Make our OOM handler aware of the geoip client history cache so it
+ doesn't fill up the memory. This check is important for IPv6 and
+ our DoS mitigation subsystem. Closes ticket 25122.
+
+ o Minor features (fallback directory mirrors):
+ - The fallback directory list has been re-generated based on the
+ current status of the network. Tor uses fallback directories to
+ bootstrap when it doesn't yet have up-to-date directory
+ information. Closes ticket 24801.
+ - Make the default DirAuthorityFallbackRate 0.1, so that clients
+ prefer to bootstrap from fallback directory mirrors. This is a
+ follow-up to 24679, which removed weights from the default
+ fallbacks. Implements ticket 24681.
+
+ o Minor features (geoip):
+ - Update geoip and geoip6 to the February 7 2018 Maxmind GeoLite2
+ Country database.
+
+ o Minor features (linux seccomp2 sandbox):
+ - Update the sandbox rules so that they should now work correctly
+ with Glibc 2.26. Closes ticket 24315.
+
+ o Minor bugfix (channel connection):
+ - Use the actual observed address of an incoming relay connection,
+ not the canonical address of the relay from its descriptor, when
+ making decisions about how to handle the incoming connection.
+ Fixes bug 24952; bugfix on 0.2.4.11-alpha. Patch by "ffmancera".
+
+ o Minor bugfix (directory authority):
+ - Directory authorities, when refusing a descriptor from a rejected
+ relay, now explicitly tell the relay (in its logs) to set a valid
+ ContactInfo address and contact the bad-relays@ mailing list.
+ Fixes bug 25170; bugfix on 0.2.9.1.
+
+ o Minor bugfixes (address selection):
+ - When the fascist_firewall_choose_address_ functions don't find a
+ reachable address, set the returned address to the null address
+ and port. This is a precautionary measure, because some callers do
+ not check the return value. Fixes bug 24736; bugfix
+ on 0.2.8.2-alpha.
+
+ o Minor bugfixes (compilation):
+ - Fix a signed/unsigned comparison warning introduced by our fix to
+ TROVE-2017-009. Fixes bug 24480; bugfix on 0.2.5.16.
+
+ o Minor bugfixes (control port, linux seccomp2 sandbox):
+ - Avoid a crash when attempting to use the seccomp2 sandbox together
+ with the OwningControllerProcess feature. Fixes bug 24198; bugfix
+ on 0.2.5.1-alpha.
+
+ o Minor bugfixes (denial-of-service, backport from 0.3.3.3-alpha):
+ - Fix a possible crash on malformed consensus. If a consensus had
+ contained an unparseable protocol line, it could have made clients
+ and relays crash with a null-pointer exception. To exploit this
+ issue, however, an attacker would need to be able to subvert the
+ directory authority system. Fixes bug 25251; bugfix on
+ 0.2.9.4-alpha. Also tracked as TROVE-2018-004.
+
+ o Minor bugfixes (memory usage):
+ - When queuing DESTROY cells on a channel, only queue the circuit-id
+ and reason fields: not the entire 514-byte cell. This fix should
+ help mitigate any bugs or attacks that fill up these queues, and
+ free more RAM for other uses. Fixes bug 24666; bugfix
+ on 0.2.5.1-alpha.
+
+ o Minor bugfixes (network layer):
+ - When closing a connection via close_connection_immediately(), we
+ mark it as "not blocked on bandwidth", to prevent later calls from
+ trying to unblock it, and give it permission to read. This fixes a
+ backtrace warning that can happen on relays under various
+ circumstances. Fixes bug 24167; bugfix on 0.1.0.1-rc.
+
+ o Minor bugfixes (OSX):
+ - Don't exit the Tor process if setrlimit() fails to change the file
+ limit (which can happen sometimes on some versions of OSX). Fixes
+ bug 21074; bugfix on 0.0.9pre5.
+
+ o Minor bugfixes (path selection):
+ - When selecting relays by bandwidth, avoid a rounding error that
+ could sometimes cause load to be imbalanced incorrectly.
+ Previously, we would always round upwards; now, we round towards
+ the nearest integer. This had the biggest effect when a relay's
+ weight adjustments should have given it weight 0, but it got
+ weight 1 instead. Fixes bug 23318; bugfix on 0.2.4.3-alpha.
+ - When calculating the fraction of nodes that have descriptors, and
+ all nodes in the network have zero bandwidths, count the number of
+ nodes instead. Fixes bug 23318; bugfix on 0.2.4.10-alpha.
+ - Actually log the total bandwidth in compute_weighted_bandwidths().
+ Fixes bug 24170; bugfix on 0.2.4.3-alpha.
+
+ o Minor bugfixes (portability, msvc):
+ - Fix a bug in the bit-counting parts of our timing-wheel code on
+ MSVC. (Note that MSVC is still not a supported build platform, due
+ to cryptographic timing channel risks.) Fixes bug 24633; bugfix
+ on 0.2.9.1-alpha.
+
+ o Minor bugfixes (relay):
+ - Make the internal channel_is_client() function look at what sort
+ of connection handshake the other side used, rather than whether
+ the other side ever sent a create_fast cell to us. Backports part
+ of the fixes from bugs 22805 and 24898.
+
+ o Minor bugfixes (spec conformance, backport from 0.3.3.3-alpha):
+ - Forbid "-0" as a protocol version. Fixes part of bug 25249; bugfix on
+ 0.2.9.4-alpha.
+ - Forbid UINT32_MAX as a protocol version. Fixes part of bug 25249;
+ bugfix on 0.2.9.4-alpha.
+
+
+Changes in version 0.3.2.10 - 2018-03-03
+ Tor 0.3.2.10 is the second stable release in the 0.3.2 series. It
+ backports a number of bugfixes, including important fixes for security
+ issues.
+
+ It includes an important security fix for a remote crash attack
+ against directory authorities, tracked as TROVE-2018-001.
+
+ Additionally, it backports a fix for a bug whose severity we have
+ upgraded: Bug 24700, which was fixed in 0.3.3.2-alpha, can be remotely
+ triggered in order to crash relays with a use-after-free pattern. As
+ such, we are now tracking that bug as TROVE-2018-002 and
+ CVE-2018-0491, and backporting it to earlier releases. This bug
+ affected versions 0.3.2.1-alpha through 0.3.2.9, as well as version
+ 0.3.3.1-alpha.
+
+ This release also backports our new system for improved resistance to
+ denial-of-service attacks against relays.
+
+ This release also fixes several minor bugs and annoyances from
+ earlier releases.
+
+ Relays running 0.3.2.x SHOULD upgrade to one of the versions released
+ today, for the fix to TROVE-2018-002. Directory authorities should
+ also upgrade. (Relays on earlier versions might want to update too for
+ the DoS mitigations.)
+
+ o Major bugfixes (denial-of-service, directory authority, backport from 0.3.3.3-alpha):
+ - Fix a protocol-list handling bug that could be used to remotely crash
+ directory authorities with a null-pointer exception. Fixes bug 25074;
+ bugfix on 0.2.9.4-alpha. Also tracked as TROVE-2018-001 and
+ CVE-2018-0490.
+
+ o Major bugfixes (scheduler, KIST, denial-of-service, backport from 0.3.3.2-alpha):
+ - Avoid adding the same channel twice in the KIST scheduler pending
+ list, which could lead to remote denial-of-service use-after-free
+ attacks against relays. Fixes bug 24700; bugfix on 0.3.2.1-alpha.
+
+ o Major features (denial-of-service mitigation, backport from 0.3.3.2-alpha):
+ - Give relays some defenses against the recent network overload. We
+ start with three defenses (default parameters in parentheses).
+ First: if a single client address makes too many concurrent
+ connections (>100), hang up on further connections. Second: if a
+ single client address makes circuits too quickly (more than 3 per
+ second, with an allowed burst of 90) while also having too many
+ connections open (3), refuse new create cells for the next while
+ (1-2 hours). Third: if a client asks to establish a rendezvous
+ point to you directly, ignore the request. These defenses can be
+ manually controlled by new torrc options, but relays will also
+ take guidance from consensus parameters, so there's no need to
+ configure anything manually. Implements ticket 24902.
+
+ o Major bugfixes (onion services, retry behavior, backport from 0.3.3.1-alpha):
+ - Fix an "off by 2" error in counting rendezvous failures on the
+ onion service side. While we thought we would stop the rendezvous
+ attempt after one failed circuit, we were actually making three
+ circuit attempts before giving up. Now switch to a default of 2,
+ and allow the consensus parameter "hs_service_max_rdv_failures" to
+ override. Fixes bug 24895; bugfix on 0.0.6.
+ - New-style (v3) onion services now obey the "max rendezvous circuit
+ attempts" logic. Previously they would make as many rendezvous
+ circuit attempts as they could fit in the MAX_REND_TIMEOUT second
+ window before giving up. Fixes bug 24894; bugfix on 0.3.2.1-alpha.
+
+ o Major bugfixes (protocol versions, backport from 0.3.3.2-alpha):
+ - Add Link protocol version 5 to the supported protocols list. Fixes
+ bug 25070; bugfix on 0.3.1.1-alpha.
+
+ o Major bugfixes (relay, backport from 0.3.3.1-alpha):
+ - Fix a set of false positives where relays would consider
+ connections to other relays as being client-only connections (and
+ thus e.g. deserving different link padding schemes) if those
+ relays fell out of the consensus briefly. Now we look only at the
+ initial handshake and whether the connection authenticated as a
+ relay. Fixes bug 24898; bugfix on 0.3.1.1-alpha.
+
+ o Major bugfixes (scheduler, consensus, backport from 0.3.3.2-alpha):
+ - The scheduler subsystem was failing to promptly notice changes in
+ consensus parameters, making it harder to switch schedulers
+ network-wide. Fixes bug 24975; bugfix on 0.3.2.1-alpha.
+
+ o Minor features (denial-of-service avoidance, backport from 0.3.3.2-alpha):
+ - Make our OOM handler aware of the geoip client history cache so it
+ doesn't fill up the memory. This check is important for IPv6 and
+ our DoS mitigation subsystem. Closes ticket 25122.
+
+ o Minor features (compatibility, OpenSSL, backport from 0.3.3.3-alpha):
+ - Tor will now support TLS1.3 once OpenSSL 1.1.1 is released.
+ Previous versions of Tor would not have worked with OpenSSL 1.1.1,
+ since they neither disabled TLS 1.3 nor enabled any of the
+ ciphersuites it requires. Now we enable the TLS 1.3 ciphersuites.
+ Closes ticket 24978.
+
+ o Minor features (geoip):
+ - Update geoip and geoip6 to the February 7 2018 Maxmind GeoLite2
+ Country database.
+
+ o Minor features (logging, diagnostic, backport from 0.3.3.2-alpha):
+ - When logging a failure to create an onion service's descriptor,
+ also log what the problem with the descriptor was. Diagnostic
+ for ticket 24972.
+
+ o Minor bugfix (channel connection, backport from 0.3.3.2-alpha):
+ - Use the actual observed address of an incoming relay connection,
+ not the canonical address of the relay from its descriptor, when
+ making decisions about how to handle the incoming connection.
+ Fixes bug 24952; bugfix on 0.2.4.11-alpha. Patch by "ffmancera".
+
+ o Minor bugfixes (denial-of-service, backport from 0.3.3.3-alpha):
+ - Fix a possible crash on malformed consensus. If a consensus had
+ contained an unparseable protocol line, it could have made clients
+ and relays crash with a null-pointer exception. To exploit this
+ issue, however, an attacker would need to be able to subvert the
+ directory authority system. Fixes bug 25251; bugfix on
+ 0.2.9.4-alpha. Also tracked as TROVE-2018-004.
+
+ o Minor bugfix (directory authority, backport from 0.3.3.2-alpha):
+ - Directory authorities, when refusing a descriptor from a rejected
+ relay, now explicitly tell the relay (in its logs) to set a valid
+ ContactInfo address and contact the bad-relays@ mailing list.
+ Fixes bug 25170; bugfix on 0.2.9.1.
+
+ o Minor bugfixes (build, rust, backport from 0.3.3.1-alpha):
+ - When building with Rust on OSX, link against libresolv, to work
+ around the issue at https://github.com/rust-lang/rust/issues/46797.
+ Fixes bug 24652; bugfix on 0.3.1.1-alpha.
+
+ o Minor bugfixes (onion services, backport from 0.3.3.2-alpha):
+ - Remove a BUG() statement when a client fetches an onion descriptor
+ that has a lower revision counter than the one in its cache. This
+ can happen in normal circumstances due to HSDir desync. Fixes bug
+ 24976; bugfix on 0.3.2.1-alpha.
+
+ o Minor bugfixes (logging, backport from 0.3.3.2-alpha):
+ - Don't treat inability to store a cached consensus object as a bug:
+ it can happen normally when we are out of disk space. Fixes bug
+ 24859; bugfix on 0.3.1.1-alpha.
+
+ o Minor bugfixes (performance, fragile-hardening, backport from 0.3.3.1-alpha):
+ - Improve the performance of our consensus-diff application code
+ when Tor is built with the --enable-fragile-hardening option set.
+ Fixes bug 24826; bugfix on 0.3.1.1-alpha.
+
+ o Minor bugfixes (OSX, backport from 0.3.3.1-alpha):
+ - Don't exit the Tor process if setrlimit() fails to change the file
+ limit (which can happen sometimes on some versions of OSX). Fixes
+ bug 21074; bugfix on 0.0.9pre5.
+
+ o Minor bugfixes (spec conformance, backport from 0.3.3.3-alpha):
+ - Forbid "-0" as a protocol version. Fixes part of bug 25249; bugfix on
+ 0.2.9.4-alpha.
+ - Forbid UINT32_MAX as a protocol version. Fixes part of bug 25249;
+ bugfix on 0.2.9.4-alpha.
+
+ o Minor bugfixes (testing, backport from 0.3.3.1-alpha):
+ - Fix a memory leak in the scheduler/loop_kist unit test. Fixes bug
+ 25005; bugfix on 0.3.2.7-rc.
+
+ o Minor bugfixes (v3 onion services, backport from 0.3.3.2-alpha):
+ - Look at the "HSRend" protocol version, not the "HSDir" protocol
+ version, when deciding whether a consensus entry can support the
+ v3 onion service protocol as a rendezvous point. Fixes bug 25105;
+ bugfix on 0.3.2.1-alpha.
+
+ o Code simplification and refactoring (backport from 0.3.3.3-alpha):
+ - Update the "rust dependencies" submodule to be a project-level
+ repository, rather than a user repository. Closes ticket 25323.
+
+ o Documentation (backport from 0.3.3.1-alpha)
+ - Document that operators who run more than one relay or bridge are
+ expected to set MyFamily and ContactInfo correctly. Closes
+ ticket 24526.
+
+
+Changes in version 0.3.3.3-alpha - 2018-03-03
+ Tor 0.3.3.3-alpha is the third alpha release for the 0.3.3.x series.
+ It includes an important security fix for a remote crash attack
+ against directory authorities tracked as TROVE-2018-001.
+
+ Additionally, with this release, we are upgrading the severity of a
+ bug fixed in 0.3.3.2-alpha. Bug 24700, which was fixed in
+ 0.3.3.2-alpha, can be remotely triggered in order to crash relays with
+ a use-after-free pattern. As such, we are now tracking that bug as
+ TROVE-2018-002 and CVE-2018-0491. This bug affected versions
+ 0.3.2.1-alpha through 0.3.2.9, as well as 0.3.3.1-alpha.
+
+ This release also fixes several minor bugs and annoyances from
+ earlier releases.
+
+ Relays running 0.3.2.x should upgrade to one of the versions released
+ today, for the fix to TROVE-2018-002. Directory authorities should
+ also upgrade. (Relays on earlier versions might want to update too for
+ the DoS mitigations.)
+
+ o Major bugfixes (denial-of-service, directory authority):
+ - Fix a protocol-list handling bug that could be used to remotely crash
+ directory authorities with a null-pointer exception. Fixes bug 25074;
+ bugfix on 0.2.9.4-alpha. Also tracked as TROVE-2018-001 and
+ CVE-2018-0490.
+
+ o Minor features (compatibility, OpenSSL):
+ - Tor will now support TLS1.3 once OpenSSL 1.1.1 is released.
+ Previous versions of Tor would not have worked with OpenSSL 1.1.1,
+ since they neither disabled TLS 1.3 nor enabled any of the
+ ciphersuites it requires. Now we enable the TLS 1.3 ciphersuites.
+ Closes ticket 24978.
+
+ o Minor features (logging):
+ - Clarify the log messages produced when getrandom() or a related
+ entropy-generation mechanism gives an error. Closes ticket 25120.
+
+ o Minor features (testing):
+ - Add a "make test-rust" target to run the rust tests only. Closes
+ ticket 25071.
+
+ o Minor bugfixes (denial-of-service):
+ - Fix a possible crash on malformed consensus. If a consensus had
+ contained an unparseable protocol line, it could have made clients
+ and relays crash with a null-pointer exception. To exploit this
+ issue, however, an attacker would need to be able to subvert the
+ directory authority system. Fixes bug 25251; bugfix on
+ 0.2.9.4-alpha. Also tracked as TROVE-2018-004.
+
+ o Minor bugfixes (DoS mitigation):
+ - Add extra safety checks when refilling the circuit creation bucket
+ to ensure we never set a value above the allowed maximum burst.
+ Fixes bug 25202; bugfix on 0.3.3.2-alpha.
+ - When a new consensus arrives, don't update our DoS-mitigation
+ parameters if we aren't a public relay. Fixes bug 25223; bugfix
+ on 0.3.3.2-alpha.
+
+ o Minor bugfixes (man page, SocksPort):
+ - Remove dead code from the old "SocksSocket" option, and rename
+ SocksSocketsGroupWritable to UnixSocksGroupWritable. The old option
+ still works, but is deprecated. Fixes bug 24343; bugfix on 0.2.6.3.
+
+ o Minor bugfixes (performance):
+ - Reduce the number of circuits that will be opened at once during
+ the circuit build timeout phase. This is done by increasing the
+ idle timeout to 3 minutes, and lowering the maximum number of
+ concurrent learning circuits to 10. Fixes bug 24769; bugfix
+ on 0.3.1.1-alpha.
+
+ o Minor bugfixes (spec conformance):
+ - Forbid "-0" as a protocol version. Fixes part of bug 25249; bugfix on
+ 0.2.9.4-alpha.
+ - Forbid UINT32_MAX as a protocol version. Fixes part of bug 25249;
+ bugfix on 0.2.9.4-alpha.
+
+ o Minor bugfixes (spec conformance, rust):
+ - Resolve a denial-of-service issue caused by an infinite loop in
+ the rust protover code. Fixes bug 25250, bugfix on 0.3.3.1-alpha.
+ Also tracked as TROVE-2018-003.
+
+ o Code simplification and refactoring:
+ - Update the "rust dependencies" submodule to be a project-level
+ repository, rather than a user repository. Closes ticket 25323.
+
+
Changes in version 0.3.3.2-alpha - 2018-02-10
Tor 0.3.3.2-alpha is the second alpha in the 0.3.3.x series. It
introduces a mechanism to handle the high loads that many relay
@@ -113,7 +1811,7 @@ Changes in version 0.3.3.2-alpha - 2018-02-10
would call the Rust implementation of
protover_get_supported_protocols(). This was due to the C version
returning a static string, whereas the Rust version newly allocated
- a CString to pass accross the FFI boundary. Consequently, the C
+ a CString to pass across the FFI boundary. Consequently, the C
code was not expecting to need to free() what it was given. Fixes
bug 25127; bugfix on 0.3.2.1-alpha.
@@ -171,12 +1869,12 @@ Changes in version 0.3.3.1-alpha - 2018-01-25
o Major features (IPv6, directory documents):
- Add consensus method 27, which adds IPv6 ORPorts to the microdesc
consensus. This information makes it easier for IPv6 clients to
- bootstrap and choose reachable entry guards. Implements 23826.
+ bootstrap and choose reachable entry guards. Implements ticket 23826.
- Add consensus method 28, which removes IPv6 ORPorts from
- microdescriptors. Now that the consensus contains IPv6 ORPorts,
- they are redundant in microdescs. This change will be used by Tor
- clients on 0.2.8.x and later. (That is to say, with all Tor
- clients having IPv6 bootstrap and guard support.) Implements 23828.
+ microdescriptors. Now that the consensus contains IPv6 ORPorts, they
+ are redundant in microdescs. This change will be used by Tor clients
+ on 0.2.8.x and later. (That is to say, with all Tor clients that
+ have IPv6 bootstrap and guard support.) Implements ticket 23828.
- Expand the documentation for AuthDirHasIPv6Connectivity when it is
set by different numbers of authorities. Fixes 23870
on 0.2.4.1-alpha.
@@ -206,7 +1904,7 @@ Changes in version 0.3.3.1-alpha - 2018-01-25
experience with Rust, and plan future Rust integration work.
Implementation by Chelsea Komlo. Closes ticket 22840.
- o Major features (storage, configuration):
+ o Minor features (storage, configuration):
- Users can store cached directory documents somewhere other than
the DataDirectory by using the CacheDirectory option. Similarly,
the storage location for relay's keys can be overridden with the
@@ -243,10 +1941,10 @@ Changes in version 0.3.3.1-alpha - 2018-01-25
o Minor feature (IPv6):
- Make IPv6-only clients wait for microdescs for relays, even if we
were previously using descriptors (or were using them as a bridge)
- and have a cached descriptor for them. Implements 23827.
+ and have a cached descriptor for them. Implements ticket 23827.
- When a consensus has IPv6 ORPorts, make IPv6-only clients use
them, rather than waiting to download microdescriptors.
- Implements 23827.
+ Implements ticket 23827.
o Minor features (cleanup):
- Tor now deletes the CookieAuthFile and ExtORPortCookieAuthFile
@@ -260,14 +1958,8 @@ Changes in version 0.3.3.1-alpha - 2018-01-25
- Where possible, the tor_free() macro now only evaluates its input
once. Part of ticket 24337.
- Check that microdesc ed25519 ids are non-zero in
- node_get_ed25519_id() before returning them. Implements 24001,
- patch by "aruna1234".
-
- o Minor features (directory authority):
- - Make the "Exit" flag assignment only depend on whether the exit
- policy allows connections to ports 80 and 443. Previously relays
- would get the Exit flag if they allowed connections to one of
- these ports and also port 6667. Resolves ticket 23637.
+ node_get_ed25519_id() before returning them. Implements ticket
+ 24001, patch by "aruna1234".
o Minor features (embedding):
- Tor can now start with a preauthenticated control connection
@@ -279,7 +1971,7 @@ Changes in version 0.3.3.1-alpha - 2018-01-25
- On most errors that would cause Tor to exit, it now tries to
return from the tor_main() function, rather than calling the
system exit() function. Most users won't notice a difference here,
- but it should make a significant for programs that run Tor inside
+ but it should be significant for programs that run Tor inside
a separate thread: they should now be able to survive Tor's exit
conditions rather than having Tor shut down the entire process.
Closes ticket 23848.
@@ -379,7 +2071,7 @@ Changes in version 0.3.3.1-alpha - 2018-01-25
SIO_IDEAL_SEND_BACKLOG_QUERY. Closes ticket 22798. Patch
from Vort.
- o Minor features (relay):
+ o Major features (relay):
- Implement an option, ReducedExitPolicy, to allow an Tor exit relay
operator to use a more reasonable ("reduced") exit policy, rather
than the default one. If you want to run an exit node without
@@ -539,7 +2231,7 @@ Changes in version 0.3.3.1-alpha - 2018-01-25
adding very little except for unit test.
o Code simplification and refactoring (circuit rendezvous):
- - Split the client-size rendezvous circuit lookup into two
+ - Split the client-side rendezvous circuit lookup into two
functions: one that returns only established circuits and another
that returns all kinds of circuits. Closes ticket 23459.
@@ -1740,7 +3432,7 @@ Changes in version 0.3.2.2-alpha - 2017-09-29
include better testing and logging.
The following comprises the complete list of changes included
- in tor-0.3.2.2-alpha:
+ in 0.3.2.2-alpha:
o Major bugfixes (relay, crash, assertion failure):
- Fix a timing-based assertion failure that could occur when the
@@ -3143,7 +4835,7 @@ Changes in version 0.3.0.8 - 2017-06-08
o Major bugfixes (hidden service v3, backport from 0.3.1.1-alpha):
- Stop rejecting v3 hidden service descriptors because their size
did not match an old padding rule. Fixes bug 22447; bugfix on
- tor-0.3.0.1-alpha.
+ 0.3.0.1-alpha.
o Minor features (fallback directory list, backport from 0.3.1.3-alpha):
- Replace the 177 fallbacks originally introduced in Tor 0.2.9.8 in
@@ -4348,7 +6040,7 @@ Changes in version 0.3.0.4-rc - 2017-03-01
o Major bugfixes (hidden service directory v3):
- Stop crashing on a failed v3 hidden service descriptor lookup
- failure. Fixes bug 21471; bugfixes on tor-0.3.0.1-alpha.
+ failure. Fixes bug 21471; bugfixes on 0.3.0.1-alpha.
o Major bugfixes (parsing):
- When parsing a malformed content-length field from an HTTP
@@ -4433,7 +6125,7 @@ Changes in version 0.3.0.4-rc - 2017-03-01
o Minor bugfixes (testing):
- Fix Raspbian build issues related to missing socket errno in
- test_util.c. Fixes bug 21116; bugfix on tor-0.2.8.2. Patch
+ test_util.c. Fixes bug 21116; bugfix on 0.2.8.2. Patch
by "hein".
- Rename "make fuzz" to "make test-fuzz-corpora", since it doesn't
actually fuzz anything. Fixes bug 21447; bugfix on 0.3.0.3-alpha.
@@ -5067,7 +6759,7 @@ Changes in version 0.3.0.1-alpha - 2016-12-19
- When finishing writing a file to disk, if we were about to replace
the file with the temporary file created before and we fail to
replace it, remove the temporary file so it doesn't stay on disk.
- Fixes bug 20646; bugfix on tor-0.2.0.7-alpha. Patch by fk.
+ Fixes bug 20646; bugfix on 0.2.0.7-alpha. Patch by fk.
o Minor bugfixes (Windows):
- Check for getpagesize before using it to mmap files. This fixes
@@ -5103,13 +6795,13 @@ Changes in version 0.3.0.1-alpha - 2016-12-19
o Documentation:
- Include the "TBits" unit in Tor's man page. Fixes part of bug
- 20622; bugfix on tor-0.2.5.1-alpha.
+ 20622; bugfix on 0.2.5.1-alpha.
- Change '1' to 'weight_scale' in consensus bw weights calculation
comments, as that is reality. Closes ticket 20273. Patch
from pastly.
- Correct the value for AuthDirGuardBWGuarantee in the manpage, from
250 KBytes to 2 MBytes. Fixes bug 20435; bugfix
- on tor-0.2.5.6-alpha.
+ on 0.2.5.6-alpha.
- Stop the man page from incorrectly stating that HiddenServiceDir
must already exist. Fixes 20486.
- Clarify that when ClientRejectInternalAddresses is enabled (which
@@ -26973,4 +28665,3 @@ Changes in version 0.0.2pre13 - 2003-10-19
- If --DebugLogFile is specified, log to it at -l debug
- If --LogFile is specified, use it instead of commandline
- If --RunAsDaemon is set, tor forks and backgrounds on startup
-
diff --git a/ReleaseNotes b/ReleaseNotes
index 6c31d8ab0c..7c40ec1a48 100644
--- a/ReleaseNotes
+++ b/ReleaseNotes
@@ -1,6 +1,1968 @@
-This document summarizes new features and bugfixes in each stable release
-of Tor. If you want to see more detailed descriptions of the changes in
-each development snapshot, see the ChangeLog file.
+This document summarizes new features and bugfixes in each stable
+release of Tor. If you want to see more detailed descriptions of the
+changes in each development snapshot, see the ChangeLog file.
+
+Changes in version 0.3.3.12 - 2019-02-21
+ Tor 0.3.3.12 fixes a medium-severity security bug affecting Tor
+ 0.3.2.1-alpha and later. All Tor instances running an affected release
+ should upgrade to 0.3.3.12, 0.3.4.11, 0.3.5.8, or 0.4.0.2-alpha.
+
+ This release marks the end of support for the Tor 0.3.3.x series. We
+ recommend that users switch to either the Tor 0.3.4 series (supported
+ until at least 10 June 2019), or the Tor 0.3.5 series, which will
+ receive long-term support until at least 1 Feb 2022.
+
+ o Major bugfixes (cell scheduler, KIST, security):
+ - Make KIST consider the outbuf length when computing what it can
+ put in the outbuf. Previously, KIST acted as though the outbuf
+ were empty, which could lead to the outbuf becoming too full. It
+ is possible that an attacker could exploit this bug to cause a Tor
+ client or relay to run out of memory and crash. Fixes bug 29168;
+ bugfix on 0.3.2.1-alpha. This issue is also being tracked as
+ TROVE-2019-001 and CVE-2019-8955.
+
+ o Minor features (geoip):
+ - Update geoip and geoip6 to the February 5 2019 Maxmind GeoLite2
+ Country database. Closes ticket 29478.
+
+ o Minor bugfixes (build, compatibility, rust, backport from 0.4.0.2-alpha):
+ - Update Cargo.lock file to match the version made by the latest
+ version of Rust, so that "make distcheck" will pass again. Fixes
+ bug 29244; bugfix on 0.3.3.4-alpha.
+
+ o Minor bugfixes (onion services, backport from 0.4.0.2-alpha):
+ - Stop logging "Tried to establish rendezvous on non-OR circuit..."
+ as a warning. Instead, log it as a protocol warning, because there
+ is nothing that relay operators can do to fix it. Fixes bug 29029;
+ bugfix on 0.2.5.7-rc.
+
+
+Changes in version 0.3.3.11 - 2019-01-07
+ Tor 0.3.3.11 backports numerous fixes from later versions of Tor,
+ including an important fix for anyone using OpenSSL 1.1.1. Anyone
+ running an earlier version of Tor 0.3.3 should upgrade to this version,
+ or to a later series.
+
+ As a reminder, support for the Tor 0.3.3 series will end on 22 Feb 2019.
+ We anticipate that this will be the last release of Tor 0.3.3, unless
+ some major bug is found before then. Some time between now and then,
+ users should switch to either the Tor 0.3.4 series (supported until
+ at least 10 June 2019), or the Tor 0.3.5 series, which will receive
+ long-term support until at least 1 Feb 2022.
+
+ o Major bugfixes (OpenSSL, portability, backport from 0.3.5.5-alpha):
+ - Fix our usage of named groups when running as a TLS 1.3 client in
+ OpenSSL 1.1.1. Previously, we only initialized EC groups when
+ running as a relay, which caused clients to fail to negotiate TLS
+ 1.3 with relays. Fixes bug 28245; bugfix on 0.2.9.15 (when TLS 1.3
+ support was added).
+
+ o Major bugfixes (restart-in-process, backport from 0.3.5.1-alpha):
+ - Fix a use-after-free error that could be caused by passing Tor an
+ impossible set of options that would fail during options_act().
+ Fixes bug 27708; bugfix on 0.3.3.1-alpha.
+
+ o Minor features (continuous integration, backport from 0.3.5.1-alpha):
+ - Only run one online rust build in Travis, to reduce network
+ errors. Skip offline rust builds on Travis for Linux gcc, because
+ they're redundant. Implements ticket 27252.
+ - Skip gcc on OSX in Travis CI, because it's rarely used. Skip a
+ duplicate hardening-off build in Travis on Tor 0.2.9. Skip gcc on
+ Linux with default settings, because all the non-default builds
+ use gcc on Linux. Implements ticket 27252.
+
+ o Minor features (continuous integration, backport from 0.3.5.3-alpha):
+ - Use the Travis Homebrew addon to install packages on macOS during
+ Travis CI. The package list is the same, but the Homebrew addon
+ does not do a `brew update` by default. Implements ticket 27738.
+
+ o Minor features (fallback directory list, backport from 0.3.5.6-rc):
+ - Replace the 150 fallbacks originally introduced in Tor
+ 0.3.3.1-alpha in January 2018 (of which ~115 were still
+ functional), with a list of 157 fallbacks (92 new, 65 existing, 85
+ removed) generated in December 2018. Closes ticket 24803.
+
+ o Minor features (geoip):
+ - Update geoip and geoip6 to the January 3 2019 Maxmind GeoLite2
+ Country database. Closes ticket 29012.
+
+ o Minor features (OpenSSL bug workaround, backport from 0.3.5.7):
+ - Work around a bug in OpenSSL 1.1.1a, which prevented the TLS 1.3
+ key export function from handling long labels. When this bug is
+ detected, Tor will disable TLS 1.3. We recommend upgrading to a
+ version of OpenSSL without this bug when it becomes available.
+ Closes ticket 28973.
+
+ o Minor bugfixes (relay statistics, backport from 0.3.5.7):
+ - Update relay descriptor on bandwidth changes only when the uptime
+ is smaller than 24h, in order to reduce the efficiency of guard
+ discovery attacks. Fixes bug 24104; bugfix on 0.1.1.6-alpha.
+
+ o Minor bugfixes (C correctness, backport from 0.3.5.4-alpha):
+ - Avoid undefined behavior in an end-of-string check when parsing
+ the BEGIN line in a directory object. Fixes bug 28202; bugfix
+ on 0.2.0.3-alpha.
+
+ o Minor bugfixes (code safety, backport from 0.3.5.3-alpha):
+ - Rewrite our assertion macros so that they no longer suppress the
+ compiler's -Wparentheses warnings. Fixes bug 27709; bugfix
+
+ o Minor bugfixes (compilation, backport from 0.3.5.5-alpha):
+ - Initialize a variable unconditionally in aes_new_cipher(), since
+ some compilers cannot tell that we always initialize it before
+ use. Fixes bug 28413; bugfix on 0.2.9.3-alpha.
+
+ o Minor bugfixes (directory authority, backport from 0.3.5.4-alpha):
+ - Log additional info when we get a relay that shares an ed25519 ID
+ with a different relay, instead making a BUG() warning. Fixes bug
+ 27800; bugfix on 0.3.2.1-alpha.
+
+ o Minor bugfixes (directory permissions, backport form 0.3.5.3-alpha):
+ - When a user requests a group-readable DataDirectory, give it to
+ them. Previously, when the DataDirectory and the CacheDirectory
+ were the same, the default setting (0) for
+ CacheDirectoryGroupReadable would override the setting for
+ DataDirectoryGroupReadable. Fixes bug 26913; bugfix
+ on 0.3.3.1-alpha.
+
+ o Minor bugfixes (onion service v3, backport from 0.3.5.1-alpha):
+ - When the onion service directory can't be created or has the wrong
+ permissions, do not log a stack trace. Fixes bug 27335; bugfix
+ on 0.3.2.1-alpha.
+
+ o Minor bugfixes (onion service v3, backport from 0.3.5.2-alpha):
+ - Close all SOCKS request (for the same .onion) if the newly fetched
+ descriptor is unusable. Before that, we would close only the first
+ one leaving the other hanging and left to time out by themselves.
+ Fixes bug 27410; bugfix on 0.3.2.1-alpha.
+
+ o Minor bugfixes (onion service v3, backport from 0.3.5.3-alpha):
+ - Don't warn so loudly when Tor is unable to decode an onion
+ descriptor. This can now happen as a normal use case if a client
+ gets a descriptor with client authorization but the client is not
+ authorized. Fixes bug 27550; bugfix on 0.3.5.1-alpha.
+
+ o Minor bugfixes (onion service v3, backport from 0.3.5.6-rc):
+ - When deleting an ephemeral onion service (DEL_ONION), do not close
+ any rendezvous circuits in order to let the existing client
+ connections finish by themselves or closed by the application. The
+ HS v2 is doing that already so now we have the same behavior for
+ all versions. Fixes bug 28619; bugfix on 0.3.3.1-alpha.
+
+ o Minor bugfixes (HTTP tunnel):
+ - Fix a bug warning when closing an HTTP tunnel connection due to
+ an HTTP request we couldn't handle. Fixes bug 26470; bugfix on
+ 0.3.2.1-alpha.
+
+ o Minor bugfixes (memory leaks, backport from 0.3.5.5-alpha):
+ - Fix a harmless memory leak in libtorrunner.a. Fixes bug 28419;
+ bugfix on 0.3.3.1-alpha. Patch from Martin Kepplinger.
+
+ o Minor bugfixes (netflow padding, backport from 0.3.5.1-alpha):
+ - Ensure circuitmux queues are empty before scheduling or sending
+ padding. Fixes bug 25505; bugfix on 0.3.1.1-alpha.
+
+ o Minor bugfixes (protover, backport from 0.3.5.3-alpha):
+ - Reject protocol names containing bytes other than alphanumeric
+ characters and hyphens ([A-Za-z0-9-]). Fixes bug 27316; bugfix
+ on 0.2.9.4-alpha.
+
+ o Minor bugfixes (rust, backport from 0.3.5.1-alpha):
+ - Compute protover votes correctly in the rust version of the
+ protover code. Previously, the protover rewrite in 24031 allowed
+ repeated votes from the same voter for the same protocol version
+ to be counted multiple times in protover_compute_vote(). Fixes bug
+ 27649; bugfix on 0.3.3.5-rc.
+ - Reject protover names that contain invalid characters. Fixes bug
+ 27687; bugfix on 0.3.3.1-alpha.
+
+ o Minor bugfixes (rust, backport from 0.3.5.2-alpha):
+ - protover_all_supported() would attempt to allocate up to 16GB on
+ some inputs, leading to a potential memory DoS. Fixes bug 27206;
+ bugfix on 0.3.3.5-rc.
+
+ o Minor bugfixes (rust, backport from 0.3.5.4-alpha):
+ - Fix a potential null dereference in protover_all_supported(). Add
+ a test for it. Fixes bug 27804; bugfix on 0.3.3.1-alpha.
+ - Return a string that can be safely freed by C code, not one
+ created by the rust allocator, in protover_all_supported(). Fixes
+ bug 27740; bugfix on 0.3.3.1-alpha.
+ - Fix an API mismatch in the rust implementation of
+ protover_compute_vote(). This bug could have caused crashes on any
+ directory authorities running Tor with Rust (which we do not yet
+ recommend). Fixes bug 27741; bugfix on 0.3.3.6.
+
+ o Minor bugfixes (testing, backport from 0.3.5.1-alpha):
+ - If a unit test running in a subprocess exits abnormally or with a
+ nonzero status code, treat the test as having failed, even if the
+ test reported success. Without this fix, memory leaks don't cause
+ the tests to fail, even with LeakSanitizer. Fixes bug 27658;
+ bugfix on 0.2.2.4-alpha.
+
+ o Minor bugfixes (testing, backport from 0.3.5.4-alpha):
+ - Treat backtrace test failures as expected on BSD-derived systems
+ (NetBSD, OpenBSD, and macOS/Darwin) until we solve bug 17808.
+ (FreeBSD failures have been treated as expected since 18204 in
+ 0.2.8.) Fixes bug 27948; bugfix on 0.2.5.2-alpha.
+
+ o Minor bugfixes (unit tests, guard selection, backport from 0.3.5.6-rc):
+ - Stop leaking memory in an entry guard unit test. Fixes bug 28554;
+ bugfix on 0.3.0.1-alpha.
+
+
+Changes in version 0.3.3.10 - 2018-09-10
+ Tor 0.3.3.10 backports numerous fixes from later versions of Tor.
+
+ o Minor features (bug workaround, backport from 0.3.4.7-rc):
+ - Compile correctly on systems that provide the C11 stdatomic.h
+ header, but where C11 atomic functions don't actually compile.
+ Closes ticket 26779; workaround for Debian issue 903709.
+
+ o Minor features (compatibility, backport from 0.3.4.8):
+ - Tell OpenSSL to maintain backward compatibility with previous
+ RSA1024/DH1024 users in Tor. With OpenSSL 1.1.1-pre6, these
+ ciphers are disabled by default. Closes ticket 27344.
+
+ o Minor features (continuous integration, backport from 0.3.4.7-rc):
+ - Backport Travis rust distcheck to 0.3.3. Closes ticket 24629.
+ - Enable macOS builds in our Travis CI configuration. Closes
+ ticket 24629.
+ - Install libcap-dev and libseccomp2-dev so these optional
+ dependencies get tested on Travis CI. Closes ticket 26560.
+ - Run asciidoc during Travis CI. Implements ticket 27087.
+ - Use ccache in our Travis CI configuration. Closes ticket 26952.
+
+ o Minor features (continuous integration, rust, backport from 0.3.4.7-rc):
+ - Use cargo cache in our Travis CI configuration. Closes
+ ticket 26952.
+
+ o Minor features (controller, backport from 0.3.4.6-rc):
+ - The control port now exposes the list of HTTPTunnelPorts and
+ ExtOrPorts via GETINFO net/listeners/httptunnel and
+ net/listeners/extor respectively. Closes ticket 26647.
+
+ o Minor features (directory authorities, backport from 0.3.4.7-rc):
+ - Authorities no longer vote to make the subprotocol version
+ "LinkAuth=1" a requirement: it is unsupportable with NSS, and
+ hasn't been needed since Tor 0.3.0.1-alpha. Closes ticket 27286.
+
+ o Minor features (geoip):
+ - Update geoip and geoip6 to the August 7 2018 Maxmind GeoLite2
+ Country database. Closes ticket 27089.
+
+ o Minor bugfixes (compilation, backport from 0.3.4.6-rc):
+ - When compiling with --enable-openbsd-malloc or --enable-tcmalloc,
+ tell the compiler not to include the system malloc implementation.
+ Fixes bug 20424; bugfix on 0.2.0.20-rc.
+ - Don't try to use a pragma to temporarily disable the
+ -Wunused-const-variable warning if the compiler doesn't support
+ it. Fixes bug 26785; bugfix on 0.3.2.11.
+
+ o Minor bugfixes (compilation, backport from 0.3.4.7-rc):
+ - Silence a spurious compiler warning on the GetAdaptersAddresses
+ function pointer cast. This issue is already fixed by 26481 in
+ 0.3.5 and later, by removing the lookup and cast. Fixes bug 27465;
+ bugfix on 0.2.3.11-alpha.
+ - Stop calling SetProcessDEPPolicy() on 64-bit Windows. It is not
+ supported, and always fails. Some compilers warn about the
+ function pointer cast on 64-bit Windows. Fixes bug 27461; bugfix
+ on 0.2.2.23-alpha.
+
+ o Minor bugfixes (compilation, windows, backport from 0.3.4.7-rc):
+ - Don't link or search for pthreads when building for Windows, even
+ if we are using build environment (like mingw) that provides a
+ pthreads library. Fixes bug 27081; bugfix on 0.1.0.1-rc.
+
+ o Minor bugfixes (continuous integration, backport from 0.3.4.6-rc):
+ - Skip a pair of unreliable key generation tests on Windows, until
+ the underlying issue in bug 26076 is resolved. Fixes bug 26830 and
+ bug 26853; bugfix on 0.2.7.3-rc and 0.3.2.1-alpha respectively.
+
+ o Minor bugfixes (continuous integration, backport from 0.3.4.7-rc):
+ - Build with zstd on macOS. Fixes bug 27090; bugfix on 0.3.1.5-alpha.
+ - Pass the module flags to distcheck configure, and log the flags
+ before running configure. (Backported to 0.2.9 and later as a
+ precaution.) Fixes bug 27088; bugfix on 0.3.4.1-alpha.
+
+ o Minor bugfixes (continuous integration, backport from 0.3.4.8):
+ - When a Travis build fails, and showing a log fails, keep trying to
+ show the other logs. Fixes bug 27453; bugfix on 0.3.4.7-rc.
+ - When we use echo in Travis, don't pass a --flag as the first
+ argument. Fixes bug 27418; bugfix on 0.3.4.7-rc.
+
+ o Minor bugfixes (directory authority, backport from 0.3.4.6-rc):
+ - When voting for recommended versions, make sure that all of the
+ versions are well-formed and parsable. Fixes bug 26485; bugfix
+ on 0.1.1.6-alpha.
+
+ o Minor bugfixes (in-process restart, backport from 0.3.4.7-rc):
+ - Always call tor_free_all() when leaving tor_run_main(). When we
+ did not, restarting tor in-process would cause an assertion
+ failure. Fixes bug 26948; bugfix on 0.3.3.1-alpha.
+
+ o Minor bugfixes (linux seccomp2 sandbox, backport from 0.3.4.7-rc):
+ - Fix a bug in our sandboxing rules for the openat() syscall.
+ Previously, no openat() call would be permitted, which would break
+ filesystem operations on recent glibc versions. Fixes bug 25440;
+ bugfix on 0.2.9.15. Diagnosis and patch from Daniel Pinto.
+
+ o Minor bugfixes (logging, backport from 0.3.4.6-rc):
+ - Improve the log message when connection initiators fail to
+ authenticate direct connections to relays. Fixes bug 26927; bugfix
+ on 0.3.0.1-alpha.
+
+ o Minor bugfixes (onion services, backport from 0.3.4.7-rc):
+ - Fix bug that causes services to not ever rotate their descriptors
+ if they were getting SIGHUPed often. Fixes bug 26932; bugfix
+ on 0.3.2.1-alpha.
+
+ o Minor bugfixes (onion services, backport from 0.3.4.8):
+ - Silence a spurious compiler warning in
+ rend_client_send_introduction(). Fixes bug 27463; bugfix
+ on 0.1.1.2-alpha.
+
+ o Minor bugfixes (portability, backport from 0.3.4.6-rc):
+ - Work around two different bugs in the OS X 10.10 and later SDKs
+ that would prevent us from successfully targeting earlier versions
+ of OS X. Fixes bug 26876; bugfix on 0.3.3.1-alpha.
+
+ o Minor bugfixes (portability, backport from 0.3.4.7-rc):
+ - Fix compilation of the unit tests on GNU/Hurd, which does not
+ define PATH_MAX. Fixes bug 26873; bugfix on 0.3.3.1-alpha. Patch
+ from "paulusASol".
+
+ o Minor bugfixes (rust, backport from 0.3.4.7-rc):
+ - Backport test_rust.sh from master. Fixes bug 26497; bugfix
+ on 0.3.1.5-alpha.
+ - Consistently use ../../.. as a fallback for $abs_top_srcdir in
+ test_rust.sh. Fixes bug 27093; bugfix on 0.3.4.3-alpha.
+ - Protover parsing was accepting the presence of whitespace in
+ version strings, which the C implementation would choke on, e.g.
+ "Desc=1\t,2". Fixes bug 27177; bugfix on 0.3.3.5-rc.
+ - Protover parsing was ignoring a 2nd hyphen and everything after
+ it, accepting entries like "Link=1-5-foo". Fixes bug 27164; bugfix
+ on 0.3.3.1-alpha.
+ - Stop setting $CARGO_HOME. cargo will use the user's $CARGO_HOME, or
+ $HOME/.cargo by default. Fixes bug 26497; bugfix on 0.3.1.5-alpha.
+ - cd to ${abs_top_builddir}/src/rust before running cargo in
+ src/test/test_rust.sh. This makes the working directory consistent
+ between builds and tests. Fixes bug 26497; bugfix on 0.3.3.2-alpha.
+
+ o Minor bugfixes (single onion services, Tor2web, backport from 0.3.4.6-rc):
+ - Log a protocol warning when single onion services or Tor2web clients
+ fail to authenticate direct connections to relays.
+ Fixes bug 26924; bugfix on 0.2.9.1-alpha.
+
+ o Minor bugfixes (testing, backport from 0.3.4.6-rc):
+ - Disable core dumps in test_bt.sh, to avoid failures in "make
+ distcheck". Fixes bug 26787; bugfix on 0.2.5.2-alpha.
+
+ o Minor bugfixes (testing, chutney, backport from 0.3.4.8):
+ - When running make test-network-all, use the mixed+hs-v2 network.
+ (A previous fix to chutney removed v3 onion services from the
+ mixed+hs-v23 network, so seeing "mixed+hs-v23" in tests is
+ confusing.) Fixes bug 27345; bugfix on 0.3.2.1-alpha.
+ - Before running make test-network-all, delete old logs and test
+ result files, to avoid spurious failures. Fixes bug 27295; bugfix
+ on 0.2.7.3-rc.
+
+ o Minor bugfixes (testing, openssl compatibility, backport from 0.3.4.7-rc):
+ - Our "tortls/cert_matches_key" unit test no longer relies on
+ OpenSSL internals. Previously, it relied on unsupported OpenSSL
+ behavior in a way that caused it to crash with OpenSSL 1.0.2p.
+ Fixes bug 27226; bugfix on 0.2.5.1-alpha.
+
+ o Minor bugfixes (v3 onion services, backport from 0.3.4.6-rc):
+ - Stop sending ed25519 link specifiers in v3 onion service introduce
+ cells and descriptors, when the rendezvous or introduction point
+ doesn't support ed25519 link authentication. Fixes bug 26627;
+ bugfix on 0.3.2.4-alpha.
+
+ o Minor bugfixes (Windows, compilation, backport from 0.3.4.7-rc):
+ - Silence a compilation warning on MSVC 2017 and clang-cl. Fixes bug
+ 27185; bugfix on 0.2.2.2-alpha.
+
+
+Changes in version 0.3.3.9 - 2018-07-13
+ Tor 0.3.3.9 moves to a new bridge authority, meaning people running
+ bridge relays should upgrade.
+
+ o Directory authority changes:
+ - The "Bifroest" bridge authority has been retired; the new bridge
+ authority is "Serge", and it is operated by George from the
+ TorBSD project. Closes ticket 26771.
+
+
+Changes in version 0.3.2.11 - 2018-07-13
+ Tor 0.3.2.11 moves to a new bridge authority, meaning people running
+ bridge relays should upgrade. We also take this opportunity to backport
+ other minor fixes.
+
+ o Directory authority changes:
+ - The "Bifroest" bridge authority has been retired; the new bridge
+ authority is "Serge", and it is operated by George from the
+ TorBSD project. Closes ticket 26771.
+
+ o Directory authority changes (backport from 0.3.3.7):
+ - Add an IPv6 address for the "dannenberg" directory authority.
+ Closes ticket 26343.
+
+ o Major bugfixes (directory authorities, backport from 0.3.4.1-alpha):
+ - When directory authorities read a zero-byte bandwidth file, they
+ would previously log a warning with the contents of an
+ uninitialised buffer. They now log a warning about the empty file
+ instead. Fixes bug 26007; bugfix on 0.2.2.1-alpha.
+
+ o Major bugfixes (onion service, backport from 0.3.4.1-alpha):
+ - Correctly detect when onion services get disabled after HUP. Fixes
+ bug 25761; bugfix on 0.3.2.1.
+
+ o Minor features (sandbox, backport from 0.3.3.4-alpha):
+ - Explicitly permit the poll() system call when the Linux
+ seccomp2-based sandbox is enabled: apparently, some versions of
+ libc use poll() when calling getpwnam(). Closes ticket 25313.
+
+ o Minor feature (continuous integration, backport from 0.3.3.5-rc):
+ - Update the Travis CI configuration to use the stable Rust channel,
+ now that we have decided to require that. Closes ticket 25714.
+
+ o Minor features (continuous integration, backport from 0.3.4.1-alpha):
+ - Our .travis.yml configuration now includes support for testing the
+ results of "make distcheck". (It's not uncommon for "make check"
+ to pass but "make distcheck" to fail.) Closes ticket 25814.
+ - Our Travis CI configuration now integrates with the Coveralls
+ coverage analysis tool. Closes ticket 25818.
+
+ o Minor features (relay, diagnostic, backport from 0.3.4.3-alpha):
+ - Add several checks to detect whether Tor relays are uploading
+ their descriptors without specifying why they regenerated them.
+ Diagnostic for ticket 25686.
+
+ o Minor features (compilation, backport from 0.3.4.4-rc):
+ - When building Tor, prefer to use Python 3 over Python 2, and more
+ recent (contemplated) versions over older ones. Closes
+ ticket 26372.
+
+ o Minor features (geoip):
+ - Update geoip and geoip6 to the July 3 2018 Maxmind GeoLite2
+ Country database. Closes ticket 26674.
+
+ o Minor bugfixes (correctness, client, backport from 0.3.4.1-alpha):
+ - Upon receiving a malformed connected cell, stop processing the
+ cell immediately. Previously we would mark the connection for
+ close, but continue processing the cell as if the connection were
+ open. Fixes bug 26072; bugfix on 0.2.4.7-alpha.
+
+ o Minor bugfixes (Linux seccomp2 sandbox, backport from 0.3.4.1-alpha):
+ - Allow the nanosleep() system call, which glibc uses to implement
+ sleep() and usleep(). Fixes bug 24969; bugfix on 0.2.5.1-alpha.
+
+ o Minor bugfixes (testing, compatibility, backport from 0.3.4.4-rc):
+ - When running the hs_ntor_ref.py test, make sure only to pass
+ strings (rather than "bytes" objects) to the Python subprocess
+ module. Python 3 on Windows seems to require this. Fixes bug
+ 26535; bugfix on 0.3.1.1-alpha.
+ - When running the ntor_ref.py test, make sure only to pass strings
+ (rather than "bytes" objects) to the Python subprocess module.
+ Python 3 on Windows seems to require this. Fixes bug 26535; bugfix
+ on 0.2.5.5-alpha.
+
+ o Minor bugfixes (compatibility, openssl, backport from 0.3.4.2-alpha):
+ - Work around a change in OpenSSL 1.1.1 where return values that
+ would previously indicate "no password" now indicate an empty
+ password. Without this workaround, Tor instances running with
+ OpenSSL 1.1.1 would accept descriptors that other Tor instances
+ would reject. Fixes bug 26116; bugfix on 0.2.5.16.
+
+ o Minor bugfixes (documentation, backport from 0.3.3.5-rc):
+ - Document that the PerConnBW{Rate,Burst} options will fall back to
+ their corresponding consensus parameters only if those parameters
+ are set. Previously we had claimed that these values would always
+ be set in the consensus. Fixes bug 25296; bugfix on 0.2.2.7-alpha.
+
+ o Minor bugfixes (compilation, backport from 0.3.4.4-rc):
+ - Fix a compilation warning on some versions of GCC when building
+ code that calls routerinfo_get_my_routerinfo() twice, assuming
+ that the second call will succeed if the first one did. Fixes bug
+ 26269; bugfix on 0.2.8.2-alpha.
+
+ o Minor bugfixes (client, backport from 0.3.4.1-alpha):
+ - Don't consider Tor running as a client if the ControlPort is open,
+ but no actual client ports are open. Fixes bug 26062; bugfix
+ on 0.2.9.4-alpha.
+
+ o Minor bugfixes (hardening, backport from 0.3.4.2-alpha):
+ - Prevent a possible out-of-bounds smartlist read in
+ protover_compute_vote(). Fixes bug 26196; bugfix on 0.2.9.4-alpha.
+
+ o Minor bugfixes (C correctness, backport from 0.3.3.4-alpha):
+ - Fix a very unlikely (impossible, we believe) null pointer
+ dereference. Fixes bug 25629; bugfix on 0.2.9.15. Found by
+ Coverity; this is CID 1430932.
+
+ o Minor bugfixes (onion service, backport from 0.3.4.1-alpha):
+ - Fix a memory leak when a v3 onion service is configured and gets a
+ SIGHUP signal. Fixes bug 25901; bugfix on 0.3.2.1-alpha.
+ - When parsing the descriptor signature, look for the token plus an
+ extra white-space at the end. This is more correct but also will
+ allow us to support new fields that might start with "signature".
+ Fixes bug 26069; bugfix on 0.3.0.1-alpha.
+
+ o Minor bugfixes (relay, backport from 0.3.4.3-alpha):
+ - Relays now correctly block attempts to re-extend to the previous
+ relay by Ed25519 identity. Previously they would warn in this
+ case, but not actually reject the attempt. Fixes bug 26158; bugfix
+ on 0.3.0.1-alpha.
+
+ o Minor bugfixes (relay, crash, backport from 0.3.4.1-alpha):
+ - Avoid a crash when running with DirPort set but ORPort turned off.
+ Fixes a case of bug 23693; bugfix on 0.3.1.1-alpha.
+
+ o Minor bugfixes (compilation, backport from 0.3.4.2-alpha):
+ - Silence unused-const-variable warnings in zstd.h with some GCC
+ versions. Fixes bug 26272; bugfix on 0.3.1.1-alpha.
+
+ o Minor bugfixes (testing, backport from 0.3.3.4-alpha):
+ - Avoid intermittent test failures due to a test that had relied on
+ onion service introduction point creation finishing within 5
+ seconds of real clock time. Fixes bug 25450; bugfix
+ on 0.3.1.3-alpha.
+
+ o Minor bugfixes (compilation, backport from 0.3.3.4-alpha):
+ - Fix a C99 compliance issue in our configuration script that caused
+ compilation issues when compiling Tor with certain versions of
+ xtools. Fixes bug 25474; bugfix on 0.3.2.5-alpha.
+
+ o Minor bugfixes (memory, correctness, backport from 0.3.4.4-rc):
+ - Fix a number of small memory leaks identified by coverity. Fixes
+ bug 26467; bugfix on numerous Tor versions.
+
+ o Code simplification and refactoring (backport from 0.3.3.5-rc):
+ - Move the list of default directory authorities to its own file.
+ Closes ticket 24854. Patch by "beastr0".
+
+
+Changes in version 0.2.9.16 - 2018-07-13
+ Tor 0.2.9.16 moves to a new bridge authority, meaning people running
+ bridge relays should upgrade. We also take this opportunity to backport
+ other minor fixes.
+
+ o Directory authority changes:
+ - The "Bifroest" bridge authority has been retired; the new bridge
+ authority is "Serge", and it is operated by George from the
+ TorBSD project. Closes ticket 26771.
+
+ o Directory authority changes (backport from 0.3.3.7):
+ - Add an IPv6 address for the "dannenberg" directory authority.
+ Closes ticket 26343.
+
+ o Major bugfixes (directory authorities, backport from 0.3.4.1-alpha):
+ - When directory authorities read a zero-byte bandwidth file, they
+ would previously log a warning with the contents of an
+ uninitialised buffer. They now log a warning about the empty file
+ instead. Fixes bug 26007; bugfix on 0.2.2.1-alpha.
+
+ o Minor features (sandbox, backport from 0.3.3.4-alpha):
+ - Explicitly permit the poll() system call when the Linux
+ seccomp2-based sandbox is enabled: apparently, some versions of
+ libc use poll() when calling getpwnam(). Closes ticket 25313.
+
+ o Minor features (continuous integration, backport from 0.3.4.1-alpha):
+ - Our .travis.yml configuration now includes support for testing the
+ results of "make distcheck". (It's not uncommon for "make check"
+ to pass but "make distcheck" to fail.) Closes ticket 25814.
+ - Our Travis CI configuration now integrates with the Coveralls
+ coverage analysis tool. Closes ticket 25818.
+
+ o Minor features (compilation, backport from 0.3.4.4-rc):
+ - When building Tor, prefer to use Python 3 over Python 2, and more
+ recent (contemplated) versions over older ones. Closes
+ ticket 26372.
+
+ o Minor features (geoip):
+ - Update geoip and geoip6 to the July 3 2018 Maxmind GeoLite2
+ Country database. Closes ticket 26674.
+
+ o Minor bugfixes (correctness, client, backport from 0.3.4.1-alpha):
+ - Upon receiving a malformed connected cell, stop processing the
+ cell immediately. Previously we would mark the connection for
+ close, but continue processing the cell as if the connection were
+ open. Fixes bug 26072; bugfix on 0.2.4.7-alpha.
+
+ o Minor bugfixes (Linux seccomp2 sandbox, backport from 0.3.4.1-alpha):
+ - Allow the nanosleep() system call, which glibc uses to implement
+ sleep() and usleep(). Fixes bug 24969; bugfix on 0.2.5.1-alpha.
+
+ o Minor bugfixes (testing, compatibility, backport from 0.3.4.4-rc):
+ - When running the ntor_ref.py test, make sure only to pass strings
+ (rather than "bytes" objects) to the Python subprocess module.
+ Python 3 on Windows seems to require this. Fixes bug 26535; bugfix
+ on 0.2.5.5-alpha.
+
+ o Minor bugfixes (compatibility, openssl, backport from 0.3.4.2-alpha):
+ - Work around a change in OpenSSL 1.1.1 where return values that
+ would previously indicate "no password" now indicate an empty
+ password. Without this workaround, Tor instances running with
+ OpenSSL 1.1.1 would accept descriptors that other Tor instances
+ would reject. Fixes bug 26116; bugfix on 0.2.5.16.
+
+ o Minor bugfixes (compilation, backport from 0.3.4.4-rc):
+ - Fix a compilation warning on some versions of GCC when building
+ code that calls routerinfo_get_my_routerinfo() twice, assuming
+ that the second call will succeed if the first one did. Fixes bug
+ 26269; bugfix on 0.2.8.2-alpha.
+
+ o Minor bugfixes (client, backport from 0.3.4.1-alpha):
+ - Don't consider Tor running as a client if the ControlPort is open,
+ but no actual client ports are open. Fixes bug 26062; bugfix
+ on 0.2.9.4-alpha.
+
+ o Minor bugfixes (hardening, backport from 0.3.4.2-alpha):
+ - Prevent a possible out-of-bounds smartlist read in
+ protover_compute_vote(). Fixes bug 26196; bugfix on 0.2.9.4-alpha.
+
+ o Minor bugfixes (C correctness, backport from 0.3.3.4-alpha):
+ - Fix a very unlikely (impossible, we believe) null pointer
+ dereference. Fixes bug 25629; bugfix on 0.2.9.15. Found by
+ Coverity; this is CID 1430932.
+
+ o Minor bugfixes (memory, correctness, backport from 0.3.4.4-rc):
+ - Fix a number of small memory leaks identified by coverity. Fixes
+ bug 26467; bugfix on numerous Tor versions.
+
+ o Code simplification and refactoring (backport from 0.3.3.5-rc):
+ - Move the list of default directory authorities to its own file.
+ Closes ticket 24854. Patch by "beastr0".
+
+
+Changes in version 0.3.3.8 - 2018-07-09
+ Tor 0.3.3.8 backports several changes from the 0.3.4.x series, including
+ fixes for a memory leak affecting directory authorities.
+
+ o Major bugfixes (directory authority, backport from 0.3.4.3-alpha):
+ - Stop leaking memory on directory authorities when planning to
+ vote. This bug was crashing authorities by exhausting their
+ memory. Fixes bug 26435; bugfix on 0.3.3.6.
+
+ o Major bugfixes (rust, testing, backport from 0.3.4.3-alpha):
+ - Make sure that failing tests in Rust will actually cause the build
+ to fail: previously, they were ignored. Fixes bug 26258; bugfix
+ on 0.3.3.4-alpha.
+
+ o Minor features (compilation, backport from 0.3.4.4-rc):
+ - When building Tor, prefer to use Python 3 over Python 2, and more
+ recent (contemplated) versions over older ones. Closes
+ ticket 26372.
+
+ o Minor features (geoip):
+ - Update geoip and geoip6 to the July 3 2018 Maxmind GeoLite2
+ Country database. Closes ticket 26674.
+
+ o Minor features (relay, diagnostic, backport from 0.3.4.3-alpha):
+ - Add several checks to detect whether Tor relays are uploading
+ their descriptors without specifying why they regenerated them.
+ Diagnostic for ticket 25686.
+
+ o Minor bugfixes (circuit path selection, backport from 0.3.4.1-alpha):
+ - Don't count path selection failures as circuit build failures.
+ This change should eliminate cases where Tor blames its guard or
+ the network for situations like insufficient microdescriptors
+ and/or overly restrictive torrc settings. Fixes bug 25705; bugfix
+ on 0.3.3.1-alpha.
+
+ o Minor bugfixes (compilation, backport from 0.3.4.4-rc):
+ - Fix a compilation warning on some versions of GCC when building
+ code that calls routerinfo_get_my_routerinfo() twice, assuming
+ that the second call will succeed if the first one did. Fixes bug
+ 26269; bugfix on 0.2.8.2-alpha.
+
+ o Minor bugfixes (control port, backport from 0.3.4.4-rc):
+ - Handle the HSADDRESS= argument to the HSPOST command properly.
+ (Previously, this argument was misparsed and thus ignored.) Fixes
+ bug 26523; bugfix on 0.3.3.1-alpha. Patch by "akwizgran".
+
+ o Minor bugfixes (memory, correctness, backport from 0.3.4.4-rc):
+ - Fix a number of small memory leaks identified by coverity. Fixes
+ bug 26467; bugfix on numerous Tor versions.
+
+ o Minor bugfixes (relay, backport from 0.3.4.3-alpha):
+ - Relays now correctly block attempts to re-extend to the previous
+ relay by Ed25519 identity. Previously they would warn in this
+ case, but not actually reject the attempt. Fixes bug 26158; bugfix
+ on 0.3.0.1-alpha.
+
+ o Minor bugfixes (restart-in-process, backport from 0.3.4.1-alpha):
+ - When shutting down, Tor now clears all the flags in the control.c
+ module. This should prevent a bug where authentication cookies are
+ not generated on restart. Fixes bug 25512; bugfix on 0.3.3.1-alpha.
+
+ o Minor bugfixes (testing, compatibility, backport from 0.3.4.4-rc):
+ - When running the hs_ntor_ref.py test, make sure only to pass
+ strings (rather than "bytes" objects) to the Python subprocess
+ module. Python 3 on Windows seems to require this. Fixes bug
+ 26535; bugfix on 0.3.1.1-alpha.
+ - When running the ntor_ref.py test, make sure only to pass strings
+ (rather than "bytes" objects) to the Python subprocess module.
+ Python 3 on Windows seems to require this. Fixes bug 26535; bugfix
+ on 0.2.5.5-alpha.
+
+
+Changes in version 0.3.3.7 - 2018-06-12
+ Tor 0.3.3.7 backports several changes from the 0.3.4.x series, including
+ fixes for bugs affecting compatibility and stability.
+
+ o Directory authority changes:
+ - Add an IPv6 address for the "dannenberg" directory authority.
+ Closes ticket 26343.
+
+ o Minor features (geoip):
+ - Update geoip and geoip6 to the June 7 2018 Maxmind GeoLite2
+ Country database. Closes ticket 26351.
+
+ o Minor bugfixes (compatibility, openssl, backport from 0.3.4.2-alpha):
+ - Work around a change in OpenSSL 1.1.1 where return values that
+ would previously indicate "no password" now indicate an empty
+ password. Without this workaround, Tor instances running with
+ OpenSSL 1.1.1 would accept descriptors that other Tor instances
+ would reject. Fixes bug 26116; bugfix on 0.2.5.16.
+
+ o Minor bugfixes (compilation, backport from 0.3.4.2-alpha):
+ - Silence unused-const-variable warnings in zstd.h with some GCC
+ versions. Fixes bug 26272; bugfix on 0.3.1.1-alpha.
+
+ o Minor bugfixes (controller, backport from 0.3.4.2-alpha):
+ - Improve accuracy of the BUILDTIMEOUT_SET control port event's
+ TIMEOUT_RATE and CLOSE_RATE fields. (We were previously
+ miscounting the total number of circuits for these field values.)
+ Fixes bug 26121; bugfix on 0.3.3.1-alpha.
+
+ o Minor bugfixes (hardening, backport from 0.3.4.2-alpha):
+ - Prevent a possible out-of-bounds smartlist read in
+ protover_compute_vote(). Fixes bug 26196; bugfix on 0.2.9.4-alpha.
+
+ o Minor bugfixes (path selection, backport from 0.3.4.1-alpha):
+ - Only select relays when they have the descriptors we prefer to use
+ for them. This change fixes a bug where we could select a relay
+ because it had _some_ descriptor, but reject it later with a
+ nonfatal assertion error because it didn't have the exact one we
+ wanted. Fixes bugs 25691 and 25692; bugfix on 0.3.3.4-alpha.
+
+
+Changes in version 0.3.3.6 - 2018-05-22
+ Tor 0.3.3.6 is the first stable release in the 0.3.3 series. It
+ backports several important fixes from the 0.3.4.1-alpha.
+
+ The Tor 0.3.3 series includes controller support and other
+ improvements for v3 onion services, official support for embedding Tor
+ within other applications, and our first non-trivial module written in
+ the Rust programming language. (Rust is still not enabled by default
+ when building Tor.) And as usual, there are numerous other smaller
+ bugfixes, features, and improvements.
+
+ Below are the changes since 0.3.2.10. For a list of only the changes
+ since 0.3.3.5-rc, see the ChangeLog file.
+
+ o New system requirements:
+ - When built with Rust, Tor now depends on version 0.2.39 of the
+ libc crate. Closes tickets 25310 and 25664.
+
+ o Major features (embedding):
+ - There is now a documented stable API for programs that need to
+ embed Tor. See tor_api.h for full documentation and known bugs.
+ Closes ticket 23684.
+ - Tor now has support for restarting in the same process.
+ Controllers that run Tor using the "tor_api.h" interface can now
+ restart Tor after Tor has exited. This support is incomplete,
+ however: we fixed crash bugs that prevented it from working at
+ all, but many bugs probably remain, including a possibility of
+ security issues. Implements ticket 24581.
+
+ o Major features (IPv6, directory documents):
+ - Add consensus method 27, which adds IPv6 ORPorts to the microdesc
+ consensus. This information makes it easier for IPv6 clients to
+ bootstrap and choose reachable entry guards. Implements
+ ticket 23826.
+ - Add consensus method 28, which removes IPv6 ORPorts from
+ microdescriptors. Now that the consensus contains IPv6 ORPorts,
+ they are redundant in microdescs. This change will be used by Tor
+ clients on 0.2.8.x and later. (That is to say, with all Tor
+ clients that have IPv6 bootstrap and guard support.) Implements
+ ticket 23828.
+ - Expand the documentation for AuthDirHasIPv6Connectivity when it is
+ set by different numbers of authorities. Fixes 23870
+ on 0.2.4.1-alpha.
+
+ o Major features (onion service v3, control port):
+ - The control port now supports commands and events for v3 onion
+ services. It is now possible to create ephemeral v3 services using
+ ADD_ONION. Additionally, several events (HS_DESC, HS_DESC_CONTENT,
+ CIRC and CIRC_MINOR) and commands (GETINFO, HSPOST, ADD_ONION and
+ DEL_ONION) have been extended to support v3 onion services. Closes
+ ticket 20699; implements proposal 284.
+
+ o Major features (onion services):
+ - Provide torrc options to pin the second and third hops of onion
+ service circuits to a list of nodes. The option HSLayer2Guards
+ pins the second hop, and the option HSLayer3Guards pins the third
+ hop. These options are for use in conjunction with experiments
+ with "vanguards" for preventing guard enumeration attacks. Closes
+ ticket 13837.
+ - When v3 onion service clients send introduce cells, they now
+ include the IPv6 address of the rendezvous point, if it has one.
+ Current v3 onion services running 0.3.2 ignore IPv6 addresses, but
+ in future Tor versions, IPv6-only v3 single onion services will be
+ able to use IPv6 addresses to connect directly to the rendezvous
+ point. Closes ticket 23577. Patch by Neel Chauhan.
+
+ o Major features (relay):
+ - Implement an option, ReducedExitPolicy, to allow an Tor exit relay
+ operator to use a more reasonable ("reduced") exit policy, rather
+ than the default one. If you want to run an exit node without
+ thinking too hard about which ports to allow, this one is for you.
+ Closes ticket 13605. Patch from Neel Chauhan.
+
+ o Major features (rust, portability, experimental):
+ - Tor now ships with an optional implementation of one of its
+ smaller modules (protover.c) in the Rust programming language. To
+ try it out, install a Rust build environment, and configure Tor
+ with "--enable-rust --enable-cargo-online-mode". This should not
+ cause any user-visible changes, but should help us gain more
+ experience with Rust, and plan future Rust integration work.
+ Implementation by Chelsea Komlo. Closes ticket 22840.
+
+ o Major bugfixes (directory authorities, security, backport from 0.3.4.1-alpha):
+ - When directory authorities read a zero-byte bandwidth file, they
+ would previously log a warning with the contents of an
+ uninitialised buffer. They now log a warning about the empty file
+ instead. Fixes bug 26007; bugfix on 0.2.2.1-alpha.
+
+ o Major bugfixes (security, directory authority, denial-of-service):
+ - Fix a bug that could have allowed an attacker to force a directory
+ authority to use up all its RAM by passing it a maliciously
+ crafted protocol versions string. Fixes bug 25517; bugfix on
+ 0.2.9.4-alpha. This issue is also tracked as TROVE-2018-005.
+
+ o Major bugfixes (crash, backport from 0.3.4.1-alpha):
+ - Avoid a rare assertion failure in the circuit build timeout code
+ if we fail to allow any circuits to actually complete. Fixes bug
+ 25733; bugfix on 0.2.2.2-alpha.
+
+ o Major bugfixes (netflow padding):
+ - Stop adding unneeded channel padding right after we finish
+ flushing to a connection that has been trying to flush for many
+ seconds. Instead, treat all partial or complete flushes as
+ activity on the channel, which will defer the time until we need
+ to add padding. This fix should resolve confusing and scary log
+ messages like "Channel padding timeout scheduled 221453ms in the
+ past." Fixes bug 22212; bugfix on 0.3.1.1-alpha.
+
+ o Major bugfixes (networking):
+ - Tor will no longer reject IPv6 address strings from Tor Browser
+ when they are passed as hostnames in SOCKS5 requests. Fixes bug
+ 25036, bugfix on Tor 0.3.1.2.
+
+ o Major bugfixes (onion service, backport from 0.3.4.1-alpha):
+ - Correctly detect when onion services get disabled after HUP. Fixes
+ bug 25761; bugfix on 0.3.2.1.
+
+ o Major bugfixes (performance, load balancing):
+ - Directory authorities no longer vote in favor of the Guard flag
+ for relays without directory support. Starting in Tor
+ 0.3.0.1-alpha, clients have been avoiding using such relays in the
+ Guard position, leading to increasingly broken load balancing for
+ the 5%-or-so of Guards that don't advertise directory support.
+ Fixes bug 22310; bugfix on 0.3.0.6.
+
+ o Major bugfixes (relay):
+ - If we have failed to connect to a relay and received a connection
+ refused, timeout, or similar error (at the TCP level), do not try
+ that same address/port again for 60 seconds after the failure has
+ occurred. Fixes bug 24767; bugfix on 0.0.6.
+
+ o Major bugfixes (relay, denial of service, backport from 0.3.4.1-alpha):
+ - Impose a limit on circuit cell queue size. The limit can be
+ controlled by a consensus parameter. Fixes bug 25226; bugfix
+ on 0.2.4.14-alpha.
+
+ o Minor features (cleanup):
+ - Tor now deletes the CookieAuthFile and ExtORPortCookieAuthFile
+ when it stops. Closes ticket 23271.
+
+ o Minor features (compatibility, backport from 0.3.4.1-alpha):
+ - Avoid some compilation warnings with recent versions of LibreSSL.
+ Closes ticket 26006.
+
+ o Minor features (config options):
+ - Change the way the default value for MaxMemInQueues is calculated.
+ We now use 40% of the hardware RAM if the system has 8 GB RAM or
+ more. Otherwise we use the former value of 75%. Closes
+ ticket 24782.
+
+ o Minor features (continuous integration):
+ - Update the Travis CI configuration to use the stable Rust channel,
+ now that we have decided to require that. Closes ticket 25714.
+
+ o Minor features (continuous integration, backport from 0.3.4.1-alpha):
+ - Our .travis.yml configuration now includes support for testing the
+ results of "make distcheck". (It's not uncommon for "make check"
+ to pass but "make distcheck" to fail.) Closes ticket 25814.
+ - Our Travis CI configuration now integrates with the Coveralls
+ coverage analysis tool. Closes ticket 25818.
+
+ o Minor features (defensive programming):
+ - Most of the functions in Tor that free objects have been replaced
+ with macros that free the objects and set the corresponding
+ pointers to NULL. This change should help prevent a large class of
+ dangling pointer bugs. Closes ticket 24337.
+ - Where possible, the tor_free() macro now only evaluates its input
+ once. Part of ticket 24337.
+ - Check that microdesc ed25519 ids are non-zero in
+ node_get_ed25519_id() before returning them. Implements ticket
+ 24001, patch by "aruna1234".
+
+ o Minor features (directory authority):
+ - When directory authorities are unable to add signatures to a
+ pending consensus, log the reason why. Closes ticket 24849.
+
+ o Minor features (embedding):
+ - Tor can now start with a preauthenticated control connection
+ created by the process that launched it. This feature is meant for
+ use by programs that want to launch and manage a Tor process
+ without allowing other programs to manage it as well. For more
+ information, see the __OwningControllerFD option documented in
+ control-spec.txt. Closes ticket 23900.
+ - On most errors that would cause Tor to exit, it now tries to
+ return from the tor_main() function, rather than calling the
+ system exit() function. Most users won't notice a difference here,
+ but it should be significant for programs that run Tor inside a
+ separate thread: they should now be able to survive Tor's exit
+ conditions rather than having Tor shut down the entire process.
+ Closes ticket 23848.
+ - Applications that want to embed Tor can now tell Tor not to
+ register any of its own POSIX signal handlers, using the
+ __DisableSignalHandlers option. Closes ticket 24588.
+
+ o Minor features (fallback directory list):
+ - Avoid selecting fallbacks that change their IP addresses too
+ often. Select more fallbacks by ignoring the Guard flag, and
+ allowing lower cutoffs for the Running and V2Dir flags. Also allow
+ a lower bandwidth, and a higher number of fallbacks per operator
+ (5% of the list). Implements ticket 24785.
+ - Update the fallback whitelist and blacklist based on opt-ins and
+ relay changes. Closes tickets 22321, 24678, 22527, 24135,
+ and 24695.
+
+ o Minor features (fallback directory mirror configuration):
+ - Add a nickname to each fallback in a C comment. This makes it
+ easier for operators to find their relays, and allows stem to use
+ nicknames to identify fallbacks. Implements ticket 24600.
+ - Add a type and version header to the fallback directory mirror
+ file. Also add a delimiter to the end of each fallback entry. This
+ helps external parsers like stem and Relay Search. Implements
+ ticket 24725.
+ - Add an extrainfo cache flag for each fallback in a C comment. This
+ allows stem to use fallbacks to fetch extra-info documents, rather
+ than using authorities. Implements ticket 22759.
+ - Add the generateFallbackDirLine.py script for automatically
+ generating fallback directory mirror lines from relay fingerprints.
+ No more typos! Add the lookupFallbackDirContact.py script for
+ automatically looking up operator contact info from relay
+ fingerprints. Implements ticket 24706, patch by teor and atagar.
+ - Reject any fallback directory mirror that serves an expired
+ consensus. Implements ticket 20942, patch by "minik".
+ - Remove commas and equals signs from external string inputs to the
+ fallback list. This avoids format confusion attacks. Implements
+ ticket 24726.
+ - Remove the "weight=10" line from fallback directory mirror
+ entries. Ticket 24681 will maintain the current fallback weights
+ by changing Tor's default fallback weight to 10. Implements
+ ticket 24679.
+ - Stop logging excessive information about fallback netblocks.
+ Implements ticket 24791.
+
+ o Minor features (forward-compatibility):
+ - If a relay supports some link authentication protocol that we do
+ not recognize, then include that relay's ed25519 key when telling
+ other relays to extend to it. Previously, we treated future
+ versions as if they were too old to support ed25519 link
+ authentication. Closes ticket 20895.
+
+ o Minor features (geoip):
+ - Update geoip and geoip6 to the May 1 2018 Maxmind GeoLite2 Country
+ database. Closes ticket 26104.
+
+ o Minor features (heartbeat):
+ - Add onion service information to our heartbeat logs, displaying
+ stats about the activity of configured onion services. Closes
+ ticket 24896.
+
+ o Minor features (instrumentation, development):
+ - Add the MainloopStats option to allow developers to get
+ instrumentation information from the main event loop via the
+ heartbeat messages. We hope to use this to improve Tor's behavior
+ when it's trying to sleep. Closes ticket 24605.
+
+ o Minor features (IPv6):
+ - Make IPv6-only clients wait for microdescs for relays, even if we
+ were previously using descriptors (or were using them as a bridge)
+ and have a cached descriptor for them. Implements ticket 23827.
+ - When a consensus has IPv6 ORPorts, make IPv6-only clients use
+ them, rather than waiting to download microdescriptors. Implements
+ ticket 23827.
+
+ o Minor features (log messages):
+ - Improve log message in the out-of-memory handler to include
+ information about memory usage from the different compression
+ backends. Closes ticket 25372.
+ - Improve a warning message that happens when we fail to re-parse an
+ old router because of an expired certificate. Closes ticket 20020.
+ - Make the log more quantitative when we hit MaxMemInQueues
+ threshold exposing some values. Closes ticket 24501.
+
+ o Minor features (logging):
+ - Clarify the log messages produced when getrandom() or a related
+ entropy-generation mechanism gives an error. Closes ticket 25120.
+ - Added support for the Android logging subsystem. Closes
+ ticket 24362.
+
+ o Minor features (performance):
+ - Support predictive circuit building for onion service circuits
+ with multiple layers of guards. Closes ticket 23101.
+ - Use stdatomic.h where available, rather than mutexes, to implement
+ atomic_counter_t. Closes ticket 23953.
+
+ o Minor features (performance, 32-bit):
+ - Improve performance on 32-bit systems by avoiding 64-bit division
+ when calculating the timestamp in milliseconds for channel padding
+ computations. Implements ticket 24613.
+ - Improve performance on 32-bit systems by avoiding 64-bit division
+ when timestamping cells and buffer chunks for OOM calculations.
+ Implements ticket 24374.
+
+ o Minor features (performance, OSX, iOS):
+ - Use the mach_approximate_time() function (when available) to
+ implement coarse monotonic time. Having a coarse time function
+ should avoid a large number of system calls, and improve
+ performance slightly, especially under load. Closes ticket 24427.
+
+ o Minor features (performance, windows):
+ - Improve performance on Windows Vista and Windows 7 by adjusting
+ TCP send window size according to the recommendation from
+ SIO_IDEAL_SEND_BACKLOG_QUERY. Closes ticket 22798. Patch
+ from Vort.
+
+ o Minor features (sandbox):
+ - Explicitly permit the poll() system call when the Linux
+ seccomp2-based sandbox is enabled: apparently, some versions of
+ libc use poll() when calling getpwnam(). Closes ticket 25313.
+
+ o Minor features (storage, configuration):
+ - Users can store cached directory documents somewhere other than
+ the DataDirectory by using the CacheDirectory option. Similarly,
+ the storage location for relay's keys can be overridden with the
+ KeyDirectory option. Closes ticket 22703.
+
+ o Minor features (testing):
+ - Add a "make test-rust" target to run the rust tests only. Closes
+ ticket 25071.
+
+ o Minor features (testing, debugging, embedding):
+ - For development purposes, Tor now has a mode in which it runs for
+ a few seconds, then stops, and starts again without exiting the
+ process. This mode is meant to help us debug various issues with
+ ticket 23847. To use this feature, compile with
+ --enable-restart-debugging, and set the TOR_DEBUG_RESTART
+ environment variable. This is expected to crash a lot, and is
+ really meant for developers only. It will likely be removed in a
+ future release. Implements ticket 24583.
+
+ o Minor bugfixes (build, rust):
+ - Fix output of autoconf checks to display success messages for Rust
+ dependencies and a suitable rustc compiler version. Fixes bug
+ 24612; bugfix on 0.3.1.3-alpha.
+ - Don't pass the --quiet option to cargo: it seems to suppress some
+ errors, which is not what we want to do when building. Fixes bug
+ 24518; bugfix on 0.3.1.7.
+ - Build correctly when building from outside Tor's source tree with
+ the TOR_RUST_DEPENDENCIES option set. Fixes bug 22768; bugfix
+ on 0.3.1.7.
+
+ o Minor bugfixes (C correctness):
+ - Fix a very unlikely (impossible, we believe) null pointer
+ dereference. Fixes bug 25629; bugfix on 0.2.9.15. Found by
+ Coverity; this is CID 1430932.
+
+ o Minor bugfixes (channel, client):
+ - Better identify client connection when reporting to the geoip
+ client cache. Fixes bug 24904; bugfix on 0.3.1.7.
+
+ o Minor bugfixes (circuit, cannibalization):
+ - Don't cannibalize preemptively-built circuits if we no longer
+ recognize their first hop. This situation can happen if our Guard
+ relay went off the consensus after the circuit was created. Fixes
+ bug 24469; bugfix on 0.0.6.
+
+ o Minor bugfixes (client, backport from 0.3.4.1-alpha):
+ - Don't consider Tor running as a client if the ControlPort is open,
+ but no actual client ports are open. Fixes bug 26062; bugfix
+ on 0.2.9.4-alpha.
+
+ o Minor bugfixes (compilation):
+ - Fix a C99 compliance issue in our configuration script that caused
+ compilation issues when compiling Tor with certain versions of
+ xtools. Fixes bug 25474; bugfix on 0.3.2.5-alpha.
+
+ o Minor bugfixes (controller):
+ - Restore the correct operation of the RESOLVE command, which had
+ been broken since we added the ability to enable/disable DNS on
+ specific listener ports. Fixes bug 25617; bugfix on 0.2.9.3-alpha.
+ - Avoid a (nonfatal) assertion failure when extending a one-hop
+ circuit from the controller to become a multihop circuit. Fixes
+ bug 24903; bugfix on 0.2.5.2-alpha.
+
+ o Minor bugfixes (correctness):
+ - Remove a nonworking, unnecessary check to see whether a circuit
+ hop's identity digest was set when the circuit failed. Fixes bug
+ 24927; bugfix on 0.2.4.4-alpha.
+
+ o Minor bugfixes (correctness, client, backport from 0.3.4.1-alpha):
+ - Upon receiving a malformed connected cell, stop processing the
+ cell immediately. Previously we would mark the connection for
+ close, but continue processing the cell as if the connection were
+ open. Fixes bug 26072; bugfix on 0.2.4.7-alpha.
+
+ o Minor bugfixes (directory authorities, IPv6):
+ - When creating a routerstatus (vote) from a routerinfo (descriptor),
+ set the IPv6 address to the unspecified IPv6 address, and
+ explicitly initialize the port to zero. Fixes bug 24488; bugfix
+ on 0.2.4.1-alpha.
+
+ o Minor bugfixes (documentation):
+ - Document that the PerConnBW{Rate,Burst} options will fall back to
+ their corresponding consensus parameters only if those parameters
+ are set. Previously we had claimed that these values would always
+ be set in the consensus. Fixes bug 25296; bugfix on 0.2.2.7-alpha.
+
+ o Minor bugfixes (documentation, backport from 0.3.4.1-alpha):
+ - Stop saying in the manual that clients cache ipv4 dns answers from
+ exit relays. We haven't used them since 0.2.6.3-alpha, and in
+ ticket 24050 we stopped even caching them as of 0.3.2.6-alpha, but
+ we forgot to say so in the man page. Fixes bug 26052; bugfix
+ on 0.3.2.6-alpha.
+
+ o Minor bugfixes (exit relay DNS retries):
+ - Re-attempt timed-out DNS queries 3 times before failure, since our
+ timeout is 5 seconds for them, but clients wait 10-15. Also allow
+ slightly more timeouts per resolver when an exit has multiple
+ resolvers configured. Fixes bug 21394; bugfix on 0.3.1.9.
+
+ o Minor bugfixes (fallback directory mirrors):
+ - Make updateFallbackDirs.py search harder for python. (Some OSs
+ don't put it in /usr/bin.) Fixes bug 24708; bugfix
+ on 0.2.8.1-alpha.
+
+ o Minor bugfixes (hibernation, bandwidth accounting, shutdown):
+ - When hibernating, close connections normally and allow them to
+ flush. Fixes bug 23571; bugfix on 0.2.4.7-alpha. Also fixes
+ bug 7267.
+ - Do not attempt to launch self-reachability tests when entering
+ hibernation. Fixes a case of bug 12062; bugfix on 0.0.9pre5.
+ - Resolve several bugs related to descriptor fetching on bridge
+ clients with bandwidth accounting enabled. (This combination is
+ not recommended!) Fixes a case of bug 12062; bugfix
+ on 0.2.0.3-alpha.
+ - When hibernating, do not attempt to launch DNS checks. Fixes a
+ case of bug 12062; bugfix on 0.1.2.2-alpha.
+ - When hibernating, do not try to upload or download descriptors.
+ Fixes a case of bug 12062; bugfix on 0.0.9pre5.
+
+ o Minor bugfixes (IPv6, bridges):
+ - Tor now always sets IPv6 preferences for bridges. Fixes bug 24573;
+ bugfix on 0.2.8.2-alpha.
+ - Tor now sets IPv6 address in the routerstatus as well as in the
+ router descriptors when updating addresses for a bridge. Closes
+ ticket 24572; bugfix on 0.2.4.5-alpha. Patch by "ffmancera".
+
+ o Minor bugfixes (Linux seccomp2 sandbox):
+ - When running with the sandbox enabled, reload configuration files
+ correctly even when %include was used. Previously we would crash.
+ Fixes bug 22605; bugfix on 0.3.1. Patch from Daniel Pinto.
+
+ o Minor bugfixes (Linux seccomp2 sandbox, backport from 0.3.4.1-alpha):
+ - Allow the nanosleep() system call, which glibc uses to implement
+ sleep() and usleep(). Fixes bug 24969; bugfix on 0.2.5.1-alpha.
+
+ o Minor bugfixes (logging):
+ - Fix a (mostly harmless) race condition when invoking
+ LOG_PROTOCOL_WARN message from a subthread while the torrc options
+ are changing. Fixes bug 23954; bugfix on 0.1.1.9-alpha.
+
+ o Minor bugfixes (man page, SocksPort):
+ - Remove dead code from the old "SocksSocket" option, and rename
+ SocksSocketsGroupWritable to UnixSocksGroupWritable. The old
+ option still works, but is deprecated. Fixes bug 24343; bugfix
+ on 0.2.6.3.
+
+ o Minor bugfixes (memory leaks):
+ - Avoid possible at-exit memory leaks related to use of Libevent's
+ event_base_once() function. (This function tends to leak memory if
+ the event_base is closed before the event fires.) Fixes bug 24584;
+ bugfix on 0.2.8.1-alpha.
+ - Fix a harmless memory leak in tor-resolve. Fixes bug 24582; bugfix
+ on 0.2.1.1-alpha.
+
+ o Minor bugfixes (network IPv6 test):
+ - Tor's test scripts now check if "ping -6 ::1" works when the user
+ runs "make test-network-all". Fixes bug 24677; bugfix on
+ 0.2.9.3-alpha. Patch by "ffmancera".
+
+ o Minor bugfixes (networking):
+ - string_is_valid_hostname() will not consider IP strings to be
+ valid hostnames. Fixes bug 25055; bugfix on Tor 0.2.5.5.
+
+ o Minor bugfixes (onion service v3):
+ - Avoid an assertion failure when the next onion service descriptor
+ rotation type is out of sync with the consensus's valid-after
+ time. Instead, log a warning message with extra information, so we
+ can better hunt down the cause of this assertion. Fixes bug 25306;
+ bugfix on 0.3.2.1-alpha.
+
+ o Minor bugfixes (onion service, backport from 0.3.4.1-alpha):
+ - Fix a memory leak when a v3 onion service is configured and gets a
+ SIGHUP signal. Fixes bug 25901; bugfix on 0.3.2.1-alpha.
+ - When parsing the descriptor signature, look for the token plus an
+ extra white-space at the end. This is more correct but also will
+ allow us to support new fields that might start with "signature".
+ Fixes bug 26069; bugfix on 0.3.0.1-alpha.
+
+ o Minor bugfixes (onion services):
+ - If we are configured to offer a single onion service, don't log
+ long-term established one hop rendezvous points in the heartbeat.
+ Fixes bug 25116; bugfix on 0.2.9.6-rc.
+
+ o Minor bugfixes (performance):
+ - Reduce the number of circuits that will be opened at once during
+ the circuit build timeout phase. This is done by increasing the
+ idle timeout to 3 minutes, and lowering the maximum number of
+ concurrent learning circuits to 10. Fixes bug 24769; bugfix
+ on 0.3.1.1-alpha.
+ - Avoid calling protocol_list_supports_protocol() from inside tight
+ loops when running with cached routerinfo_t objects. Instead,
+ summarize the relevant protocols as flags in the routerinfo_t, as
+ we do for routerstatus_t objects. This change simplifies our code
+ a little, and saves a large amount of short-term memory allocation
+ operations. Fixes bug 25008; bugfix on 0.2.9.4-alpha.
+
+ o Minor bugfixes (performance, timeouts):
+ - Consider circuits for timeout as soon as they complete a hop. This
+ is more accurate than applying the timeout in
+ circuit_expire_building() because that function is only called
+ once per second, which is now too slow for typical timeouts on the
+ current network. Fixes bug 23114; bugfix on 0.2.2.2-alpha.
+ - Use onion service circuits (and other circuits longer than 3 hops)
+ to calculate a circuit build timeout. Previously, Tor only
+ calculated its build timeout based on circuits that planned to be
+ exactly 3 hops long. With this change, we include measurements
+ from all circuits at the point where they complete their third
+ hop. Fixes bug 23100; bugfix on 0.2.2.2-alpha.
+
+ o Minor bugfixes (relay, crash, backport from 0.3.4.1-alpha):
+ - Avoid a crash when running with DirPort set but ORPort tuned off.
+ Fixes a case of bug 23693; bugfix on 0.3.1.1-alpha.
+
+ o Minor bugfixes (Rust FFI):
+ - Fix a minor memory leak which would happen whenever the C code
+ would call the Rust implementation of
+ protover_get_supported_protocols(). This was due to the C version
+ returning a static string, whereas the Rust version newly allocated
+ a CString to pass accross the FFI boundary. Consequently, the C
+ code was not expecting to need to free() what it was given. Fixes
+ bug 25127; bugfix on 0.3.2.1-alpha.
+
+ o Minor bugfixes (spelling):
+ - Use the "misspell" tool to detect and fix typos throughout the
+ source code. Fixes bug 23650; bugfix on various versions of Tor.
+ Patch from Deepesh Pathak.
+
+ o Minor bugfixes (testing):
+ - Avoid intermittent test failures due to a test that had relied on
+ onion service introduction point creation finishing within 5
+ seconds of real clock time. Fixes bug 25450; bugfix
+ on 0.3.1.3-alpha.
+ - Give out Exit flags in bootstrapping networks. Fixes bug 24137;
+ bugfix on 0.2.3.1-alpha.
+
+ o Minor bugfixes (unit test, monotonic time):
+ - Increase a constant (1msec to 10msec) in the monotonic time test
+ that makes sure the nsec/usec/msec times read are synchronized.
+ This change was needed to accommodate slow systems like armel or
+ when the clock_gettime() is not a VDSO on the running kernel.
+ Fixes bug 25113; bugfix on 0.2.9.1.
+
+ o Code simplification and refactoring:
+ - Move the list of default directory authorities to its own file.
+ Closes ticket 24854. Patch by "beastr0".
+ - Remove the old (deterministic) directory retry logic entirely:
+ We've used exponential backoff exclusively for some time. Closes
+ ticket 23814.
+ - Remove the unused nodelist_recompute_all_hsdir_indices(). Closes
+ ticket 25108.
+ - Remove a series of counters used to track circuit extend attempts
+ and connection status but that in reality we aren't using for
+ anything other than stats logged by a SIGUSR1 signal. Closes
+ ticket 25163.
+ - Remove /usr/athena from search path in configure.ac. Closes
+ ticket 24363.
+ - Remove duplicate code in node_has_curve25519_onion_key() and
+ node_get_curve25519_onion_key(), and add a check for a zero
+ microdesc curve25519 onion key. Closes ticket 23966, patch by
+ "aruna1234" and teor.
+ - Rewrite channel_rsa_id_group_set_badness to reduce temporary
+ memory allocations with large numbers of OR connections (e.g.
+ relays). Closes ticket 24119.
+ - Separate the function that deletes ephemeral files when Tor
+ stops gracefully.
+ - Small changes to Tor's buf_t API to make it suitable for use as a
+ general-purpose safe string constructor. Closes ticket 22342.
+ - Switch -Wnormalized=id to -Wnormalized=nfkc in configure.ac to
+ avoid source code identifier confusion. Closes ticket 24467.
+ - The tor_git_revision[] constant no longer needs to be redeclared
+ by everything that links against the rest of Tor. Done as part of
+ ticket 23845, to simplify our external API.
+ - We make extend_info_from_node() use node_get_curve25519_onion_key()
+ introduced in ticket 23577 to access the curve25519 public keys
+ rather than accessing it directly. Closes ticket 23760. Patch by
+ Neel Chauhan.
+ - Add a function to log channels' scheduler state changes to aid
+ debugging efforts. Closes ticket 24531.
+
+ o Documentation:
+ - Improved the documentation of AccountingStart parameter. Closes
+ ticket 23635.
+ - Update the documentation for "Log" to include the current list of
+ logging domains. Closes ticket 25378.
+ - Add documentation on how to build tor with Rust dependencies
+ without having to be online. Closes ticket 22907; bugfix
+ on 0.3.0.3-alpha.
+ - Clarify the behavior of RelayBandwidth{Rate,Burst} with client
+ traffic. Closes ticket 24318.
+ - Document that OutboundBindAddress doesn't apply to DNS requests.
+ Closes ticket 22145. Patch from Aruna Maurya.
+
+ o Code simplification and refactoring (channels):
+ - Remove the incoming and outgoing channel queues. These were never
+ used, but still took up a step in our fast path.
+ - The majority of the channel unit tests have been rewritten and the
+ code coverage has now been raised to 83.6% for channel.c. Closes
+ ticket 23709.
+ - Remove other dead code from the channel subsystem: All together,
+ this cleanup has removed more than 1500 lines of code overall and
+ adding very little except for unit test.
+
+ o Code simplification and refactoring (circuit rendezvous):
+ - Split the client-side rendezvous circuit lookup into two
+ functions: one that returns only established circuits and another
+ that returns all kinds of circuits. Closes ticket 23459.
+
+ o Code simplification and refactoring (controller):
+ - Make most of the variables in networkstatus_getinfo_by_purpose()
+ const. Implements ticket 24489.
+
+ o Documentation (backport from 0.3.4.1-alpha):
+ - Correct an IPv6 error in the documentation for ExitPolicy. Closes
+ ticket 25857. Patch from "CTassisF".
+
+ o Documentation (man page):
+ - The HiddenServiceVersion torrc option accepts only one number:
+ either version 2 or 3. Closes ticket 25026; bugfix
+ on 0.3.2.2-alpha.
+
+ o Documentation (manpage, denial of service):
+ - Provide more detail about the denial-of-service options, by
+ listing each mitigation and explaining how they relate. Closes
+ ticket 25248.
+
+
+Changes in version 0.3.1.10 - 2018-03-03
+ Tor 0.3.1.10 backports a number of bugfixes, including important fixes for
+ security issues.
+
+ It includes an important security fix for a remote crash attack
+ against directory authorities, tracked as TROVE-2018-001.
+
+ This release also backports our new system for improved resistance to
+ denial-of-service attacks against relays.
+
+ This release also fixes several minor bugs and annoyances from
+ earlier releases.
+
+ All directory authorities should upgrade to one of the versions
+ released today. Relays running 0.3.1.x may wish to update to one of
+ the versions released today, for the DoS mitigations.
+
+ Please note: according to our release calendar, Tor 0.3.1 will no
+ longer be supported after 1 July 2018. If you will be running Tor
+ after that date, you should make sure to plan to upgrade to the latest
+ stable version, or downgrade to 0.2.9 (which will receive long-term
+ support).
+
+ o Major bugfixes (denial-of-service, directory authority, backport from 0.3.3.3-alpha):
+ - Fix a protocol-list handling bug that could be used to remotely crash
+ directory authorities with a null-pointer exception. Fixes bug 25074;
+ bugfix on 0.2.9.4-alpha. Also tracked as TROVE-2018-001 and
+ CVE-2018-0490.
+
+ o Major features (denial-of-service mitigation, backport from 0.3.3.2-alpha):
+ - Give relays some defenses against the recent network overload. We
+ start with three defenses (default parameters in parentheses).
+ First: if a single client address makes too many concurrent
+ connections (>100), hang up on further connections. Second: if a
+ single client address makes circuits too quickly (more than 3 per
+ second, with an allowed burst of 90) while also having too many
+ connections open (3), refuse new create cells for the next while
+ (1-2 hours). Third: if a client asks to establish a rendezvous
+ point to you directly, ignore the request. These defenses can be
+ manually controlled by new torrc options, but relays will also
+ take guidance from consensus parameters, so there's no need to
+ configure anything manually. Implements ticket 24902.
+
+ o Minor features (linux seccomp2 sandbox, backport from 0.3.2.5-alpha):
+ - Update the sandbox rules so that they should now work correctly
+ with Glibc 2.26. Closes ticket 24315.
+
+ o Major bugfixes (onion services, retry behavior, backport from 0.3.3.1-alpha):
+ - Fix an "off by 2" error in counting rendezvous failures on the
+ onion service side. While we thought we would stop the rendezvous
+ attempt after one failed circuit, we were actually making three
+ circuit attempts before giving up. Now switch to a default of 2,
+ and allow the consensus parameter "hs_service_max_rdv_failures" to
+ override. Fixes bug 24895; bugfix on 0.0.6.
+
+ o Major bugfixes (protocol versions, backport from 0.3.3.2-alpha):
+ - Add Link protocol version 5 to the supported protocols list. Fixes
+ bug 25070; bugfix on 0.3.1.1-alpha.
+
+ o Major bugfixes (relay, backport from 0.3.3.1-alpha):
+ - Fix a set of false positives where relays would consider
+ connections to other relays as being client-only connections (and
+ thus e.g. deserving different link padding schemes) if those
+ relays fell out of the consensus briefly. Now we look only at the
+ initial handshake and whether the connection authenticated as a
+ relay. Fixes bug 24898; bugfix on 0.3.1.1-alpha.
+
+ o Minor features (denial-of-service avoidance, backport from 0.3.3.2-alpha):
+ - Make our OOM handler aware of the geoip client history cache so it
+ doesn't fill up the memory. This check is important for IPv6 and
+ our DoS mitigation subsystem. Closes ticket 25122.
+
+ o Minor feature (relay statistics, backport from 0.3.2.6-alpha):
+ - Change relay bandwidth reporting stats interval from 4 hours to 24
+ hours in order to reduce the efficiency of guard discovery
+ attacks. Fixes ticket 23856.
+
+ o Minor features (compatibility, OpenSSL, backport from 0.3.3.3-alpha):
+ - Tor will now support TLS1.3 once OpenSSL 1.1.1 is released.
+ Previous versions of Tor would not have worked with OpenSSL 1.1.1,
+ since they neither disabled TLS 1.3 nor enabled any of the
+ ciphersuites it requires. Now we enable the TLS 1.3 ciphersuites.
+ Closes ticket 24978.
+
+ o Minor features (fallback directory mirrors, backport from 0.3.2.9):
+ - The fallback directory list has been re-generated based on the
+ current status of the network. Tor uses fallback directories to
+ bootstrap when it doesn't yet have up-to-date directory
+ information. Closes ticket 24801.
+ - Make the default DirAuthorityFallbackRate 0.1, so that clients
+ prefer to bootstrap from fallback directory mirrors. This is a
+ follow-up to 24679, which removed weights from the default
+ fallbacks. Implements ticket 24681.
+
+ o Minor features (geoip):
+ - Update geoip and geoip6 to the February 7 2018 Maxmind GeoLite2
+ Country database.
+
+ o Minor bugfix (channel connection, backport from 0.3.3.2-alpha):
+ - Use the actual observed address of an incoming relay connection,
+ not the canonical address of the relay from its descriptor, when
+ making decisions about how to handle the incoming connection.
+ Fixes bug 24952; bugfix on 0.2.4.11-alpha. Patch by "ffmancera".
+
+ o Minor bugfix (directory authority, backport from 0.3.3.2-alpha):
+ - Directory authorities, when refusing a descriptor from a rejected
+ relay, now explicitly tell the relay (in its logs) to set a valid
+ ContactInfo address and contact the bad-relays@ mailing list.
+ Fixes bug 25170; bugfix on 0.2.9.1.
+
+ o Minor bugfixes (address selection, backport from 0.3.2.9):
+ - When the fascist_firewall_choose_address_ functions don't find a
+ reachable address, set the returned address to the null address
+ and port. This is a precautionary measure, because some callers do
+ not check the return value. Fixes bug 24736; bugfix
+ on 0.2.8.2-alpha.
+
+ o Major bugfixes (bootstrapping, backport from 0.3.2.5-alpha):
+ - Fetch descriptors aggressively whenever we lack enough to build
+ circuits, regardless of how many descriptors we are missing.
+ Previously, we would delay launching the fetch when we had fewer
+ than 15 missing descriptors, even if some of those descriptors
+ were blocking circuits from building. Fixes bug 23985; bugfix on
+ 0.1.1.11-alpha. The effects of this bug became worse in
+ 0.3.0.3-alpha, when we began treating missing descriptors from our
+ primary guards as a reason to delay circuits.
+ - Don't try fetching microdescriptors from relays that have failed
+ to deliver them in the past. Fixes bug 23817; bugfix
+ on 0.3.0.1-alpha.
+
+ o Minor bugfixes (compilation, backport from 0.3.2.7-rc):
+ - Fix a signed/unsigned comparison warning introduced by our fix to
+ TROVE-2017-009. Fixes bug 24480; bugfix on 0.2.5.16.
+
+ o Minor bugfixes (control port, linux seccomp2 sandbox, backport from 0.3.2.5-alpha):
+ - Avoid a crash when attempting to use the seccomp2 sandbox together
+ with the OwningControllerProcess feature. Fixes bug 24198; bugfix
+ on 0.2.5.1-alpha.
+
+ o Minor bugfixes (denial-of-service, backport from 0.3.3.3-alpha):
+ - Fix a possible crash on malformed consensus. If a consensus had
+ contained an unparseable protocol line, it could have made clients
+ and relays crash with a null-pointer exception. To exploit this
+ issue, however, an attacker would need to be able to subvert the
+ directory authority system. Fixes bug 25251; bugfix on
+ 0.2.9.4-alpha. Also tracked as TROVE-2018-004.
+
+ o Minor bugfixes (directory cache, backport from 0.3.2.5-alpha):
+ - Recover better from empty or corrupt files in the consensus cache
+ directory. Fixes bug 24099; bugfix on 0.3.1.1-alpha.
+ - When a consensus diff calculation is only partially successful,
+ only record the successful parts as having succeeded. Partial
+ success can happen if (for example) one compression method fails
+ but the others succeed. Previously we misrecorded all the
+ calculations as having succeeded, which would later cause a
+ nonfatal assertion failure. Fixes bug 24086; bugfix
+ on 0.3.1.1-alpha.
+
+ o Minor bugfixes (entry guards, backport from 0.3.2.3-alpha):
+ - Tor now updates its guard state when it reads a consensus
+ regardless of whether it's missing descriptors. That makes tor use
+ its primary guards to fetch descriptors in some edge cases where
+ it would previously have used fallback directories. Fixes bug
+ 23862; bugfix on 0.3.0.1-alpha.
+
+ o Minor bugfixes (logging, backport from 0.3.3.2-alpha):
+ - Don't treat inability to store a cached consensus object as a bug:
+ it can happen normally when we are out of disk space. Fixes bug
+ 24859; bugfix on 0.3.1.1-alpha.
+
+ o Minor bugfixes (memory usage, backport from 0.3.2.8-rc):
+ - When queuing DESTROY cells on a channel, only queue the circuit-id
+ and reason fields: not the entire 514-byte cell. This fix should
+ help mitigate any bugs or attacks that fill up these queues, and
+ free more RAM for other uses. Fixes bug 24666; bugfix
+ on 0.2.5.1-alpha.
+
+ o Minor bugfixes (network layer, backport from 0.3.2.5-alpha):
+ - When closing a connection via close_connection_immediately(), we
+ mark it as "not blocked on bandwidth", to prevent later calls from
+ trying to unblock it, and give it permission to read. This fixes a
+ backtrace warning that can happen on relays under various
+ circumstances. Fixes bug 24167; bugfix on 0.1.0.1-rc.
+
+ o Minor bugfixes (path selection, backport from 0.3.2.4-alpha):
+ - When selecting relays by bandwidth, avoid a rounding error that
+ could sometimes cause load to be imbalanced incorrectly.
+ Previously, we would always round upwards; now, we round towards
+ the nearest integer. This had the biggest effect when a relay's
+ weight adjustments should have given it weight 0, but it got
+ weight 1 instead. Fixes bug 23318; bugfix on 0.2.4.3-alpha.
+ - When calculating the fraction of nodes that have descriptors, and
+ all nodes in the network have zero bandwidths, count the number of
+ nodes instead. Fixes bug 23318; bugfix on 0.2.4.10-alpha.
+ - Actually log the total bandwidth in compute_weighted_bandwidths().
+ Fixes bug 24170; bugfix on 0.2.4.3-alpha.
+
+ o Minor bugfixes (performance, fragile-hardening, backport from 0.3.3.1-alpha):
+ - Improve the performance of our consensus-diff application code
+ when Tor is built with the --enable-fragile-hardening option set.
+ Fixes bug 24826; bugfix on 0.3.1.1-alpha.
+
+ o Minor bugfixes (OSX, backport from 0.3.3.1-alpha):
+ - Don't exit the Tor process if setrlimit() fails to change the file
+ limit (which can happen sometimes on some versions of OSX). Fixes
+ bug 21074; bugfix on 0.0.9pre5.
+
+ o Minor bugfixes (portability, msvc, backport from 0.3.2.9):
+ - Fix a bug in the bit-counting parts of our timing-wheel code on
+ MSVC. (Note that MSVC is still not a supported build platform, due
+ to cyptographic timing channel risks.) Fixes bug 24633; bugfix
+ on 0.2.9.1-alpha.
+
+ o Minor bugfixes (relay, partial backport):
+ - Make the internal channel_is_client() function look at what sort
+ of connection handshake the other side used, rather than whether
+ the other side ever sent a create_fast cell to us. Backports part
+ of the fixes from bugs 22805 and 24898.
+
+ o Minor bugfixes (spec conformance, backport from 0.3.3.3-alpha):
+ - Forbid "-0" as a protocol version. Fixes part of bug 25249; bugfix on
+ 0.2.9.4-alpha.
+ - Forbid UINT32_MAX as a protocol version. Fixes part of bug 25249;
+ bugfix on 0.2.9.4-alpha.
+
+ o Code simplification and refactoring (backport from 0.3.3.3-alpha):
+ - Update the "rust dependencies" submodule to be a project-level
+ repository, rather than a user repository. Closes ticket 25323.
+
+
+Changes in version 0.2.9.15 - 2018-03-03
+ Tor 0.2.9.15 backports important security and stability bugfixes from
+ later Tor releases.
+
+ It includes an important security fix for a remote crash attack
+ against directory authorities, tracked as TROVE-2018-001.
+
+ This release also backports our new system for improved resistance to
+ denial-of-service attacks against relays.
+
+ This release also fixes several minor bugs and annoyances from
+ earlier releases.
+
+ All directory authorities should upgrade to one of the versions
+ released today. Relays running 0.2.9.x may wish to update to one of
+ the versions released today, for the DoS mitigations.
+
+ o Major bugfixes (denial-of-service, directory authority, backport from 0.3.3.3-alpha):
+ - Fix a protocol-list handling bug that could be used to remotely crash
+ directory authorities with a null-pointer exception. Fixes bug 25074;
+ bugfix on 0.2.9.4-alpha. Also tracked as TROVE-2018-001 and
+ CVE-2018-0490.
+
+ o Major features (denial-of-service mitigation):
+ - Give relays some defenses against the recent network overload. We
+ start with three defenses (default parameters in parentheses).
+ First: if a single client address makes too many concurrent
+ connections (>100), hang up on further connections. Second: if a
+ single client address makes circuits too quickly (more than 3 per
+ second, with an allowed burst of 90) while also having too many
+ connections open (3), refuse new create cells for the next while
+ (1-2 hours). Third: if a client asks to establish a rendezvous
+ point to you directly, ignore the request. These defenses can be
+ manually controlled by new torrc options, but relays will also
+ take guidance from consensus parameters, so there's no need to
+ configure anything manually. Implements ticket 24902.
+
+ o Major bugfixes (bootstrapping):
+ - Fetch descriptors aggressively whenever we lack enough to build
+ circuits, regardless of how many descriptors we are missing.
+ Previously, we would delay launching the fetch when we had fewer
+ than 15 missing descriptors, even if some of those descriptors
+ were blocking circuits from building. Fixes bug 23985; bugfix on
+ 0.1.1.11-alpha. The effects of this bug became worse in
+ 0.3.0.3-alpha, when we began treating missing descriptors from our
+ primary guards as a reason to delay circuits.
+
+ o Major bugfixes (onion services, retry behavior):
+ - Fix an "off by 2" error in counting rendezvous failures on the
+ onion service side. While we thought we would stop the rendezvous
+ attempt after one failed circuit, we were actually making three
+ circuit attempts before giving up. Now switch to a default of 2,
+ and allow the consensus parameter "hs_service_max_rdv_failures" to
+ override. Fixes bug 24895; bugfix on 0.0.6.
+
+ o Minor feature (relay statistics):
+ - Change relay bandwidth reporting stats interval from 4 hours to 24
+ hours in order to reduce the efficiency of guard discovery
+ attacks. Fixes ticket 23856.
+
+ o Minor features (compatibility, OpenSSL):
+ - Tor will now support TLS1.3 once OpenSSL 1.1.1 is released.
+ Previous versions of Tor would not have worked with OpenSSL 1.1.1,
+ since they neither disabled TLS 1.3 nor enabled any of the
+ ciphersuites it requires. Now we enable the TLS 1.3 ciphersuites.
+ Closes ticket 24978.
+
+ o Minor features (denial-of-service avoidance):
+ - Make our OOM handler aware of the geoip client history cache so it
+ doesn't fill up the memory. This check is important for IPv6 and
+ our DoS mitigation subsystem. Closes ticket 25122.
+
+ o Minor features (fallback directory mirrors):
+ - The fallback directory list has been re-generated based on the
+ current status of the network. Tor uses fallback directories to
+ bootstrap when it doesn't yet have up-to-date directory
+ information. Closes ticket 24801.
+ - Make the default DirAuthorityFallbackRate 0.1, so that clients
+ prefer to bootstrap from fallback directory mirrors. This is a
+ follow-up to 24679, which removed weights from the default
+ fallbacks. Implements ticket 24681.
+
+ o Minor features (geoip):
+ - Update geoip and geoip6 to the February 7 2018 Maxmind GeoLite2
+ Country database.
+
+ o Minor features (linux seccomp2 sandbox):
+ - Update the sandbox rules so that they should now work correctly
+ with Glibc 2.26. Closes ticket 24315.
+
+ o Minor bugfix (channel connection):
+ - Use the actual observed address of an incoming relay connection,
+ not the canonical address of the relay from its descriptor, when
+ making decisions about how to handle the incoming connection.
+ Fixes bug 24952; bugfix on 0.2.4.11-alpha. Patch by "ffmancera".
+
+ o Minor bugfix (directory authority):
+ - Directory authorities, when refusing a descriptor from a rejected
+ relay, now explicitly tell the relay (in its logs) to set a valid
+ ContactInfo address and contact the bad-relays@ mailing list.
+ Fixes bug 25170; bugfix on 0.2.9.1.
+
+ o Minor bugfixes (address selection):
+ - When the fascist_firewall_choose_address_ functions don't find a
+ reachable address, set the returned address to the null address
+ and port. This is a precautionary measure, because some callers do
+ not check the return value. Fixes bug 24736; bugfix
+ on 0.2.8.2-alpha.
+
+ o Minor bugfixes (compilation):
+ - Fix a signed/unsigned comparison warning introduced by our fix to
+ TROVE-2017-009. Fixes bug 24480; bugfix on 0.2.5.16.
+
+ o Minor bugfixes (control port, linux seccomp2 sandbox):
+ - Avoid a crash when attempting to use the seccomp2 sandbox together
+ with the OwningControllerProcess feature. Fixes bug 24198; bugfix
+ on 0.2.5.1-alpha.
+
+ o Minor bugfixes (denial-of-service, backport from 0.3.3.3-alpha):
+ - Fix a possible crash on malformed consensus. If a consensus had
+ contained an unparseable protocol line, it could have made clients
+ and relays crash with a null-pointer exception. To exploit this
+ issue, however, an attacker would need to be able to subvert the
+ directory authority system. Fixes bug 25251; bugfix on
+ 0.2.9.4-alpha. Also tracked as TROVE-2018-004.
+
+ o Minor bugfixes (memory usage):
+ - When queuing DESTROY cells on a channel, only queue the circuit-id
+ and reason fields: not the entire 514-byte cell. This fix should
+ help mitigate any bugs or attacks that fill up these queues, and
+ free more RAM for other uses. Fixes bug 24666; bugfix
+ on 0.2.5.1-alpha.
+
+ o Minor bugfixes (network layer):
+ - When closing a connection via close_connection_immediately(), we
+ mark it as "not blocked on bandwidth", to prevent later calls from
+ trying to unblock it, and give it permission to read. This fixes a
+ backtrace warning that can happen on relays under various
+ circumstances. Fixes bug 24167; bugfix on 0.1.0.1-rc.
+
+ o Minor bugfixes (OSX):
+ - Don't exit the Tor process if setrlimit() fails to change the file
+ limit (which can happen sometimes on some versions of OSX). Fixes
+ bug 21074; bugfix on 0.0.9pre5.
+
+ o Minor bugfixes (path selection):
+ - When selecting relays by bandwidth, avoid a rounding error that
+ could sometimes cause load to be imbalanced incorrectly.
+ Previously, we would always round upwards; now, we round towards
+ the nearest integer. This had the biggest effect when a relay's
+ weight adjustments should have given it weight 0, but it got
+ weight 1 instead. Fixes bug 23318; bugfix on 0.2.4.3-alpha.
+ - When calculating the fraction of nodes that have descriptors, and
+ all nodes in the network have zero bandwidths, count the number of
+ nodes instead. Fixes bug 23318; bugfix on 0.2.4.10-alpha.
+ - Actually log the total bandwidth in compute_weighted_bandwidths().
+ Fixes bug 24170; bugfix on 0.2.4.3-alpha.
+
+ o Minor bugfixes (portability, msvc):
+ - Fix a bug in the bit-counting parts of our timing-wheel code on
+ MSVC. (Note that MSVC is still not a supported build platform, due
+ to cryptographic timing channel risks.) Fixes bug 24633; bugfix
+ on 0.2.9.1-alpha.
+
+ o Minor bugfixes (relay):
+ - Make the internal channel_is_client() function look at what sort
+ of connection handshake the other side used, rather than whether
+ the other side ever sent a create_fast cell to us. Backports part
+ of the fixes from bugs 22805 and 24898.
+
+ o Minor bugfixes (spec conformance, backport from 0.3.3.3-alpha):
+ - Forbid "-0" as a protocol version. Fixes part of bug 25249; bugfix on
+ 0.2.9.4-alpha.
+ - Forbid UINT32_MAX as a protocol version. Fixes part of bug 25249;
+ bugfix on 0.2.9.4-alpha.
+
+
+Changes in version 0.3.2.10 - 2018-03-03
+ Tor 0.3.2.10 is the second stable release in the 0.3.2 series. It
+ backports a number of bugfixes, including important fixes for security
+ issues.
+
+ It includes an important security fix for a remote crash attack
+ against directory authorities, tracked as TROVE-2018-001.
+
+ Additionally, it backports a fix for a bug whose severity we have
+ upgraded: Bug 24700, which was fixed in 0.3.3.2-alpha, can be remotely
+ triggered in order to crash relays with a use-after-free pattern. As
+ such, we are now tracking that bug as TROVE-2018-002 and
+ CVE-2018-0491, and backporting it to earlier releases. This bug
+ affected versions 0.3.2.1-alpha through 0.3.2.9, as well as version
+ 0.3.3.1-alpha.
+
+ This release also backports our new system for improved resistance to
+ denial-of-service attacks against relays.
+
+ This release also fixes several minor bugs and annoyances from
+ earlier releases.
+
+ Relays running 0.3.2.x SHOULD upgrade to one of the versions released
+ today, for the fix to TROVE-2018-002. Directory authorities should
+ also upgrade. (Relays on earlier versions might want to update too for
+ the DoS mitigations.)
+
+ o Major bugfixes (denial-of-service, directory authority, backport from 0.3.3.3-alpha):
+ - Fix a protocol-list handling bug that could be used to remotely crash
+ directory authorities with a null-pointer exception. Fixes bug 25074;
+ bugfix on 0.2.9.4-alpha. Also tracked as TROVE-2018-001 and
+ CVE-2018-0490.
+
+ o Major bugfixes (scheduler, KIST, denial-of-service, backport from 0.3.3.2-alpha):
+ - Avoid adding the same channel twice in the KIST scheduler pending
+ list, which could lead to remote denial-of-service use-after-free
+ attacks against relays. Fixes bug 24700; bugfix on 0.3.2.1-alpha.
+
+ o Major features (denial-of-service mitigation, backport from 0.3.3.2-alpha):
+ - Give relays some defenses against the recent network overload. We
+ start with three defenses (default parameters in parentheses).
+ First: if a single client address makes too many concurrent
+ connections (>100), hang up on further connections. Second: if a
+ single client address makes circuits too quickly (more than 3 per
+ second, with an allowed burst of 90) while also having too many
+ connections open (3), refuse new create cells for the next while
+ (1-2 hours). Third: if a client asks to establish a rendezvous
+ point to you directly, ignore the request. These defenses can be
+ manually controlled by new torrc options, but relays will also
+ take guidance from consensus parameters, so there's no need to
+ configure anything manually. Implements ticket 24902.
+
+ o Major bugfixes (onion services, retry behavior, backport from 0.3.3.1-alpha):
+ - Fix an "off by 2" error in counting rendezvous failures on the
+ onion service side. While we thought we would stop the rendezvous
+ attempt after one failed circuit, we were actually making three
+ circuit attempts before giving up. Now switch to a default of 2,
+ and allow the consensus parameter "hs_service_max_rdv_failures" to
+ override. Fixes bug 24895; bugfix on 0.0.6.
+ - New-style (v3) onion services now obey the "max rendezvous circuit
+ attempts" logic. Previously they would make as many rendezvous
+ circuit attempts as they could fit in the MAX_REND_TIMEOUT second
+ window before giving up. Fixes bug 24894; bugfix on 0.3.2.1-alpha.
+
+ o Major bugfixes (protocol versions, backport from 0.3.3.2-alpha):
+ - Add Link protocol version 5 to the supported protocols list. Fixes
+ bug 25070; bugfix on 0.3.1.1-alpha.
+
+ o Major bugfixes (relay, backport from 0.3.3.1-alpha):
+ - Fix a set of false positives where relays would consider
+ connections to other relays as being client-only connections (and
+ thus e.g. deserving different link padding schemes) if those
+ relays fell out of the consensus briefly. Now we look only at the
+ initial handshake and whether the connection authenticated as a
+ relay. Fixes bug 24898; bugfix on 0.3.1.1-alpha.
+
+ o Major bugfixes (scheduler, consensus, backport from 0.3.3.2-alpha):
+ - The scheduler subsystem was failing to promptly notice changes in
+ consensus parameters, making it harder to switch schedulers
+ network-wide. Fixes bug 24975; bugfix on 0.3.2.1-alpha.
+
+ o Minor features (denial-of-service avoidance, backport from 0.3.3.2-alpha):
+ - Make our OOM handler aware of the geoip client history cache so it
+ doesn't fill up the memory. This check is important for IPv6 and
+ our DoS mitigation subsystem. Closes ticket 25122.
+
+ o Minor features (compatibility, OpenSSL, backport from 0.3.3.3-alpha):
+ - Tor will now support TLS1.3 once OpenSSL 1.1.1 is released.
+ Previous versions of Tor would not have worked with OpenSSL 1.1.1,
+ since they neither disabled TLS 1.3 nor enabled any of the
+ ciphersuites it requires. Now we enable the TLS 1.3 ciphersuites.
+ Closes ticket 24978.
+
+ o Minor features (geoip):
+ - Update geoip and geoip6 to the February 7 2018 Maxmind GeoLite2
+ Country database.
+
+ o Minor features (logging, diagnostic, backport from 0.3.3.2-alpha):
+ - When logging a failure to create an onion service's descriptor,
+ also log what the problem with the descriptor was. Diagnostic
+ for ticket 24972.
+
+ o Minor bugfix (channel connection, backport from 0.3.3.2-alpha):
+ - Use the actual observed address of an incoming relay connection,
+ not the canonical address of the relay from its descriptor, when
+ making decisions about how to handle the incoming connection.
+ Fixes bug 24952; bugfix on 0.2.4.11-alpha. Patch by "ffmancera".
+
+ o Minor bugfixes (denial-of-service, backport from 0.3.3.3-alpha):
+ - Fix a possible crash on malformed consensus. If a consensus had
+ contained an unparseable protocol line, it could have made clients
+ and relays crash with a null-pointer exception. To exploit this
+ issue, however, an attacker would need to be able to subvert the
+ directory authority system. Fixes bug 25251; bugfix on
+ 0.2.9.4-alpha. Also tracked as TROVE-2018-004.
+
+ o Minor bugfix (directory authority, backport from 0.3.3.2-alpha):
+ - Directory authorities, when refusing a descriptor from a rejected
+ relay, now explicitly tell the relay (in its logs) to set a valid
+ ContactInfo address and contact the bad-relays@ mailing list.
+ Fixes bug 25170; bugfix on 0.2.9.1.
+
+ o Minor bugfixes (build, rust, backport from 0.3.3.1-alpha):
+ - When building with Rust on OSX, link against libresolv, to work
+ around the issue at https://github.com/rust-lang/rust/issues/46797.
+ Fixes bug 24652; bugfix on 0.3.1.1-alpha.
+
+ o Minor bugfixes (onion services, backport from 0.3.3.2-alpha):
+ - Remove a BUG() statement when a client fetches an onion descriptor
+ that has a lower revision counter than the one in its cache. This
+ can happen in normal circumstances due to HSDir desync. Fixes bug
+ 24976; bugfix on 0.3.2.1-alpha.
+
+ o Minor bugfixes (logging, backport from 0.3.3.2-alpha):
+ - Don't treat inability to store a cached consensus object as a bug:
+ it can happen normally when we are out of disk space. Fixes bug
+ 24859; bugfix on 0.3.1.1-alpha.
+
+ o Minor bugfixes (performance, fragile-hardening, backport from 0.3.3.1-alpha):
+ - Improve the performance of our consensus-diff application code
+ when Tor is built with the --enable-fragile-hardening option set.
+ Fixes bug 24826; bugfix on 0.3.1.1-alpha.
+
+ o Minor bugfixes (OSX, backport from 0.3.3.1-alpha):
+ - Don't exit the Tor process if setrlimit() fails to change the file
+ limit (which can happen sometimes on some versions of OSX). Fixes
+ bug 21074; bugfix on 0.0.9pre5.
+
+ o Minor bugfixes (spec conformance, backport from 0.3.3.3-alpha):
+ - Forbid "-0" as a protocol version. Fixes part of bug 25249; bugfix on
+ 0.2.9.4-alpha.
+ - Forbid UINT32_MAX as a protocol version. Fixes part of bug 25249;
+ bugfix on 0.2.9.4-alpha.
+
+ o Minor bugfixes (testing, backport from 0.3.3.1-alpha):
+ - Fix a memory leak in the scheduler/loop_kist unit test. Fixes bug
+ 25005; bugfix on 0.3.2.7-rc.
+
+ o Minor bugfixes (v3 onion services, backport from 0.3.3.2-alpha):
+ - Look at the "HSRend" protocol version, not the "HSDir" protocol
+ version, when deciding whether a consensus entry can support the
+ v3 onion service protocol as a rendezvous point. Fixes bug 25105;
+ bugfix on 0.3.2.1-alpha.
+
+ o Code simplification and refactoring (backport from 0.3.3.3-alpha):
+ - Update the "rust dependencies" submodule to be a project-level
+ repository, rather than a user repository. Closes ticket 25323.
+
+ o Documentation (backport from 0.3.3.1-alpha)
+ - Document that operators who run more than one relay or bridge are
+ expected to set MyFamily and ContactInfo correctly. Closes
+ ticket 24526.
+
Changes in version 0.3.2.9 - 2018-01-09
Tor 0.3.2.9 is the first stable release in the 0.3.2 series.
@@ -11148,7 +13110,7 @@ Changes in version 0.2.1.31 - 2011-10-26
circuit EXTEND request. Now relays can protect clients from the
CVE-2011-2768 issue even if the clients haven't upgraded yet.
- Bridges now refuse CREATE or CREATE_FAST cells on OR connections
- that they initiated. Relays could distinguish incoming bridge
+ that they initiated. Relays could distinguish incoming bridge
connections from client connections, creating another avenue for
enumerating bridges. Fixes CVE-2011-2769. Bugfix on 0.2.0.3-alpha.
Found by "frosty_un".
@@ -17767,4 +19729,3 @@ Changes in version 0.0.2pre13 - 2003-10-19
- If --DebugLogFile is specified, log to it at -l debug
- If --LogFile is specified, use it instead of commandline
- If --RunAsDaemon is set, tor forks and backgrounds on startup
-
diff --git a/changes/25857 b/changes/25857
deleted file mode 100644
index e457af2f82..0000000000
--- a/changes/25857
+++ /dev/null
@@ -1,3 +0,0 @@
- o Documentation:
- - Correct an IPv6 error in the documentation for ExitPolicy.
- Closes ticket 25857. Patch from "CTassisF".
diff --git a/changes/27286 b/changes/27286
deleted file mode 100644
index 5f5f7a4ae7..0000000000
--- a/changes/27286
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor features (directory authorities):
- - Authorities no longer vote to make the subprotocol version "LinkAuth=1"
- a requirement: it is unsupportable with NSS, and hasn't been needed
- since Tor 0.3.0.1-alpha. Closes ticket 27286.
diff --git a/changes/TROVE-2018-005 b/changes/TROVE-2018-005
deleted file mode 100644
index 769c653f43..0000000000
--- a/changes/TROVE-2018-005
+++ /dev/null
@@ -1,6 +0,0 @@
- o Major bugfixes (security, directory authority, denial-of-service):
- - Fix a bug that could have allowed an attacker to force a
- directory authority to use up all its RAM by passing it a
- maliciously crafted protocol versions string. Fixes bug 25517;
- bugfix on 0.2.9.4-alpha. This issue is also tracked as
- TROVE-2018-005.
diff --git a/changes/bug20424_029_minimal b/changes/bug20424_029_minimal
deleted file mode 100644
index eb7886233e..0000000000
--- a/changes/bug20424_029_minimal
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor bugfixes (compilation):
- - When compiling with --enable-openbsd-malloc or --enable-tcmalloc, tell
- the compiler not to include the system malloc implementation. Fixes bug
- 20424; bugfix on 0.2.0.20-rc.
diff --git a/changes/bug21394.2 b/changes/bug21394.2
deleted file mode 100644
index b580d2a786..0000000000
--- a/changes/bug21394.2
+++ /dev/null
@@ -1,7 +0,0 @@
- o Minor bugfix (Exit node DNS retries):
- - Re-attempt timed-out DNS queries 3 times before failure, since our
- timeout is 5 seconds for them, but clients wait 10-15. Also allow
- slightly more timeouts per resolver before giving up on it in the
- case where an exit has multiple resolvers configured. Fixes bug 21394;
- bugfix on 0.3.1.9.
-
diff --git a/changes/bug22310 b/changes/bug22310
deleted file mode 100644
index c8017daffe..0000000000
--- a/changes/bug22310
+++ /dev/null
@@ -1,8 +0,0 @@
- o Major bugfixes (performance, load balancing):
- - Directory authorities no longer vote in favor of the Guard flag
- for relays that don't advertise directory support. Starting in Tor
- 0.3.0.1-alpha, Tor clients have been avoiding using such relays in
- the Guard position, leading to increasingly broken load balancing
- for the 5%-or-so of Guards that don't advertise directory support.
- Fixes bug 22310; bugfix on 0.3.0.6.
-
diff --git a/changes/bug23693.1 b/changes/bug23693.1
deleted file mode 100644
index 4b16788814..0000000000
--- a/changes/bug23693.1
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor bugfixes (relay, crash):
- - Avoid a crash when running with DirPort set but ORPort tuned off.
- Fixes a case of bug 23693; bugfix on 0.3.1.1-alpha.
-
diff --git a/changes/bug24031 b/changes/bug24031
deleted file mode 100644
index 2bb0e83091..0000000000
--- a/changes/bug24031
+++ /dev/null
@@ -1,13 +0,0 @@
- o Major bugfixes (protover, voting):
- - Revise Rust implementation of protover to use a more memory-efficient
- voting algorithm and corresponding data structures, thus avoiding a
- potential (but small impact) DoS attack where specially crafted protocol
- strings would expand to several potential megabytes in memory. In the
- process, several portions of code were revised to be methods on new,
- custom types, rather than functions taking interchangeable types, thus
- increasing type safety of the module. Custom error types and handling
- were added as well, in order to facilitate better error dismissal/handling
- in outside crates and avoid mistakenly passing an internal error string to
- C over the FFI boundary. Many tests were added, and some previous
- differences between the C and Rust implementations have been
- remedied. Fixes bug 24031; bugfix on 0.3.3.1-alpha.
diff --git a/changes/bug24104 b/changes/bug24104
deleted file mode 100644
index ca2a3537fa..0000000000
--- a/changes/bug24104
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor bugfix (relay statistics):
- - Update relay descriptor on bandwidth changes only when the uptime is
- smaller than 24h in order to reduce the efficiency of guard discovery
- attacks. Fixes bug 24104; bugfix on 0.1.1.6-alpha.
diff --git a/changes/bug24767 b/changes/bug24767
deleted file mode 100644
index 56fbe51a98..0000000000
--- a/changes/bug24767
+++ /dev/null
@@ -1,5 +0,0 @@
- o Major bugfixes (relay, connection):
- - Refuse to connect again to a relay from which we failed previously with
- a connection refused, timeout or error (at the TCP level). The relay
- won't be retried for 60 seconds after the failure occured. Fixes bug
- 24767; bugfix on 0.0.6.
diff --git a/changes/bug24769 b/changes/bug24769
deleted file mode 100644
index 2893e0ff07..0000000000
--- a/changes/bug24769
+++ /dev/null
@@ -1,7 +0,0 @@
- o Minor bugfixes (performance):
- - Reduce the number of circuits that can be opened at once during the
- circuit build timeout phase. This is done by increasing the idle timeout
- to 3 minutes, and lowering the maximum number of concurrent learning
- circuits to 10. Fixes bug 24769; bugfix on 0.3.1.1-alpha.
-
-
diff --git a/changes/bug24782 b/changes/bug24782
deleted file mode 100644
index 59bbdad123..0000000000
--- a/changes/bug24782
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor features (config options):
- - Change the way the default value for MaxMemInQueues is calculated. We now
- use 0.4 * RAM if the system have 8 GB RAM or more, otherwise we use the
- former value of 0.75 * RAM. Closes ticket 24782.
diff --git a/changes/bug24854 b/changes/bug24854
deleted file mode 100644
index 64e10772e0..0000000000
--- a/changes/bug24854
+++ /dev/null
@@ -1,3 +0,0 @@
- o Code simplification and refactoring:
- - Move the list of default directory authorities to their own file for
- inclusion using the C preprocessor. Closes ticket 24854. Patch by "beastr0".
diff --git a/changes/bug24903 b/changes/bug24903
deleted file mode 100644
index 01c9b53f23..0000000000
--- a/changes/bug24903
+++ /dev/null
@@ -1,5 +0,0 @@
- o Minor bugfixes (controller, reliability):
- - Avoid a (nonfatal) assertion failure when extending a one-hop circuit
- from the controller to become a multihop circuit. Fixes bug 24903;
- bugfix on 0.2.5.2-alpha.
-
diff --git a/changes/bug24904 b/changes/bug24904
deleted file mode 100644
index 648d9a5834..0000000000
--- a/changes/bug24904
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor bugfix (channel, client):
- - Better identify client connection when reporting to the geoip client
- cache. Fixes bug 24904; bugfix on 0.3.1.7.
-
diff --git a/changes/bug24969 b/changes/bug24969
deleted file mode 100644
index 46b2bae6f4..0000000000
--- a/changes/bug24969
+++ /dev/null
@@ -1,3 +0,0 @@
- o Minor bugfixes (Linux seccomp2 sandbox):
- - Allow the nanosleep() system call, which glibc uses to implement
- sleep() and usleep(). Fixes bug 24969; bugfix on 0.2.5.1-alpha.
diff --git a/changes/bug24978 b/changes/bug24978
deleted file mode 100644
index 5dc45c7442..0000000000
--- a/changes/bug24978
+++ /dev/null
@@ -1,7 +0,0 @@
- o Minor features (compatibility, OpenSSL):
- - Tor will now support TLS1.3 once OpenSSL 1.1.1 is released.
- Previous versions of Tor would not have worked with OpenSSL
- 1.1.1, since they neither disabled TLS 1.3 nor enabled any of the
- ciphersuites it requires. Here we enable the TLS 1.3 ciphersuites.
- Closes ticket 24978.
-
diff --git a/changes/bug24989 b/changes/bug24989
deleted file mode 100644
index a0ea6acf03..0000000000
--- a/changes/bug24989
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor bugfixes (hidden services):
- - Re-instate counting pending client HSDir fetch circuits against the
- MaxClientCircuitsPending rate limit. Fixes bug 24989; bugfix on
- 0.3.3.0-alpha-dev.
diff --git a/changes/bug25120 b/changes/bug25120
deleted file mode 100644
index 7215756ef3..0000000000
--- a/changes/bug25120
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor features (logging):
- - Clarify the log messages produced when getrandom() or a related
- entropy-generation mechanism gives an error. Closes ticket
- 25120.
diff --git a/changes/bug25213 b/changes/bug25213
deleted file mode 100644
index bb196ca724..0000000000
--- a/changes/bug25213
+++ /dev/null
@@ -1,5 +0,0 @@
- o Minor bugfixes (warnings, ipv6):
- - Avoid a bug warning that could occur when trying to connect to
- a relay over IPv6 on a Tor instance that downloads router descriptors,
- but prefers to use microdescriptors. Fixes bug 25213; bugfix on
- 0.3.3.1-alpha.
diff --git a/changes/bug25223 b/changes/bug25223
deleted file mode 100644
index fdd5563500..0000000000
--- a/changes/bug25223
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor bugfixes (DoS mitigation):
- - Make sure we don't modify consensus parameters if we aren't a public
- relay when a new consensus arrives. Fixes bug 25223; bugfix on
- 0.3.3.2-alpha.
diff --git a/changes/bug25226 b/changes/bug25226
deleted file mode 100644
index b594a7a424..0000000000
--- a/changes/bug25226
+++ /dev/null
@@ -1,4 +0,0 @@
- o Major bugfixes (relay, denial of service):
- - Impose a limit on circuit cell queue size. The limit can be controlled by
- a consensus parameter. Fixes bug 25226; bugfix on 0.2.4.14-alpha.
-
diff --git a/changes/bug25249 b/changes/bug25249
deleted file mode 100644
index b4153eeaef..0000000000
--- a/changes/bug25249
+++ /dev/null
@@ -1,3 +0,0 @@
- o Minor bugfixes (spec conformance):
- - Forbid "-0" as a protocol version. Fixes part of bug 25249; bugfix on
- 0.2.9.4-alpha.
diff --git a/changes/bug25249.2 b/changes/bug25249.2
deleted file mode 100644
index 9058c11071..0000000000
--- a/changes/bug25249.2
+++ /dev/null
@@ -1,3 +0,0 @@
- o Minor bugfixes (spec conformance):
- - Forbid UINT32_MAX as a protocol version. Fixes part of bug 25249;
- bugfix on 0.2.9.4-alpha.
diff --git a/changes/bug25296_032 b/changes/bug25296_032
deleted file mode 100644
index f60048ca66..0000000000
--- a/changes/bug25296_032
+++ /dev/null
@@ -1,5 +0,0 @@
- o Minor bugfixes (documentation):
- - Document that the PerConnBW{Rate,Burst} options will fall back to their
- corresponding consensus parameters only if those parameters are
- set. Previously we had claimed that these values would always be
- set in the consensus. Fixes bug 25296; bugfix on 0.2.2.7-alpha.
diff --git a/changes/bug25306 b/changes/bug25306
deleted file mode 100644
index a2e6306f42..0000000000
--- a/changes/bug25306
+++ /dev/null
@@ -1,6 +0,0 @@
- o Minor bugfixes (hidden service v3):
- - Avoid asserting when building descriptors in the next rotation time is
- out of sync with the consensus valid after time. Instead, log a bug
- warning with extra information to hunt down the cause of this assert.
- Fixes bug 25306; bugfix on 0.3.2.1-alpha.
-
diff --git a/changes/bug25372 b/changes/bug25372
deleted file mode 100644
index 4cceab3a45..0000000000
--- a/changes/bug25372
+++ /dev/null
@@ -1,3 +0,0 @@
- o Minor features (log messages):
- - Improve log message in the out of memory handler to include information
- about memory usage from the different compression backends. Closes ticket 25372.
diff --git a/changes/bug25378 b/changes/bug25378
deleted file mode 100644
index 4648a0a313..0000000000
--- a/changes/bug25378
+++ /dev/null
@@ -1,4 +0,0 @@
- o Documentation:
- - Update the documentation for "Log" to include the current list
- of logging domains. Closes ticket 25378.
-
diff --git a/changes/bug25415 b/changes/bug25415
deleted file mode 100644
index ec851aee8d..0000000000
--- a/changes/bug25415
+++ /dev/null
@@ -1,4 +0,0 @@
- o Major bugfixes (directory authority):
- - Avoid a crash when testing router reachability on a router that could
- have an ed25519 ID, but which does not. Fixes bug 25415; bugfix on
- 0.3.3.2-alpha.
diff --git a/changes/bug25440 b/changes/bug25440
deleted file mode 100644
index f8d9dd4fab..0000000000
--- a/changes/bug25440
+++ /dev/null
@@ -1,5 +0,0 @@
- o Minor bugfixes (linux seccomp2 sandbox):
- - Fix a bug in out sandboxing rules for the openat() syscall.
- Previously, no openat() call would be permitted, which would break
- filesystem operations on recent glibc versions. Fixes bug 25440;
- bugfix on 0.2.9.15. Diagnosis and patch from Daniel Pinto.
diff --git a/changes/bug25450 b/changes/bug25450
deleted file mode 100644
index ae14135a72..0000000000
--- a/changes/bug25450
+++ /dev/null
@@ -1,8 +0,0 @@
- o Minor bugfixes (testing):
- - Avoid intermittent test failures due to relying on hidden service
- introductory point creation within 5 seconds of real clock time. The
- time limit for the test has been increased to 500 seconds, which may
- still result in intermittent failures (e.g. if the system doing the
- testing enters sleep/hibernation or experiences some other clock jump).
- However, this should elliminate test failures currently happening on
- developer and CI systems. Fixes bug 25450; bugfix on 0.3.1.3-alpha.
diff --git a/changes/bug25474 b/changes/bug25474
deleted file mode 100644
index 7d3bd1c5f5..0000000000
--- a/changes/bug25474
+++ /dev/null
@@ -1,5 +0,0 @@
- o Minor bugfixes (compilation):
- - Fix a c99 compliance issue in our configuration script that was
- causing compilation issues when compiling Tor with certain
- versions of xtools. Fixes bug 25474; bugfix on 0.3.2.5-alpha.
-
diff --git a/changes/bug25479 b/changes/bug25479
deleted file mode 100644
index e693b8ec7a..0000000000
--- a/changes/bug25479
+++ /dev/null
@@ -1,4 +0,0 @@
- o Major bugfixes (benchmarks):
- - Fix a crash when running benchmark tests on win32 systems which
- was due to an uninitialised mutex before logging and options
- were initialised. Fixes bug 25479; bugfix on 0.3.3.3-alpha.
diff --git a/changes/bug25505 b/changes/bug25505
deleted file mode 100644
index 101c7d5246..0000000000
--- a/changes/bug25505
+++ /dev/null
@@ -1,3 +0,0 @@
- o Minor bugfixes (netflow padding):
- - Ensure circuitmux queues are empty before scheduling or sending padding.
- Fixes bug 25505; bugfix on 0.3.1.1-alpha.
diff --git a/changes/bug25512 b/changes/bug25512
deleted file mode 100644
index 4b6491867e..0000000000
--- a/changes/bug25512
+++ /dev/null
@@ -1,5 +0,0 @@
- o Minor bugfixes (restart-in-process):
- - When shutting down, Tor now clears all the flags in the control.c
- module. This should prevent a bug where authentication cookies
- are not generated on restart. Fixes bug 25512; bugfix on 0.3.3.1-alpha.
-
diff --git a/changes/bug25560 b/changes/bug25560
deleted file mode 100644
index 5947fa03a3..0000000000
--- a/changes/bug25560
+++ /dev/null
@@ -1,5 +0,0 @@
- o Minor bugfixes (testing, rust):
- - Some of our Rust crates were not having their tests run with `make
- test-rust` due to a static string in the `src/test/test_rust.sh` script
- specifying which crates to test. Rust crates are not automatically
- detected and tested. Fixes bug 25560; bugfix on 0.3.3.3-alpha.
diff --git a/changes/bug25581 b/changes/bug25581
deleted file mode 100644
index 86f2491db7..0000000000
--- a/changes/bug25581
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor bugfixes (configuration):
- - Remove undescores from the _HSLayer{2,3}Nodes options. This expert-user
- configuration can now be enabled as HSLayer{2,3}Nodes. Fixes bug 25581;
- bugfix on 0.3.3.1-alpha
diff --git a/changes/bug25582 b/changes/bug25582
deleted file mode 100644
index 609b94aac6..0000000000
--- a/changes/bug25582
+++ /dev/null
@@ -1,3 +0,0 @@
- o Minor bugfixes (documentation):
- - Revert a misformatting issue in the ExitPolicy
- documentation. Fixes bug 25582; bugfix on 0.3.3.1-alpha.
diff --git a/changes/bug25617 b/changes/bug25617
deleted file mode 100644
index 5de655d69e..0000000000
--- a/changes/bug25617
+++ /dev/null
@@ -1,5 +0,0 @@
- o Minor bugfixes (controller):
- - Restore the correct operation of the RESOLVE command, which had
- been broken since we added the ability to enable/disable DNS
- on specific listener ports. Fixes bug 25617; bugfix on 0.2.9.3-alpha.
-
diff --git a/changes/bug25629 b/changes/bug25629
deleted file mode 100644
index 190928a941..0000000000
--- a/changes/bug25629
+++ /dev/null
@@ -1,3 +0,0 @@
- o Minor bugfixes (C correctness):
- - Fix a very unlikely null pointer dereference. Fixes bug 25629;
- bugfix on 0.2.9.15. Found by Coverity; this is CID 1430932.
diff --git a/changes/bug25664 b/changes/bug25664
deleted file mode 100644
index c8b3ca6187..0000000000
--- a/changes/bug25664
+++ /dev/null
@@ -1,3 +0,0 @@
- o New system requirements:
- - When built with Rust, Tor now depends on version 0.2.39 of the libc
- crate. Closes tickets 25310 and 25664.
diff --git a/changes/bug25679 b/changes/bug25679
deleted file mode 100644
index 9247a29153..0000000000
--- a/changes/bug25679
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor bugfixes (compilation, rust):
- - Build correctly when the rust dependencies submodule is loaded,
- but the TOR_RUST_DEPENDENCIES environment variable is not set.
- Fixes bug 25679; bugfix on 0.3.3.1-alpha.
diff --git a/changes/bug25686_diagnostic b/changes/bug25686_diagnostic
deleted file mode 100644
index 96323145d8..0000000000
--- a/changes/bug25686_diagnostic
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor features (relay, diagnostic):
- - Add several checks to detect whether Tor relays are uploading their
- descriptors without specifying why they regenerated. Diagnostic for
- ticket 25686.
diff --git a/changes/bug25691 b/changes/bug25691
deleted file mode 100644
index 5f630d5032..0000000000
--- a/changes/bug25691
+++ /dev/null
@@ -1,6 +0,0 @@
- o Minor bugfixes (client):
- - When using a listed relay as a bridge, and also using
- microdescriptors, and considering that relay as a non-bridge in
- a circuit, consider its microdescriptor as a valid source of information
- about that relay. Fixes bug 25691; bugfix on 0.3.3.4-alpha.
-
diff --git a/changes/bug25691_again b/changes/bug25691_again
deleted file mode 100644
index 3d0d91bfd3..0000000000
--- a/changes/bug25691_again
+++ /dev/null
@@ -1,6 +0,0 @@
- o Minor bugfixes (path selection):
- - Only select relays when they have the descriptors we prefer to
- use for them. This change fixes a bug where we could select
- a relay because it had _some_ descriptor, but reject it later with
- a nonfatal assertion error because it didn't have the exact one we
- wanted. Fixes bugs 25691 and 25692; bugfix on 0.3.3.4-alpha.
diff --git a/changes/bug25705 b/changes/bug25705
deleted file mode 100644
index 360d96d4c6..0000000000
--- a/changes/bug25705
+++ /dev/null
@@ -1,5 +0,0 @@
- o Minor bugfixes (circuit path selection):
- - Don't count path selection failures as circuit build failures. This
- should eliminate cases where Tor blames its guard or the network
- for situations like insufficient microdescriptors and/or overly
- restrictive torrc settings. Fixes bug 25705; bugfix on 0.3.3.1-alpha.
diff --git a/changes/bug25732 b/changes/bug25732
deleted file mode 100644
index 49ffae29e5..0000000000
--- a/changes/bug25732
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor bugfixes (distribution, compilation):
- - Actually include all of our Rust source in our source
- distributions. (Previously, a few of the files were accidentally
- omitted.) Fixes bug 25732; bugfix on 0.3.3.2-alpha.
diff --git a/changes/bug25733 b/changes/bug25733
deleted file mode 100644
index 775c1ae00e..0000000000
--- a/changes/bug25733
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor bugfixes (Assert crash):
- - Avoid an assert in the circuit build timeout code if we fail to
- allow any circuits to actually complete. Fixes bug 25733;
- bugfix on 0.2.2.2-alpha.
diff --git a/changes/bug25761 b/changes/bug25761
deleted file mode 100644
index 096fadcf09..0000000000
--- a/changes/bug25761
+++ /dev/null
@@ -1,3 +0,0 @@
- o Major bugfixes (onion service):
- - Correctly detect when onion services get disabled after HUP.
- Fixes bug 25761; bugfix on 0.3.2.1.
diff --git a/changes/bug25901 b/changes/bug25901
deleted file mode 100644
index 3ad30c7676..0000000000
--- a/changes/bug25901
+++ /dev/null
@@ -1,3 +0,0 @@
- o Minor bugfixes (hidden service v3):
- - Fix a memory leak when an hidden service v3 is configured and gets a
- SIGHUP signal. Fixes bug 25901; bugfix on 0.3.2.1-alpha.
diff --git a/changes/bug26007 b/changes/bug26007
deleted file mode 100644
index efcd15084d..0000000000
--- a/changes/bug26007
+++ /dev/null
@@ -1,5 +0,0 @@
- o Major bugfixes (directory authorities, security):
- - When directory authorities read a zero-byte bandwidth file, they log
- a warning with the contents of an uninitialised buffer. Log a warning
- about the empty file instead.
- Fixes bug 26007; bugfix on 0.2.2.1-alpha.
diff --git a/changes/bug26052 b/changes/bug26052
deleted file mode 100644
index 4721933fa5..0000000000
--- a/changes/bug26052
+++ /dev/null
@@ -1,6 +0,0 @@
- o Minor bugfixes (documentation):
- - Stop saying in the manual that clients cache ipv4 dns answers
- from exit relays. We haven't used them since 0.2.6.3-alpha, and
- in ticket 24050 we stopped even caching them as of 0.3.2.6-alpha,
- but we forgot to say so in the man page. Fixes bug 26052; bugfix
- on 0.3.2.6-alpha.
diff --git a/changes/bug26069 b/changes/bug26069
deleted file mode 100644
index 192e97d782..0000000000
--- a/changes/bug26069
+++ /dev/null
@@ -1,5 +0,0 @@
- o Minor bugfixes (hidden service v3):
- - When parsing the descriptor signature, look for the token plus an extra
- white-space at the end. This is more correct but also will allow us to
- support new fields that might start with "signature". Fixes bug 26069;
- bugfix on 0.3.0.1-alpha.
diff --git a/changes/bug26072 b/changes/bug26072
deleted file mode 100644
index 2489e4fbb5..0000000000
--- a/changes/bug26072
+++ /dev/null
@@ -1,5 +0,0 @@
- o Minor bugfixes (correctness, client):
- - Upon receiving a malformed connected cell, stop processing the cell
- immediately. Previously we would mark the connection for close, but
- continue processing the cell as if the connection were open. Fixes bug
- 26072; bugfix on 0.2.4.7-alpha.
diff --git a/changes/bug26116 b/changes/bug26116
deleted file mode 100644
index 3bfde74f77..0000000000
--- a/changes/bug26116
+++ /dev/null
@@ -1,7 +0,0 @@
- o Minor bugfixes (compatibility, openssl):
- - Work around a change in OpenSSL 1.1.1 where
- return values that would previously indicate "no password" now
- indicate an empty password. Without this workaround, Tor instances
- running with OpenSSL 1.1.1 would accept descriptors that other Tor
- instances would reject. Fixes bug 26116; bugfix on 0.2.5.16.
-
diff --git a/changes/bug26121 b/changes/bug26121
deleted file mode 100644
index 5f734dd56b..0000000000
--- a/changes/bug26121
+++ /dev/null
@@ -1,6 +0,0 @@
- o Minor bugfixes (controller):
- - Improve accuracy of the BUILDTIMEOUT_SET control port event's
- TIMEOUT_RATE and CLOSE_RATE fields. (We were previously miscounting
- the total number of circuits for these field values.) Fixes bug
- 26121; bugfix on 0.3.3.1-alpha.
-
diff --git a/changes/bug26158 b/changes/bug26158
deleted file mode 100644
index 0d74cf1167..0000000000
--- a/changes/bug26158
+++ /dev/null
@@ -1,5 +0,0 @@
- o Minor bugfixes (relay):
- - Relays now correctly block attempts to re-extend to the previous
- relay by Ed25519 identity. Previously they would warn in this case,
- but not actually reject the attempt. Fixes bug 26158; bugfix on
- 0.3.0.1-alpha.
diff --git a/changes/bug26196 b/changes/bug26196
deleted file mode 100644
index 47fcffa0f8..0000000000
--- a/changes/bug26196
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor bugfixes (hardening):
- - Prevent a possible out-of-bounds smartlist read in
- protover_compute_vote(). Fixes bug 26196; bugfix on
- 0.2.9.4-alpha.
diff --git a/changes/bug26258_033 b/changes/bug26258_033
deleted file mode 100644
index ceca383335..0000000000
--- a/changes/bug26258_033
+++ /dev/null
@@ -1,4 +0,0 @@
- o Major bugfixes (rust, testing):
- - Fix a bug where a failure in the rust unit tests would not actually
- cause the build to fail. Fixes bug 26258; bugfix on 0.3.3.4-alpha.
-
diff --git a/changes/bug26269 b/changes/bug26269
deleted file mode 100644
index 73dcdbf5c5..0000000000
--- a/changes/bug26269
+++ /dev/null
@@ -1,5 +0,0 @@
- o Minor bugfixes (compilation):
- - Fix a compilation warning on some versions of GCC when
- building code that calls routerinfo_get_my_routerinfo() twice,
- assuming that the second call will succeed if the first one did.
- Fixes bug 26269; bugfix on 0.2.8.2-alpha.
diff --git a/changes/bug26272 b/changes/bug26272
deleted file mode 100644
index 9dcf42f0e1..0000000000
--- a/changes/bug26272
+++ /dev/null
@@ -1,3 +0,0 @@
- o Minor bugfixes (compilation):
- - Silence unused-const-variable warnings in zstd.h on some gcc versions.
- Fixes bug 26272; bugfix on 0.3.1.1-alpha.
diff --git a/changes/bug26435 b/changes/bug26435
deleted file mode 100644
index f66c503dd5..0000000000
--- a/changes/bug26435
+++ /dev/null
@@ -1,5 +0,0 @@
- o Major bugfixes (directory authority):
- - Fix a memory leak where directory authorities would leak a chunk
- of memory for every router descriptor every time they considered
- voting. This bug was taking down directory authorities due to
- out-of-memory issues. Fixes bug 26435; bugfix on 0.3.3.6.
diff --git a/changes/bug26470 b/changes/bug26470
deleted file mode 100644
index 854ec7ea72..0000000000
--- a/changes/bug26470
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor bugfixes (HTTP tunnel):
- - Fix a bug warning when closing an HTTP tunnel connection due to
- an HTTP request we couldn't handle. Fixes bug 26470; bugfix on
- 0.3.2.1-alpha.
diff --git a/changes/bug26485 b/changes/bug26485
deleted file mode 100644
index 5a40b7a78e..0000000000
--- a/changes/bug26485
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor bugfixes (directory authority):
- - When voting for recommended versions, make sure that all of the
- versions are well-formed and parsable. Fixes bug 26485; bugfix on
- 0.1.1.6-alpha.
diff --git a/changes/bug26497 b/changes/bug26497
deleted file mode 100644
index d0c05ff3e4..0000000000
--- a/changes/bug26497
+++ /dev/null
@@ -1,3 +0,0 @@
- o Minor bugfixes (rust):
- - Stop setting $CARGO_HOME. cargo will use the user's $CARGO_HOME, or
- $HOME/.cargo by default. Fixes bug 26497; bugfix on 0.3.1.5-alpha.
diff --git a/changes/bug26497-backport b/changes/bug26497-backport
deleted file mode 100644
index 1d86e01bf3..0000000000
--- a/changes/bug26497-backport
+++ /dev/null
@@ -1,3 +0,0 @@
- o Minor bugfixes (rust):
- - Backport test_rust.sh from master.
- Fixes bug 26497; bugfix on 0.3.1.5-alpha.
diff --git a/changes/bug26497-cd b/changes/bug26497-cd
deleted file mode 100644
index 37bf1bc956..0000000000
--- a/changes/bug26497-cd
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor bugfixes (rust):
- - cd to ${abs_top_builddir}/src/rust before running cargo in
- src/test/test_rust.sh. This makes the working directory consistent
- between builds and tests. Fixes bug 26497; bugfix on 0.3.3.2-alpha.
diff --git a/changes/bug26523 b/changes/bug26523
deleted file mode 100644
index a739d240e9..0000000000
--- a/changes/bug26523
+++ /dev/null
@@ -1,5 +0,0 @@
- o Minor bugfixes (hidden service, control port):
- - The HSPOST command wasn't parsing properly the HSADDRESS= parameter and
- thus not using it. It now handles it correctly. Fixes bug 26523; bugfix on
- 0.3.3.1-alpha. Patch by "akwizgran".
-
diff --git a/changes/bug26535.029 b/changes/bug26535.029
deleted file mode 100644
index 111b539f17..0000000000
--- a/changes/bug26535.029
+++ /dev/null
@@ -1,5 +0,0 @@
- o Minor bugfixes (testing, compatibility):
- - When running the ntor_ref.py test, make sure only to pass strings
- (rather than "bytes" objects) to the Python subprocess module.
- Python 3 on Windows seems to require this. Fixes bug 26535; bugfix on
- 0.2.5.5-alpha.
diff --git a/changes/bug26535.032 b/changes/bug26535.032
deleted file mode 100644
index 395d08d816..0000000000
--- a/changes/bug26535.032
+++ /dev/null
@@ -1,5 +0,0 @@
- o Minor bugfixes (testing, compatibility):
- - When running the hs_ntor_ref.py test, make sure only to pass strings
- (rather than "bytes" objects) to the Python subprocess module.
- Python 3 on Windows seems to require this. Fixes bug 26535; bugfix on
- 0.3.1.1-alpha.
diff --git a/changes/bug26627 b/changes/bug26627
deleted file mode 100644
index d28bd05d53..0000000000
--- a/changes/bug26627
+++ /dev/null
@@ -1,7 +0,0 @@
- o Minor bugfixes (v3 onion services):
- - Stop sending ed25519 link specifiers in v3 onion service introduce
- cells, when the rendezvous point doesn't support ed25519 link
- authentication. Fixes bug 26627; bugfix on 0.3.2.4-alpha.
- - Stop putting ed25519 link specifiers in v3 onion service descriptors,
- when the intro point doesn't support ed25519 link authentication.
- Fixes bug 26627; bugfix on 0.3.2.4-alpha.
diff --git a/changes/bug26779 b/changes/bug26779
deleted file mode 100644
index fb7f6160ea..0000000000
--- a/changes/bug26779
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor features (bug workaround):
- - Compile correctly on systems that provide the C11 stdatomic.h header,
- but where C11 atomic functions don't actually compile.
- Closes ticket 26779; workaround for Debian issue 903709.
diff --git a/changes/bug26785 b/changes/bug26785
deleted file mode 100644
index e6392fcbdd..0000000000
--- a/changes/bug26785
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor bugfixes (compilation, portability):
- - Don't try to use a pragma to temporarily disable
- -Wunused-const-variable if the compiler doesn't support it.
- Fixes bug 26785; bugfix on 0.3.2.11.
diff --git a/changes/bug26787 b/changes/bug26787
deleted file mode 100644
index b32e519a93..0000000000
--- a/changes/bug26787
+++ /dev/null
@@ -1,3 +0,0 @@
- o Minor bugfixes (testing):
- - Disable core dumps in test_bt.sh, to avoid failures in "make
- distcheck". Fixes bug 26787; bugfix on 0.2.5.2-alpha.
diff --git a/changes/bug26830 b/changes/bug26830
deleted file mode 100644
index c002f19530..0000000000
--- a/changes/bug26830
+++ /dev/null
@@ -1,3 +0,0 @@
- o Minor bugfixes (continuous integration):
- - Skip an unreliable key generation test on Windows, until the underlying
- issue in bug 26076 is resolved. Fixes bug 26830; bugfix on 0.2.7.3-rc.
diff --git a/changes/bug26853 b/changes/bug26853
deleted file mode 100644
index 6ee47789b9..0000000000
--- a/changes/bug26853
+++ /dev/null
@@ -1,3 +0,0 @@
- o Minor bugfixes (continuous integration):
- - Skip an unreliable key expiration test on Windows, until the underlying
- issue in bug 26076 is resolved. Fixes bug 26853; bugfix on 0.3.2.1-alpha.
diff --git a/changes/bug26873 b/changes/bug26873
deleted file mode 100644
index 565f8bf0b1..0000000000
--- a/changes/bug26873
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor bugfixes (portability):
- - Fix compilation of the unit tests on GNU/Hurd, which does not
- define PATH_MAX. Fixes bug 26873; bugfix on 0.3.3.1-alpha.
- Patch from "paulusASol".
diff --git a/changes/bug26876 b/changes/bug26876
deleted file mode 100644
index b661104236..0000000000
--- a/changes/bug26876
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor bugfixes (portability):
- - Work around two different bugs in the OS X 10.10 and later SDKs that
- would prevent us from successfully targeting earlier versions of OS X.
- Fixes bug 26876; bugfix on 0.3.3.1-alpha.
diff --git a/changes/bug26924 b/changes/bug26924
deleted file mode 100644
index 882db56b40..0000000000
--- a/changes/bug26924
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor bugfixes (single onion services, Tor2web):
- - Log a protocol warning when single onion services or Tor2web clients
- fail to authenticate direct connections to relays.
- Fixes bug 26924; bugfix on 0.2.9.1-alpha.
diff --git a/changes/bug26927 b/changes/bug26927
deleted file mode 100644
index cd035bba8e..0000000000
--- a/changes/bug26927
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor bugfixes (logging):
- - Improve the log message when connection initiators fail to authenticate
- direct connections to relays.
- Fixes bug 26927; bugfix on 0.3.0.1-alpha.
diff --git a/changes/bug26932 b/changes/bug26932
deleted file mode 100644
index 7d9481dcd3..0000000000
--- a/changes/bug26932
+++ /dev/null
@@ -1,3 +0,0 @@
- o Minor bugfixes (onion services):
- - Fix bug that causes services to not ever rotate their descriptors if they
- were getting SIGHUPed often. Fixes bug 26932; bugfix on 0.3.2.1-alpha. \ No newline at end of file
diff --git a/changes/bug26948 b/changes/bug26948
deleted file mode 100644
index 0f0728843f..0000000000
--- a/changes/bug26948
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor bugfixes (in-process restart):
- - Always call tor_free_all() when leaving tor_run_main(). When we
- did not, restarting tor in-process would cause an assertion failure.
- Fixes bug 26948; bugfix on 0.3.3.1-alpha.
diff --git a/changes/bug27081 b/changes/bug27081
deleted file mode 100644
index 74e0efbd29..0000000000
--- a/changes/bug27081
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor bugfixes (compilation, windows):
- - Don't link or search for pthreads when building for Windows, even if we
- are using build environment (like mingw) that provides a pthreads
- library. Fixes bug 27081; bugfix on 0.1.0.1-rc.
diff --git a/changes/bug27088 b/changes/bug27088
deleted file mode 100644
index d4d3b292c5..0000000000
--- a/changes/bug27088
+++ /dev/null
@@ -1,5 +0,0 @@
- o Minor bugfixes (continuous integration):
- - Pass the module flags to distcheck configure, and
- log the flags before running configure. (Backported
- to 0.2.9 and later as a precaution.)
- Fixes bug 27088; bugfix on 0.3.4.1-alpha.
diff --git a/changes/bug27090 b/changes/bug27090
deleted file mode 100644
index 3d119a9c30..0000000000
--- a/changes/bug27090
+++ /dev/null
@@ -1,3 +0,0 @@
- o Minor bugfixes (continuous integration):
- - Build with zstd on macOS.
- Fixes bug 27090; bugfix on 0.3.1.5-alpha.
diff --git a/changes/bug27093 b/changes/bug27093
deleted file mode 100644
index 6c097f1196..0000000000
--- a/changes/bug27093
+++ /dev/null
@@ -1,3 +0,0 @@
- o Minor bugfixes (rust):
- - Consistently use ../../.. as a fallback for $abs_top_srcdir in
- test_rust.sh. Fixes bug 27093; bugfix on 0.3.4.3-alpha.
diff --git a/changes/bug27164 b/changes/bug27164
deleted file mode 100644
index d04d2f28f4..0000000000
--- a/changes/bug27164
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor bugfixes (rust):
- - Protover parsing was ignoring a 2nd hyphen and everything after it,
- accepting entries like "Link=1-5-foo". Fixes bug 27164; bugfix on
- 0.3.3.1-alpha.
diff --git a/changes/bug27177 b/changes/bug27177
deleted file mode 100644
index b03bbc96ea..0000000000
--- a/changes/bug27177
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor bugfixes (rust):
- - Protover parsing was accepting the presence of whitespace in version
- strings, which the C implementation would choke on, e.g. "Desc=1\t,2".
- Fixes bug 27177; bugfix on 0.3.3.5-rc.
diff --git a/changes/bug27185 b/changes/bug27185
deleted file mode 100644
index 79221b3df4..0000000000
--- a/changes/bug27185
+++ /dev/null
@@ -1,3 +0,0 @@
- o Minor bugfixes (Windows, compilation):
- - Silence a compilation warning on MSVC 2017 and clang-cl.
- Fixes bug 27185; bugfix on 0.2.2.2-alpha.
diff --git a/changes/bug27206 b/changes/bug27206
deleted file mode 100644
index c0fbbed702..0000000000
--- a/changes/bug27206
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor bugfixes (rust):
- - protover_all_supported() would attempt to allocate up to 16GB on some
- inputs, leading to a potential memory DoS. Fixes bug 27206; bugfix on
- 0.3.3.5-rc.
diff --git a/changes/bug27226 b/changes/bug27226
deleted file mode 100644
index 9030773cd5..0000000000
--- a/changes/bug27226
+++ /dev/null
@@ -1,5 +0,0 @@
- o Minor bugfixes (testing, openssl compatibility):
- - Our "tortls/cert_matches_key" unit test no longer relies on OpenSSL
- internals. Previously, it relied on unsupported OpenSSL behavior in
- a way that caused it to crash with OpenSSL 1.0.2p. Fixes bug 27226;
- bugfix on 0.2.5.1-alpha.
diff --git a/changes/bug27295 b/changes/bug27295
deleted file mode 100644
index c5a364877a..0000000000
--- a/changes/bug27295
+++ /dev/null
@@ -1,3 +0,0 @@
- o Minor bugfixes (testing, chutney):
- - Before running make test-network-all, delete old logs and test result
- files, to avoid spurious failures. Fixes bug 27295; bugfix on 0.2.7.3-rc.
diff --git a/changes/bug27316 b/changes/bug27316
deleted file mode 100644
index cec9348912..0000000000
--- a/changes/bug27316
+++ /dev/null
@@ -1,3 +0,0 @@
- o Minor bugfixes (protover):
- - Reject protocol names containing bytes other than alphanumeric characters
- and hyphens ([A-Za-z0-9-]). Fixes bug 27316; bugfix on 0.2.9.4-alpha.
diff --git a/changes/bug27335 b/changes/bug27335
deleted file mode 100644
index dcc55a945a..0000000000
--- a/changes/bug27335
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor bugfixes (hidden service v3):
- - In case the hidden service directory can't be created or has wrong
- permissions, do not BUG() on it which lead to a non fatal stacktrace.
- Fixes bug 27335; bugfix on 0.3.2.1.
diff --git a/changes/bug27344 b/changes/bug27344
deleted file mode 100644
index 9f66855586..0000000000
--- a/changes/bug27344
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor features (compatibility):
- - Tell OpenSSL to maintain backward compatibility with previous
- RSA1024/DH1024 users in Tor. With OpenSSL 1.1.1-pre6, these ciphers
- are disabled by default. Closes ticket 27344.
diff --git a/changes/bug27345 b/changes/bug27345
deleted file mode 100644
index d98f4afbcc..0000000000
--- a/changes/bug27345
+++ /dev/null
@@ -1,5 +0,0 @@
- o Minor bugfixes (testing):
- - When running make test-network-all, use the mixed+hs-v2 network.
- (A previous fix to chutney removed v3 onion services from the
- mixed+hs-v23 network, so seeing "mixed+hs-v23" in tests is
- confusing.) Fixes bug 27345; bugfix on 0.3.2.1-alpha.
diff --git a/changes/bug27418 b/changes/bug27418
deleted file mode 100644
index 1d99497dc4..0000000000
--- a/changes/bug27418
+++ /dev/null
@@ -1,3 +0,0 @@
- o Minor bugfixes (continuous integration):
- - When we use echo in Travis, don't pass a --flag as the first argument.
- Fixes bug 27418; bugfix on 0.3.4.7-rc.
diff --git a/changes/bug27453 b/changes/bug27453
deleted file mode 100644
index 4501346d2c..0000000000
--- a/changes/bug27453
+++ /dev/null
@@ -1,3 +0,0 @@
- o Minor bugfixes (continuous integration):
- - When a Travis build fails, and showing a log fails, keep trying to
- show the other logs. Fixes bug 27453; bugfix on 0.3.4.7-rc.
diff --git a/changes/bug27461 b/changes/bug27461
deleted file mode 100644
index 3571ee816a..0000000000
--- a/changes/bug27461
+++ /dev/null
@@ -1,5 +0,0 @@
- o Minor bugfixes (compilation):
- - Stop calling SetProcessDEPPolicy() on 64-bit Windows. It is not
- supported, and always fails. Some compilers warn about the function
- pointer cast on 64-bit Windows.
- Fixes bug 27461; bugfix on 0.2.2.23-alpha.
diff --git a/changes/bug27463 b/changes/bug27463
deleted file mode 100644
index 073acdd997..0000000000
--- a/changes/bug27463
+++ /dev/null
@@ -1,3 +0,0 @@
- o Minor bugfixes (onion services):
- - Silence a spurious compiler warning in rend_client_send_introduction().
- Fixes bug 27463; bugfix on 0.1.1.2-alpha.
diff --git a/changes/bug27465 b/changes/bug27465
deleted file mode 100644
index 743b35130f..0000000000
--- a/changes/bug27465
+++ /dev/null
@@ -1,5 +0,0 @@
- o Minor bugfixes (compilation):
- - Silence a spurious compiler warning on the GetAdaptersAddresses
- function pointer cast. This issue is already fixed by 26481 in
- 0.3.5 and later, by removing the lookup and cast.
- Fixes bug 27465; bugfix on 0.2.3.11-alpha.
diff --git a/changes/bug27649 b/changes/bug27649
deleted file mode 100644
index 55bfc3a842..0000000000
--- a/changes/bug27649
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor bugfixes (rust):
- - The protover rewrite in 24031 allowed repeated votes from the same
- voter for the same protocol version to be counted multiple times in
- protover_compute_vote(). Fixes bug 27649; bugfix on 0.3.3.5-rc.
diff --git a/changes/bug27658 b/changes/bug27658
deleted file mode 100644
index 8cc0aa4714..0000000000
--- a/changes/bug27658
+++ /dev/null
@@ -1,6 +0,0 @@
- o Minor bugfixes (testing):
- - If a unit test running in a subprocess exits abnormally or with a
- nonzero status code, treat the test as having failed, even if
- the test reported success. Without this fix, memory leaks don't cause
- cause the tests to fail, even with LeakSanitizer. Fixes bug 27658;
- bugfix on 0.2.2.4-alpha.
diff --git a/changes/bug27687 b/changes/bug27687
deleted file mode 100644
index 8b7903b63e..0000000000
--- a/changes/bug27687
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor bugfixes (rust):
- - protover parsed and accepted unknown protocol names containing invalid
- characters outside the range [A-Za-z0-9-]. Fixes bug 27687; bugfix on
- 0.3.3.1-alpha.
diff --git a/changes/bug27708 b/changes/bug27708
deleted file mode 100644
index d283b19515..0000000000
--- a/changes/bug27708
+++ /dev/null
@@ -1,4 +0,0 @@
- o Major bugfixes (restart-in-process):
- - Fix a use-after-free error that could be caused by passing Tor an
- impossible set of options that would fail during options_act().
- Fixes bug 27708; bugfix on 0.3.3.1-alpha.
diff --git a/changes/bug27709 b/changes/bug27709
deleted file mode 100644
index 49e87cbb0a..0000000000
--- a/changes/bug27709
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor bugfixes (code safety):
- - Rewrite our assertion macros so that they no longer suppress
- the compiler's -Wparentheses warnings on their inputs. Fixes bug 27709;
- bugfix on 0.0.6.
diff --git a/changes/bug27740 b/changes/bug27740
deleted file mode 100644
index 76a17b7dda..0000000000
--- a/changes/bug27740
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor bugfixes (rust):
- - Return a string that can be safely freed by C code, not one created by
- the rust allocator, in protover_all_supported(). Fixes bug 27740; bugfix
- on 0.3.3.1-alpha.
diff --git a/changes/bug27741 b/changes/bug27741
deleted file mode 100644
index 531e264b63..0000000000
--- a/changes/bug27741
+++ /dev/null
@@ -1,5 +0,0 @@
- o Minor bugfixes (rust, directory authority):
- - Fix an API mismatch in the rust implementation of
- protover_compute_vote(). This bug could have caused crashes on any
- directory authorities running Tor with Rust (which we do not yet
- recommend). Fixes bug 27741; bugfix on 0.3.3.6.
diff --git a/changes/bug27800 b/changes/bug27800
deleted file mode 100644
index 63d5dbc681..0000000000
--- a/changes/bug27800
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor bugfixes (directory authority):
- - Log additional info when we get a relay that shares an ed25519
- ID with a different relay, instead making a BUG() warning.
- Fixes bug 27800; bugfix on 0.3.2.1-alpha.
diff --git a/changes/bug27804 b/changes/bug27804
deleted file mode 100644
index fa7fec0bc5..0000000000
--- a/changes/bug27804
+++ /dev/null
@@ -1,3 +0,0 @@
- o Minor bugfixes (rust):
- - Fix a potential null dereference in protover_all_supported().
- Add a test for it. Fixes bug 27804; bugfix on 0.3.3.1-alpha.
diff --git a/changes/bug27948 b/changes/bug27948
deleted file mode 100644
index fea16f3d0f..0000000000
--- a/changes/bug27948
+++ /dev/null
@@ -1,6 +0,0 @@
- o Minor bugfixes (tests):
- - Treat backtrace test failures as expected on BSD-derived systems
- (NetBSD, OpenBSD, and macOS/Darwin) until we solve bug 17808.
- (FreeBSD failures have been treated as expected since 18204 in 0.2.8.)
- Fixes bug 27948; bugfix on 0.2.5.2-alpha.
-
diff --git a/changes/bug28202 b/changes/bug28202
deleted file mode 100644
index 182daac4f1..0000000000
--- a/changes/bug28202
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor bugfixes (C correctness):
- - Avoid undefined behavior in an end-of-string check when parsing the
- BEGIN line in a directory object. Fixes bug 28202; bugfix on
- 0.2.0.3-alpha.
diff --git a/changes/bug28245 b/changes/bug28245
deleted file mode 100644
index d7e6deb810..0000000000
--- a/changes/bug28245
+++ /dev/null
@@ -1,6 +0,0 @@
- o Major bugfixes (OpenSSL, portability):
- - Fix our usage of named groups when running as a TLS 1.3 client in
- OpenSSL 1.1.1. Previously, we only initialized EC groups when running
- as a server, which caused clients to fail to negotiate TLS 1.3 with
- relays. Fixes bug 28245; bugfix on 0.2.9.15 when TLS 1.3 support was
- added.
diff --git a/changes/bug28413 b/changes/bug28413
deleted file mode 100644
index 4c88bea7e7..0000000000
--- a/changes/bug28413
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor bugfixes (compilation):
- - Initialize a variable in aes_new_cipher(), since some compilers
- cannot tell that we always initialize it before use. Fixes bug 28413;
- bugfix on 0.2.9.3-alpha.
diff --git a/changes/bug28419 b/changes/bug28419
deleted file mode 100644
index 52ceb0a2a7..0000000000
--- a/changes/bug28419
+++ /dev/null
@@ -1,3 +0,0 @@
- o Minor bugfixes (memory leaks):
- - Fix a harmless memory leak in libtorrunner.a. Fixes bug 28419;
- bugfix on 0.3.3.1-alpha. Patch from Martin Kepplinger. \ No newline at end of file
diff --git a/changes/bug28554 b/changes/bug28554
deleted file mode 100644
index 9a0b281406..0000000000
--- a/changes/bug28554
+++ /dev/null
@@ -1,3 +0,0 @@
- o Minor bugfixes (unit tests, guard selection):
- - Stop leaking memory in an entry guard unit test. Fixes bug 28554;
- bugfix on 0.3.0.1-alpha.
diff --git a/changes/bug28619 b/changes/bug28619
deleted file mode 100644
index 86be8cb2fb..0000000000
--- a/changes/bug28619
+++ /dev/null
@@ -1,6 +0,0 @@
- o Minor bugfixes (hidden service v3):
- - When deleting an ephemeral onion service (DEL_ONION), do not close any
- rendezvous circuits in order to let the existing client connections
- finish by themselves or closed by the application. The HS v2 is doing
- that already so now we have the same behavior for all versions. Fixes
- bug 28619; bugfix on 0.3.3.1-alpha.
diff --git a/changes/bug29029 b/changes/bug29029
deleted file mode 100644
index e100a8c2ed..0000000000
--- a/changes/bug29029
+++ /dev/null
@@ -1,5 +0,0 @@
- o Minor bugfixes (logging, onion services):
- - Stop logging "Tried to establish rendezvous on non-OR circuit..." as
- a warning. Instead, log it as a protocol warning, because there is
- nothing that relay operators can do to fix it. Fixes bug 29029;
- bugfix on 0.2.5.7-rc.
diff --git a/changes/bug29244 b/changes/bug29244
deleted file mode 100644
index 6206a95463..0000000000
--- a/changes/bug29244
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor bugfixes (build, compatibility):
- - Update Cargo.lock file to match the version made by the latest
- version of Rust, so that "make distcheck" will pass again.
- Fixes bug 29244; bugfix on 0.3.3.4-alpha.
diff --git a/changes/bugs_25036_25055 b/changes/bugs_25036_25055
deleted file mode 100644
index daa46321c0..0000000000
--- a/changes/bugs_25036_25055
+++ /dev/null
@@ -1,7 +0,0 @@
- o Minor bugfixes (networking):
- - Tor will not reject IPv6 address strings from TorBrowser when they
- are passed as hostnames in SOCKS5 requests. Fixes bug 25036,
- bugfix on Tor 0.3.1.2.
- - string_is_valid_hostname() will not consider IP strings to be valid
- hostnames. Fixes bug 25055; bugfix on Tor 0.2.5.5.
-
diff --git a/changes/coveralls b/changes/coveralls
deleted file mode 100644
index 7fa69bb2b4..0000000000
--- a/changes/coveralls
+++ /dev/null
@@ -1,3 +0,0 @@
- o Minor features (continuous integration):
- - Our Travis CI configuration now integrates with the Coveralls coverage
- analysis tool. Closes ticket 25818.
diff --git a/changes/feature25313 b/changes/feature25313
deleted file mode 100644
index 90f421169f..0000000000
--- a/changes/feature25313
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor features (sandbox):
- - Explicitly permit the poll() system call when the Linux seccomp2-based
- sandbox is enabled: apparently, some versions of libc use poll() when
- calling getpwnam(). Closes ticket 25313.
diff --git a/changes/feature26372_029 b/changes/feature26372_029
deleted file mode 100644
index 150ac30555..0000000000
--- a/changes/feature26372_029
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor features (compilation):
-
- - When building Tor, prefer to use Python 3 over Python 2, and more
- recent (contemplated) versions over older ones. Closes ticket 26372.
diff --git a/changes/geoip-2018-03-08 b/changes/geoip-2018-03-08
deleted file mode 100644
index d9696aab53..0000000000
--- a/changes/geoip-2018-03-08
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor features (geoip):
- - Update geoip and geoip6 to the March 8 2018 Maxmind GeoLite2
- Country database. Closes ticket 25469.
-
diff --git a/changes/geoip-2018-04-03 b/changes/geoip-2018-04-03
deleted file mode 100644
index 987cc450bf..0000000000
--- a/changes/geoip-2018-04-03
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor features (geoip):
- - Update geoip and geoip6 to the April 3 2018 Maxmind GeoLite2
- Country database. Closes ticket 25718.
-
diff --git a/changes/geoip-2018-05-01 b/changes/geoip-2018-05-01
deleted file mode 100644
index 1528bb0c31..0000000000
--- a/changes/geoip-2018-05-01
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor features (geoip):
- - Update geoip and geoip6 to the May 1 2018 Maxmind GeoLite2
- Country database. Closes ticket 26104.
-
diff --git a/changes/geoip-2018-06-07 b/changes/geoip-2018-06-07
deleted file mode 100644
index 0f8cff97af..0000000000
--- a/changes/geoip-2018-06-07
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor features (geoip):
- - Update geoip and geoip6 to the June 7 2018 Maxmind GeoLite2
- Country database. Closes ticket 26351.
-
diff --git a/changes/geoip-2018-07-03 b/changes/geoip-2018-07-03
deleted file mode 100644
index e921d63c99..0000000000
--- a/changes/geoip-2018-07-03
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor features (geoip):
- - Update geoip and geoip6 to the July 3 2018 Maxmind GeoLite2
- Country database. Closes ticket 26674.
-
diff --git a/changes/geoip-2018-08-07 b/changes/geoip-2018-08-07
deleted file mode 100644
index 9ddbe7b1b2..0000000000
--- a/changes/geoip-2018-08-07
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor features (geoip):
- - Update geoip and geoip6 to the August 7 2018 Maxmind GeoLite2
- Country database. Closes ticket 27089.
-
diff --git a/changes/geoip-2018-09-06 b/changes/geoip-2018-09-06
deleted file mode 100644
index 851ec46e25..0000000000
--- a/changes/geoip-2018-09-06
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor features (geoip):
- - Update geoip and geoip6 to the September 6 2018 Maxmind GeoLite2
- Country database. Closes ticket 27631.
-
diff --git a/changes/geoip-2018-10-09 b/changes/geoip-2018-10-09
deleted file mode 100644
index 9b8e621852..0000000000
--- a/changes/geoip-2018-10-09
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor features (geoip):
- - Update geoip and geoip6 to the October 9 2018 Maxmind GeoLite2
- Country database. Closes ticket 27991.
-
diff --git a/changes/geoip-2018-11-06 b/changes/geoip-2018-11-06
deleted file mode 100644
index 5c18ea4244..0000000000
--- a/changes/geoip-2018-11-06
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor features (geoip):
- - Update geoip and geoip6 to the November 6 2018 Maxmind GeoLite2
- Country database. Closes ticket 28395.
-
diff --git a/changes/geoip-2018-12-05 b/changes/geoip-2018-12-05
deleted file mode 100644
index 20ccf2d8a5..0000000000
--- a/changes/geoip-2018-12-05
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor features (geoip):
- - Update geoip and geoip6 to the December 5 2018 Maxmind GeoLite2
- Country database. Closes ticket 28744.
-
diff --git a/changes/geoip-2019-01-03 b/changes/geoip-2019-01-03
deleted file mode 100644
index 27ffb7f460..0000000000
--- a/changes/geoip-2019-01-03
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor features (geoip):
- - Update geoip and geoip6 to the January 3 2019 Maxmind GeoLite2
- Country database. Closes ticket 29012.
-
diff --git a/changes/geoip-2019-02-05 b/changes/geoip-2019-02-05
deleted file mode 100644
index 78ee6d4242..0000000000
--- a/changes/geoip-2019-02-05
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor features (geoip):
- - Update geoip and geoip6 to the February 5 2019 Maxmind GeoLite2
- Country database. Closes ticket 29478.
-
diff --git a/changes/refactor23814 b/changes/refactor23814
deleted file mode 100644
index a67b6989f8..0000000000
--- a/changes/refactor23814
+++ /dev/null
@@ -1,4 +0,0 @@
- o Code simplification and refactoring:
- - Remove the old (deterministic) directory retry logic entirely:
- We've used exponential backoff exclusively for some time.
- Closes ticket 23814.
diff --git a/changes/task26771 b/changes/task26771
deleted file mode 100644
index fd700900f7..0000000000
--- a/changes/task26771
+++ /dev/null
@@ -1,4 +0,0 @@
- o Directory authority changes:
- - The "Bifroest" bridge authority has been retired; the new bridge
- authority is "Serge", and it is operated by George from the
- TorBSD project. Closes ticket 26771.
diff --git a/changes/ticket23635 b/changes/ticket23635
deleted file mode 100644
index 54d303e4b8..0000000000
--- a/changes/ticket23635
+++ /dev/null
@@ -1,3 +0,0 @@
- o Documentation:
- - Improved the documentation of AccountingStart paremeter.
- Closes ticket 23635.
diff --git a/changes/ticket24343 b/changes/ticket24343
deleted file mode 100644
index e62d65eb54..0000000000
--- a/changes/ticket24343
+++ /dev/null
@@ -1,6 +0,0 @@
- o Minor bugfixes (man page, SocksPort):
- - Remove dead code about the old "SocksSockets" option. To do so, the
- SocksSocketsGroupWritable option has been renamed to
- UnixSockssGroupWritable which does the same exact thing. The old option
- is still usable but will warn that it is deprecated. Fixes bug 24343;
- bugfix on 0.2.6.3.
diff --git a/changes/ticket24629 b/changes/ticket24629
deleted file mode 100644
index 482c0a1a6d..0000000000
--- a/changes/ticket24629
+++ /dev/null
@@ -1,3 +0,0 @@
- o Minor features (continuous integration):
- - Enable macOS builds in our Travis CI configuration.
- Closes ticket 24629.
diff --git a/changes/ticket24629-backport b/changes/ticket24629-backport
deleted file mode 100644
index dfbc465634..0000000000
--- a/changes/ticket24629-backport
+++ /dev/null
@@ -1,3 +0,0 @@
- o Minor features (continuous integration):
- - Backport Travis rust distcheck to 0.3.3.
- Closes ticket 24629.
diff --git a/changes/ticket24803 b/changes/ticket24803
deleted file mode 100644
index e76a9eeab9..0000000000
--- a/changes/ticket24803
+++ /dev/null
@@ -1,5 +0,0 @@
- o Minor features (fallback directory list):
- - Replace the 150 fallbacks originally introduced in Tor 0.3.3.1-alpha in
- January 2018 (of which ~115 were still functional), with a list of
- 157 fallbacks (92 new, 65 existing, 85 removed) generated in
- December 2018. Closes ticket 24803.
diff --git a/changes/ticket25071 b/changes/ticket25071
deleted file mode 100644
index 5e2917e10b..0000000000
--- a/changes/ticket25071
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor features (testing):
- - Add a "make test-rust" target to run the rust tests only.
- Closes ticket 25071.
-
diff --git a/changes/ticket25202 b/changes/ticket25202
deleted file mode 100644
index ba64abad7b..0000000000
--- a/changes/ticket25202
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor bugfixes (DoS mitigation):
- - Add extra safety checks when refilling the circuit creation bucket to
- ensure we never set a value that is above the allowed burst. Fixes
- bug 25202; bugfix on 0.3.3.2-alpha.
diff --git a/changes/ticket25248 b/changes/ticket25248
deleted file mode 100644
index 67ccdb6313..0000000000
--- a/changes/ticket25248
+++ /dev/null
@@ -1,4 +0,0 @@
- o Documentation (manpage, denial of service):
- - Better detail the denial of service options by listing the different
- mitigation in place. Closes ticket 25248.
-
diff --git a/changes/ticket25323 b/changes/ticket25323
deleted file mode 100644
index 836825de5d..0000000000
--- a/changes/ticket25323
+++ /dev/null
@@ -1,4 +0,0 @@
- o Code simplification and refactoring:
- - Update the "rust dependencies" submodule to be an project-level
- repository, rather than a user repository. Closes ticket 25323.
-
diff --git a/changes/ticket25714 b/changes/ticket25714
deleted file mode 100644
index 63823fc6ca..0000000000
--- a/changes/ticket25714
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor feature (continuous integration):
- - Update the Travis CI configuration to use the stable Rust
- channel, now that we have decided to require that. Closes
- ticket 25714.
diff --git a/changes/ticket26006 b/changes/ticket26006
deleted file mode 100644
index e33e3f1cd2..0000000000
--- a/changes/ticket26006
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor features (compilation, portability):
- - Avoid some compilation warnings with recent versions
- of LibreSSL. Closes ticket 26006.
-
diff --git a/changes/ticket26062 b/changes/ticket26062
deleted file mode 100644
index 1ee49d8608..0000000000
--- a/changes/ticket26062
+++ /dev/null
@@ -1,3 +0,0 @@
- o Minor bugfixes (client):
- - Don't consider Tor running as a client if the ControlPort is open. Fixes
- bug 26062; bugfix on 0.2.9.4-alpha.
diff --git a/changes/ticket26343 b/changes/ticket26343
deleted file mode 100644
index ab5f332ee6..0000000000
--- a/changes/ticket26343
+++ /dev/null
@@ -1,3 +0,0 @@
- o Minor features (directory authority):
- - Add an IPv6 address for the "dannenberg" directory
- authority. Closes ticket 26343.
diff --git a/changes/ticket26467 b/changes/ticket26467
deleted file mode 100644
index 45883786c2..0000000000
--- a/changes/ticket26467
+++ /dev/null
@@ -1,3 +0,0 @@
- o Minor bugfixes (memory, correctness):
- - Fix a number of small memory leaks identified by coverity. Fixes
- bug 26467; bugfix on numerous Tor versions.
diff --git a/changes/ticket26560 b/changes/ticket26560
deleted file mode 100644
index 5b4fb1bfe7..0000000000
--- a/changes/ticket26560
+++ /dev/null
@@ -1,3 +0,0 @@
- o Minor features (continuous integration):
- - Install libcap-dev and libseccomp2-dev so these optional
- dependencies get tested on Travis CI. Closes ticket 26560.
diff --git a/changes/ticket26647 b/changes/ticket26647
deleted file mode 100644
index 1c2e917c6d..0000000000
--- a/changes/ticket26647
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor features (controller):
- - The control port now exposes the list of HTTPTunnelPorts and
- ExtOrPorts via GETINFO net/listeners/httptunnel and net/listeners/extor
- respectively. Closes ticket 26647.
diff --git a/changes/ticket26913 b/changes/ticket26913
deleted file mode 100644
index d6555764ec..0000000000
--- a/changes/ticket26913
+++ /dev/null
@@ -1,7 +0,0 @@
- o Minor bugfixes (directory permissions):
- - When a user requests a group-readable DataDirectory, give it to
- them. Previously, when the DataDirectory and the CacheDirectory
- were the same, the default setting (0) for
- CacheDirectoryGroupReadable would always override the setting for
- DataDirectoryGroupReadable. Fixes bug 26913; bugfix on
- 0.3.3.1-alpha.
diff --git a/changes/ticket26952-cargo b/changes/ticket26952-cargo
deleted file mode 100644
index e1efdfcd74..0000000000
--- a/changes/ticket26952-cargo
+++ /dev/null
@@ -1,3 +0,0 @@
- o Minor features (continuous integration, rust):
- - Use cargo cache in our Travis CI configuration.
- Closes ticket 26952.
diff --git a/changes/ticket26952-ccache b/changes/ticket26952-ccache
deleted file mode 100644
index edc115e9de..0000000000
--- a/changes/ticket26952-ccache
+++ /dev/null
@@ -1,3 +0,0 @@
- o Minor features (continuous integration):
- - Use ccache in our Travis CI configuration.
- Closes ticket 26952.
diff --git a/changes/ticket27087 b/changes/ticket27087
deleted file mode 100644
index b8af70aaa0..0000000000
--- a/changes/ticket27087
+++ /dev/null
@@ -1,3 +0,0 @@
- o Minor features (continuous integration):
- - Run asciidoc during Travis CI.
- Implements ticket 27087.
diff --git a/changes/ticket27252 b/changes/ticket27252
deleted file mode 100644
index 410ddef8c0..0000000000
--- a/changes/ticket27252
+++ /dev/null
@@ -1,6 +0,0 @@
- o Minor features (continuous integration):
- - Skip gcc on OSX in Travis CI, it's rarely used.
- Skip a duplicate hardening-off build in Travis on Tor 0.2.9.
- Skip gcc on Linux with default settings, because all the non-default
- builds use gcc on Linux.
- Implements ticket 27252.
diff --git a/changes/ticket27252-032 b/changes/ticket27252-032
deleted file mode 100644
index 4752aedcf6..0000000000
--- a/changes/ticket27252-032
+++ /dev/null
@@ -1,5 +0,0 @@
- o Minor features (continuous integration):
- - Only run one online rust build in Travis, to reduce network errors.
- Skip offline rust builds on Travis for Linux gcc, because they're
- redundant.
- Implements ticket 27252.
diff --git a/changes/ticket27410 b/changes/ticket27410
deleted file mode 100644
index a21fdde58e..0000000000
--- a/changes/ticket27410
+++ /dev/null
@@ -1,5 +0,0 @@
- o Minor bugfixes (hidden service v3):
- - Close all SOCKS request (for the same .onion) if the newly fetched
- descriptor is unusable. Before that, we would close only the first one
- leaving the other hanging and let to time out by themselves. Fixes bug
- 27410; bugfix on 0.3.2.1-alpha.
diff --git a/changes/ticket27550 b/changes/ticket27550
deleted file mode 100644
index 87f9b5cbe9..0000000000
--- a/changes/ticket27550
+++ /dev/null
@@ -1,5 +0,0 @@
- o Minor bugfixes (hidden service v3):
- - Don't warn so loudly when tor is unable to decode a descriptor. This can
- now happen as a normal use case if a client gets a descriptor with
- client authorization but the client is not authorized. Fixes bug 27550;
- bugfix on 0.3.5.1-alpha.
diff --git a/changes/ticket27738 b/changes/ticket27738
deleted file mode 100644
index f23bfb019e..0000000000
--- a/changes/ticket27738
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor features (continuous integration):
- - Use the Travis Homebrew addon to install packages on macOS. The package
- list is the same, but the Homebrew addon does not do a `brew update` by
- default. Implements ticket 27738.
diff --git a/changes/ticket28973 b/changes/ticket28973
deleted file mode 100644
index b1d208ee51..0000000000
--- a/changes/ticket28973
+++ /dev/null
@@ -1,6 +0,0 @@
- o Minor features (OpenSSL bug workaround):
- - Work around a bug in OpenSSL 1.1.1a, which prevented the TLS 1.3
- key export function from handling long labels. When this bug
- is detected, Tor will disable TLS 1.3. We recommend upgrading to
- a version of OpenSSL without this bug when it becomes available.
- Closes ticket 28973.
diff --git a/changes/ticket29168 b/changes/ticket29168
deleted file mode 100644
index 65c5232f65..0000000000
--- a/changes/ticket29168
+++ /dev/null
@@ -1,5 +0,0 @@
- o Major bugfixes (cell scheduler, KIST):
- - Make KIST to always take into account the outbuf length when computing
- what we can actually put in the outbuf. This could lead to the outbuf
- being filled up and thus a possible memory DoS vector. TROVE-2019-001.
- Fixes bug 29168; bugfix on 0.3.2.1-alpha.
diff --git a/changes/travis_distcheck b/changes/travis_distcheck
deleted file mode 100644
index 0f278fe7ee..0000000000
--- a/changes/travis_distcheck
+++ /dev/null
@@ -1,4 +0,0 @@
- o Minor features (continuous integration):
- - Our .travis.yml configuration now includes support for testing
- the results of "make distcheck". (It's not uncommon for "make check" to
- pass but "make distcheck" to fail.) Closes ticket 25814.
diff --git a/changes/trove-2018-001.1 b/changes/trove-2018-001.1
deleted file mode 100644
index f0ee92f409..0000000000
--- a/changes/trove-2018-001.1
+++ /dev/null
@@ -1,6 +0,0 @@
- o Major bugfixes (denial-of-service, directory authority):
- - Fix a protocol-list handling bug that could be used to remotely crash
- directory authorities with a null-pointer exception. Fixes bug 25074;
- bugfix on 0.2.9.4-alpha. Also tracked as TROVE-2018-001.
-
-
diff --git a/changes/trove-2018-004 b/changes/trove-2018-004
deleted file mode 100644
index 37e0a89b0d..0000000000
--- a/changes/trove-2018-004
+++ /dev/null
@@ -1,8 +0,0 @@
- o Minor bugfixes (denial-of-service):
- - Fix a possible crash on malformed consensus. If a consensus had
- contained an unparseable protocol line, it could have made clients
- and relays crash with a null-pointer exception. To exploit this
- issue, however, an attacker would need to be able to subvert the
- directory-authority system. Fixes bug 25251; bugfix on
- 0.2.9.4-alpha. Also tracked as TROVE-2018-004.
-