Commit 383a6fb9 authored by Nick Mathewson's avatar Nick Mathewson 🎨
Browse files

More editing on the ChangeLog

parent d592cfad
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.
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment