Commit 5614137a authored by Nick Mathewson's avatar Nick Mathewson 🎨
Browse files

light movement and editing on changelog

parent 2845607f
...@@ -5,7 +5,9 @@ Changes in version 0.4.1.1-alpha - 2019-05-?? ...@@ -5,7 +5,9 @@ Changes in version 0.4.1.1-alpha - 2019-05-??
certain denial-of-service attacks more difficult, and improves certain denial-of-service attacks more difficult, and improves
performance in several areas. performance in several areas.
   
o Major features (Circuit padding): o Code simplification and refactoring (circuit padding):
o Major features (circuit padding):
- Onion service clients will now add padding cells to the initial - Onion service clients will now add padding cells to the initial
portions of their INTRODUCE and RENDEZVOUS circuits, to make those portions of their INTRODUCE and RENDEZVOUS circuits, to make those
circuits' traffic patterns look more like general purpose Exit circuits' traffic patterns look more like general purpose Exit
...@@ -42,15 +44,19 @@ Changes in version 0.4.1.1-alpha - 2019-05-?? ...@@ -42,15 +44,19 @@ Changes in version 0.4.1.1-alpha - 2019-05-??
time. Previously, the algorithm was quadratic, which could slow time. Previously, the algorithm was quadratic, which could slow
down heavily used onion services. Closes ticket 30307. down heavily used onion services. Closes ticket 30307.
   
o Minor feature (circuit padding): o Major features (performance, RNG):
- We now use a fast RNG when scheduling circuit padding. Part of - Tor now constructs a fast secure pseudorandom number generator for
ticket 28636. each thread, to use when performance is critical. This PRNG is
based on AES-CTR, using a buffering construction similar to
o Minor feature (maintenance scripts): libottery and the (newer) OpenBSD arc4random() code. It
- Add to scripts/maint/ helper maintainer scripts used for git outperforms OpenSSL 1.1.1a's CSPRNG by roughly a factor of 100 for
maintenance. Closes ticket 29391. small outputs. Although we believe it to be cryptographically
strong, we are only using it when necessary for reasonable
performance. Implements tickets 29023 and 29536.
   
o Minor features (circuit padding): o Minor features (circuit padding):
- We now use a fast RNG when scheduling circuit padding. Part of
ticket 28636.
- Allow the padding machine designer to pick the edges of their - Allow the padding machine designer to pick the edges of their
histogram instead of trying to compute them automatically using an histogram instead of trying to compute them automatically using an
exponential formula. Resolves some undefined behavior in the case exponential formula. Resolves some undefined behavior in the case
...@@ -90,39 +96,24 @@ Changes in version 0.4.1.1-alpha - 2019-05-?? ...@@ -90,39 +96,24 @@ Changes in version 0.4.1.1-alpha - 2019-05-??
load-balancing and statistical sampling decisions. Now we use our load-balancing and statistical sampling decisions. Now we use our
fast RNG in those cases. Closes ticket 29542. fast RNG in those cases. Closes ticket 29542.
   
o Minor features (developer tooling): o Minor features (developer tools):
- Tor's test scripts now check for files and functions that seem too
long and complicated. Existing overlong functions and files are
accepted for now, but should eventually be refactored. Closes
ticket 29221.
- Add to scripts/maint/ helper maintainer scripts used for git
maintenance. Closes ticket 29391.
- Call practracker from pre-push and pre-commit git hooks to let a - Call practracker from pre-push and pre-commit git hooks to let a
developer know if they made any code style violations in their developer know if they made any code style violations in their
last commit. This should help preventing code style violations last commit. This should help preventing code style violations
appearing upstream. Closes ticket 30051. appearing upstream. Closes ticket 30051.
- Call pre-commit git hook from pre-push hook to make sure we're
running documentation and code style checks before pushing to
remote git repository. Implements feature 30033.
- Modify git pre-push hook script to disallow pushing branches other
than master, release-* and maint-* to origin remote. Implements
feature 29532.
o Minor features (developer tools):
- Add a script to check that each header has a well-formed and - Add a script to check that each header has a well-formed and
unique guard marco. Closes ticket 29756. unique guard marco. Closes ticket 29756.
- Introduce a post-merge git hook script to check if we're pulling
in any changes to our git workspace management scripts from
upstream. Resolves issue 29588.
o Minor features (development tools):
- Tor's test scripts now check for files and functions that seem too
long and complicated. Existing overlong functions and files are
accepted for now, but should eventually be refactored. Closes
ticket 29221.
   
o Minor features (geoip): o Minor features (geoip):
- Update geoip and geoip6 to the May 13 2019 Maxmind GeoLite2 - Update geoip and geoip6 to the May 13 2019 Maxmind GeoLite2
Country database. Closes ticket 30522. Country database. Closes ticket 30522.
   
o Minor features (git scripts):
- In git-pull-all.sh, also fetch the latest tor-github pull
requests. Implements ticket 30114.
o Minor features (HTTP tunnel): o Minor features (HTTP tunnel):
- Return an informative web page when the HTTPTunnelPort is used as - Return an informative web page when the HTTPTunnelPort is used as
an HTTP proxy. Closes ticket 27821, patch by "eighthave". an HTTP proxy. Closes ticket 27821, patch by "eighthave".
...@@ -141,16 +132,6 @@ Changes in version 0.4.1.1-alpha - 2019-05-?? ...@@ -141,16 +132,6 @@ Changes in version 0.4.1.1-alpha - 2019-05-??
1.1.1 and later), since they tend to be faster than tiny-keccak. 1.1.1 and later), since they tend to be faster than tiny-keccak.
Closes ticket 28837. Closes ticket 28837.
   
o Minor features (performance, RNG):
- Tor now constructs a fast secure pseudorandom number generator for
each thread, to use for cases where performance is critical. This
PRNG is based on AES-CTR, using a buffering construction similar
to libottery and the (newer) OpenBSD arc4random() code. It
outperforms OpenSSL 1.1.1a's CSPRNG by roughly a factor of 100 for
small outputs. Although we believe it to be cryptographically
strong, we are only using it when necessary for reasonable
performance. Implements tickets 29023 and 29536.
o Minor features (testing): o Minor features (testing):
- Tor's unit test code now contains a standard set of functions to - Tor's unit test code now contains a standard set of functions to
replace the PRNG with a deterministic or reproducible version for replace the PRNG with a deterministic or reproducible version for
...@@ -159,6 +140,8 @@ Changes in version 0.4.1.1-alpha - 2019-05-?? ...@@ -159,6 +140,8 @@ Changes in version 0.4.1.1-alpha - 2019-05-??
- We now have a script, cov-test-determinism.sh, to identify places - We now have a script, cov-test-determinism.sh, to identify places
where our unit test coverage has become nondeterministic. Closes where our unit test coverage has become nondeterministic. Closes
ticket 29436. ticket 29436.
- Check that representative subsets of values of `int` and `unsigned
int` can be represented by `void *`. Resolves issue 29537.
   
o Minor bugfixes (bridge authority): o Minor bugfixes (bridge authority):
- We set bridges as running when we dump the bridge status to a - We set bridges as running when we dump the bridge status to a
...@@ -166,7 +149,7 @@ Changes in version 0.4.1.1-alpha - 2019-05-?? ...@@ -166,7 +149,7 @@ Changes in version 0.4.1.1-alpha - 2019-05-??
controller, but these shouldn't modify vital data structures. controller, but these shouldn't modify vital data structures.
Fixes bug 24490; bugfix on 0.2.0.13-alpha. Patch by Neel Chauhan Fixes bug 24490; bugfix on 0.2.0.13-alpha. Patch by Neel Chauhan
   
o Minor bugfixes (Channel padding statistics): o Minor bugfixes (channel padding statistics):
- Channel padding write totals and padding-enabled totals are now - Channel padding write totals and padding-enabled totals are now
counted properly in relay extrainfo descriptors. Fixes bug 29231; counted properly in relay extrainfo descriptors. Fixes bug 29231;
bugfix on 0.3.1.1-alpha bugfix on 0.3.1.1-alpha
...@@ -183,13 +166,11 @@ Changes in version 0.4.1.1-alpha - 2019-05-?? ...@@ -183,13 +166,11 @@ Changes in version 0.4.1.1-alpha - 2019-05-??
bugfix on 0.4.0.1-alpha. bugfix on 0.4.0.1-alpha.
- The circuit padding subsystem does not schedule padding if dormant - The circuit padding subsystem does not schedule padding if dormant
mode is enabled. Fixes bug 28636; bugfix on 0.4.0.1-alpha. mode is enabled. Fixes bug 28636; bugfix on 0.4.0.1-alpha.
o Minor bugfixes (circuitpadding):
- Inspect circuit-level cell queue before sending padding, to avoid - Inspect circuit-level cell queue before sending padding, to avoid
sending padding while too much data is queued. Fixes bug 29204; sending padding while too much data is queued. Fixes bug 29204;
bugfix on 0.4.0.1-alpha. bugfix on 0.4.0.1-alpha.
   
o Minor bugfixes (compilation, unusual configuration): o Minor bugfixes (compilation, unusual configurations):
- Avoid failures when building with ALL_BUGS_ARE_FAILED due to - Avoid failures when building with ALL_BUGS_ARE_FAILED due to
missing declarations of abort(), and prevent other such failures missing declarations of abort(), and prevent other such failures
in the future. Fixes bug 30189; bugfix on 0.3.4.1-alpha. in the future. Fixes bug 30189; bugfix on 0.3.4.1-alpha.
...@@ -200,16 +181,10 @@ Changes in version 0.4.1.1-alpha - 2019-05-?? ...@@ -200,16 +181,10 @@ Changes in version 0.4.1.1-alpha - 2019-05-??
couldn't distinguish an argument list from the first line of a couldn't distinguish an argument list from the first line of a
multiline object. Fixes bug 29984; bugfix on 0.2.3.8-alpha. multiline object. Fixes bug 29984; bugfix on 0.2.3.8-alpha.
   
o Minor bugfixes (developer tools): o Minor bugfixes (directory authority, ipv6):
- Update our pre-commit.git-hook script to work correctly on older - If we are a directory authity with IPv6 and are marking relays as
Tor branches and release branches without any changes files, and running, mark ourselves as reachable on IPv6. Fixes bug 24338;
to actually exit when something fails. Fixes bug 29553; bugfix bugfix on 0.4.0.2-alpha. Patch by Neel Chauhan
on 0.4.0.2-alpha.
o Minor bugfixes (dirauth, ipv6):
- If we are a durauth with IPv6 and are marking relays as running,
mark ourselves as reachable on IPv6. Fixes bug 24338; bugfix on
0.4.0.2-alpha. Patch by Neel Chauhan
   
o Minor bugfixes (documentation): o Minor bugfixes (documentation):
- Improve the documentation for MapAddress .exit. Fixes bug 30109; - Improve the documentation for MapAddress .exit. Fixes bug 30109;
...@@ -218,18 +193,12 @@ Changes in version 0.4.1.1-alpha - 2019-05-?? ...@@ -218,18 +193,12 @@ Changes in version 0.4.1.1-alpha - 2019-05-??
Explain what "monotonic" actually means, and document some results Explain what "monotonic" actually means, and document some results
that have surprised people. Fixes bug 29640; bugfix that have surprised people. Fixes bug 29640; bugfix
on 0.2.9.1-alpha. on 0.2.9.1-alpha.
o Minor bugfixes (documentation, manpage):
- Use proper formatting when providing an example on quoting options - Use proper formatting when providing an example on quoting options
that contain whitespace. Fixes bug 29635; bugfix on 0.2.3.18-rc. that contain whitespace. Fixes bug 29635; bugfix on 0.2.3.18-rc.
   
o Minor bugfixes (lib):
o Minor bugfixes (logging): o Minor bugfixes (logging):
- Do not log a warning for OpenSSL versions that should be - Do not log a warning for OpenSSL versions that should be
compatible. Fixes bug 30190; bugfix on 0.2.4.2-alpha compatible. Fixes bug 30190; bugfix on 0.2.4.2-alpha
o Minor bugfixes (logging, configuration):
- Warn operators when MyFamily option is set but ContactInfo is - Warn operators when MyFamily option is set but ContactInfo is
missing, as the latter should be set too. Fixes bug 25110; bugfix missing, as the latter should be set too. Fixes bug 25110; bugfix
on 0.3.3.1-alpha. on 0.3.3.1-alpha.
...@@ -255,6 +224,10 @@ Changes in version 0.4.1.1-alpha - 2019-05-?? ...@@ -255,6 +224,10 @@ Changes in version 0.4.1.1-alpha - 2019-05-??
we only set this flag when we received a INTRODUCE2 cell in we only set this flag when we received a INTRODUCE2 cell in
rend_service_receive_introduction(). Fixes bug 17357; bugfix on rend_service_receive_introduction(). Fixes bug 17357; bugfix on
0.4.0.2-alpha. Patch by Neel Chauhan 0.4.0.2-alpha. Patch by Neel Chauhan
- Stop ignoring IPv6 link specifiers sent to v3 onion services. v3
onion service IPv6 support is still incomplete, see 23493 for
details. Fixes bug 23588; bugfix on 0.3.2.1-alpha. Patch by
Neel Chauhan.
   
o Minor bugfixes (onion services, performance): o Minor bugfixes (onion services, performance):
- If we are building circuits to onion services, in - If we are building circuits to onion services, in
...@@ -301,18 +274,8 @@ Changes in version 0.4.1.1-alpha - 2019-05-?? ...@@ -301,18 +274,8 @@ Changes in version 0.4.1.1-alpha - 2019-05-??
- Call setrlimit() to disable core dumps in test_bt_cl.c instead of - Call setrlimit() to disable core dumps in test_bt_cl.c instead of
using `ulimit -c` in test_bt.sh, which violates POSIX shell using `ulimit -c` in test_bt.sh, which violates POSIX shell
compatibility. Fixes bug 29061; bugfix on 0.3.5.1-alpha. compatibility. Fixes bug 29061; bugfix on 0.3.5.1-alpha.
o Minor bugfixes (testing, v3 onion services):
- Fix some incorrect code in the v3 onion service unit tests. Fixes - Fix some incorrect code in the v3 onion service unit tests. Fixes
bug 29243; bugfix on 0.3.2.1-alpha. bug 29243; bugfix on 0.3.2.1-alpha.
o Minor bugfixes (tor-resolve):
- Fix a memory leak in tor-resolve that could happen if Tor gave it
a malformed SOCKS response. (Memory leaks in tor-resolve don't
actually matter, but it's good to fix them anyway.) Fixes bug
30151; bugfix on 0.4.0.1-alpha.
o Minor bugfixes (unit tests):
- In the "routerkeys/*" tests, check the return values of mkdir() - In the "routerkeys/*" tests, check the return values of mkdir()
for possible failures. Fixes bug 29939; bugfix on 0.2.7.2-alpha. for possible failures. Fixes bug 29939; bugfix on 0.2.7.2-alpha.
Found by Coverity as CID 1444254. Found by Coverity as CID 1444254.
...@@ -321,11 +284,11 @@ Changes in version 0.4.1.1-alpha - 2019-05-?? ...@@ -321,11 +284,11 @@ Changes in version 0.4.1.1-alpha - 2019-05-??
deallocation on assert failure and fixes Coverity warnings CID deallocation on assert failure and fixes Coverity warnings CID
1444117 and CID 1444118. Fixes bug 29823; bugfix on 0.2.9.1-alpha. 1444117 and CID 1444118. Fixes bug 29823; bugfix on 0.2.9.1-alpha.
   
o Minor bugfixes (v3 onion services): o Minor bugfixes (tor-resolve):
- Stop ignoring IPv6 link specifiers sent to v3 onion services. v3 - Fix a memory leak in tor-resolve that could happen if Tor gave it
onion service IPv6 support is still incomplete, see 23493 for a malformed SOCKS response. (Memory leaks in tor-resolve don't
details. Fixes bug 23588; bugfix on 0.3.2.1-alpha. Patch by actually matter, but it's good to fix them anyway.) Fixes bug
Neel Chauhan. 30151; bugfix on 0.4.0.1-alpha.
   
o Code simplification and refactoring: o Code simplification and refactoring:
- Abstract out the low-level formatting of replies on the control - Abstract out the low-level formatting of replies on the control
...@@ -380,12 +343,6 @@ Changes in version 0.4.1.1-alpha - 2019-05-?? ...@@ -380,12 +343,6 @@ Changes in version 0.4.1.1-alpha - 2019-05-??
- Remove obsolete OpenSUSE initscript. Resolves issue 30076. - Remove obsolete OpenSUSE initscript. Resolves issue 30076.
- Remove the obsolete script at contrib/dist/tor.sh.in. Resolves - Remove the obsolete script at contrib/dist/tor.sh.in. Resolves
issue 30075. issue 30075.
o Testing:
- Check that representative subsets of values of `int` and `unsigned
int` can be represented by `void *`. Resolves issue 29537.
o Code simplification and refactoring (circuit padding):
- Avoid calling monotime_absolute_usec() in circuit padding machines - Avoid calling monotime_absolute_usec() in circuit padding machines
that do not use token removal or circuit RTT estimation. Fixes bug that do not use token removal or circuit RTT estimation. Fixes bug
29085; bugfix on 0.4.0.1-alpha. 29085; bugfix on 0.4.0.1-alpha.
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