commit 383a6fb90fb79ff4fb55548d40bee2b8999da22b
Author: Nick Mathewson <nickm(a)torproject.org>
Date: Thu Jan 25 11:00:30 2018 -0500
More editing on the ChangeLog
---
ChangeLog | 161 +++++++++++++++++++++++++++-----------------------------------
1 file changed, 71 insertions(+), 90 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index ae5f48d6e..4cc3c58f7 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,11 +1,5 @@
-Changes in version 0.3.3.1-alpha - 2018-01-??:
- Blurb goes here
-
- o Major features (onion services, security):
- - 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. Closes ticket 13837.
+Changes in version 0.3.3.1-alpha - 2018-01-25:
+ Tor 0.3.3.1-alpha is the first release
o Major features (embedding):
- There is now a documented stable API for programs that need to
@@ -14,35 +8,39 @@ Changes in version 0.3.3.1-alpha - 2018-01-??:
- 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 have fixed the crash bugs that prevented it from
- working at all before, but many bugs probably remain, including
- the possibility of security issues. Implements ticket 24581.
+ 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 makes it easier for IPv6 clients to bootstrap and
- choose reachable entry guards. Implements 23826.
+ consensus. This information it easier for IPv6 clients to
+ bootstrap and choose reachable entry guards. Implements 23826.
- Add consensus method 28, which removes IPv6 ORPorts from
- microdescriptors. Now that there are IPv6 ORPorts in the microdesc
- consensus, they are redundant in microdescs. This change is
- compatible with tor clients on 0.2.8.x and later. (That is to say,
- with all Tor clients having IPv6 bootstrap and guard support.)
+ microdescriptors. Now that there are 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.
- 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):
- - Control port now supports command and events for v3 onion
- services. See proposal 284 for more information on what has been
- done exactly. Only the HSFETCH command hasn't been implemented at
- this stage because of a lack of use case with v3.
-
- It is now possible to create ephemeral v3 services using the
- ADD_ONION command. 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.
+ - The control port now supports command 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 a "vanguards" for preventing guard enumeration attacks.
+ Closes ticket 13837.
o Major features (rust, portability, experimental):
- Tor now ships with an optional implementation of one of its
@@ -54,18 +52,18 @@ Changes in version 0.3.3.1-alpha - 2018-01-??:
Implementation by Chelsea Komlo. Closes ticket 22840.
o Major features (storage, configuration):
- - Users can choose to 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.
+ - 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 Major features (v3 onion services, ipv6):
- - When v3 onion service clients send introduce cells, include the
- IPv6 address of the rendezvous point, if it has one. v3 onion
- services running 0.3.2 ignore IPv6 addresses. In future Tor
- versions, IPv6-only v3 single onion services can use IPv6
- addresses to connect directly to the rendezvous point. Closes
- ticket 23577. Patch by Neel Chauhan.
+ - 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 IPv6 addresses to connect directly to the rendezvous
+ point. Closes ticket 23577. Patch by Neel Chauhan.
o Major bugfixes (onion services, retry behavior):
- Fix an "off by 2" error in counting rendezvous failures on the
@@ -99,11 +97,6 @@ Changes in version 0.3.3.1-alpha - 2018-01-??:
- Tor now deletes the CookieAuthFile and ExtORPortCookieAuthFile
when it stops. Closes ticket 23271.
- o Minor features (code correctness, descriptors):
- - Check that microdesc ed25519 ids are non-zero in
- node_get_ed25519_id(), before returning them. Implements 24001,
- patch by "aruna1234".
-
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
@@ -111,6 +104,9 @@ Changes in version 0.3.3.1-alpha - 2018-01-??:
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 24001,
+ patch by "aruna1234".
o Minor features (directory authority):
- Make the "Exit" flag assignment only depend on whether the exit
@@ -128,14 +124,13 @@ Changes in version 0.3.3.1-alpha - 2018-01-??:
- 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 difference on platforms that try
- to 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.
+ but it should make a 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. This option is not meant for
- general use. Closes ticket 24588.
+ __DisableSignalHandlers option. Closes ticket 24588.
o Minor features (fallback directory list):
- Avoid selecting fallbacks that change their IP addresses too
@@ -172,6 +167,8 @@ Changes in version 0.3.3.1-alpha - 2018-01-??:
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
@@ -201,12 +198,6 @@ Changes in version 0.3.3.1-alpha - 2018-01-??:
- Added support for the Android logging subsystem. Closes
ticket 24362.
- o Minor features (OSX, iOS, performance):
- - 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):
- Support predictive circuit building for onion service circuits
with multiple layers of guards. Closes ticket 23101.
@@ -221,6 +212,12 @@ Changes in version 0.3.3.1-alpha - 2018-01-??:
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
@@ -263,13 +260,6 @@ Changes in version 0.3.3.1-alpha - 2018-01-??:
the TOR_RUST_DEPENDENCIES option set. Fixes bug 22768; bugfix
on 0.3.1.7.
- o Minor bugfixes (code correctness):
- - Stop invoking undefined behavior by using tor_free() on an
- unaligned pointer in get_interface_addresses_ioctl(). This pointer
- alignment issue exists on x86_64 macOS, but is unlikely to exist
- elsewhere. Fixes bug 24733; bugfix on 0.3.0.0-alpha-dev; not in
- any released version of tor.
-
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
@@ -281,12 +271,10 @@ Changes in version 0.3.3.1-alpha - 2018-01-??:
don't put it in /usr/bin.) Fixes bug 24708; bugfix
on 0.2.8.1-alpha.
- o Minor bugfixes (hibernation):
+ 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.
-
- o Minor bugfixes (hibernation, bandwidth accounting, shutdown):
- Do not attempt to launch self-reachability tests when entering
hibernation. Fixes a base of bug 12062; bugfix on 0.0.9pre5.
- Resolve several bugs related to descriptor fetching on bridge
@@ -299,11 +287,11 @@ Changes in version 0.3.3.1-alpha - 2018-01-??:
Fixes a case of bug 12062; bugfix on 0.0.9pre5.
o Minor bugfixes (IPv6, bridges):
- - Tor now always sets IPv6 preferences for bridges, even if there is
- only router information or router status and warns about them.
- Fixes bug 24573; bugfix on 0.2.8.2-alpha.
- - Tor now sets IPv6 address in rs as well as it's set the one in ri.
- Closes ticket 24572; bugfix on 0.2.4.5-alpha. Patch by "ffmancera".
+ - 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
@@ -323,7 +311,12 @@ Changes in version 0.3.3.1-alpha - 2018-01-??:
limit (which can happen sometimes on some versions of OSX). Fixes
bug 21074; bugfix on 0.0.9pre5.
- o Minor bugfixes (performance):
+ o Minor bugfixes (performance, fragile-hardening):
+ - 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 (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
@@ -336,11 +329,6 @@ Changes in version 0.3.3.1-alpha - 2018-01-??:
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 (performance, fragile-hardening):
- - 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 (testing):
- Give out Exit flags in bootstrapping networks. Fixes bug 24137;
bugfix on 0.2.3.1-alpha.
@@ -375,7 +363,7 @@ Changes in version 0.3.3.1-alpha - 2018-01-??:
o Documentation:
- Add documentation on how to build tor with Rust dependencies
- without requiring being online. Closes ticket 22907; bugfix
+ without having to beonline. Closes ticket 22907; bugfix
on 0.3.0.3-alpha.
- Clarify the behavior of RelayBandwidth{Rate,Burst} with client
traffic. Closes ticket 24318.
@@ -386,31 +374,24 @@ Changes in version 0.3.3.1-alpha - 2018-01-??:
ticket 24526.
o Code simplification and refactoring (channels):
- - Remove the incoming and outgoing channel queues. The reason to do
- so was due to the fact that they were always empty meaning never
- used but still looked at in our fast path. Bottom line, it was an
- unused code path.
+ - 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.
- - We've simplify a lot the channel subsystem by removing those
- queues but also by removing a lot of unused code or dead code
- around it. Overall this is a cleanup removing more than 1500 lines
- of code overall and adding very little except for unit test.
+ - Remove other dead code from the a lot 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 get rendezvous circuit on client side on two different
- functions. One that returns only established circuits and another
+ - Split the client-size 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 Code simplification and refactoring (fallbacks):
- - Stop logging excessive information about fallback netblocks.
- Implements ticket 24791.
-
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.