summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2017-04-26Bump version to 0.3.0.6Nick Mathewson
2017-04-24Merge branch 'maint-0.2.9' into maint-0.3.0Nick Mathewson
2017-04-24control: Wrong check on base16_decode return valueDavid Goulet
The GETINFO extra-info/digest/<digest> broke in commit 568dc27a19 that refactored the base16_decode() API to return the decoded length. Unfortunately, that if() condition should have checked for the correct length instead of an error which broke the command in tor-0.2.9.1-alpha. Fixes #22034 Signed-off-by: David Goulet <dgoulet@torproject.org>
2017-04-07Merge remote-tracking branch 'public/bug21894_029' into maint-0.3.0Nick Mathewson
2017-04-07Never read off the end of a buffer in base32_encode()Nick Mathewson
When we "fixed" #18280 in 4e4a7d2b0c199227252a742541461ec4cc35d358 in 0291 it appears that we introduced a bug: The base32_encode function can read off the end of the input buffer, if the input buffer size modulo 5 is not equal to 0 or 3. This is not completely horrible, for two reasons: * The extra bits that are read are never actually used: so this is only a crash when asan is enabled, in the worst case. Not a data leak. * The input sizes passed to base32_encode are only ever multiples of 5. They are all either DIGEST_LEN (20), REND_SERVICE_ID_LEN (10), sizeof(rand_bytes) in addressmap.c (10), or an input in crypto.c that is forced to a multiple of 5. So this bug can't actually trigger in today's Tor. Closes bug 21894; bugfix on 0.2.9.1-alpha.
2017-04-06Merge branch 'maint-0.2.9' into maint-0.3.0Nick Mathewson
2017-04-06Merge branch 'maint-0.2.8' into maint-0.2.9Nick Mathewson
2017-04-06Merge branch 'maint-0.2.7-redux' into maint-0.2.8Nick Mathewson
2017-04-06Merge branch 'maint-0.2.6' into maint-0.2.7-reduxNick Mathewson
2017-04-06Merge branch 'maint-0.2.5' into maint-0.2.6Nick Mathewson
2017-04-06Merge branch 'maint-0.2.4' into maint-0.2.5Nick Mathewson
2017-04-06Update geoip and geoip6 to the April 4 2017 database.Karsten Loesing
2017-04-05bump to 0.3.0.5-rc-devNick Mathewson
2017-04-04hs: Expose hs_service.c functions for unit testsDavid Goulet
In order to avoid src/or/hs_service.o to contain no symbols and thus making clang throw a warning, the functions are now exposed not just to unit tests. Signed-off-by: David Goulet <dgoulet@torproject.org>
2017-04-03version bumpNick Mathewson
2017-04-03Merge remote-tracking branch 'teor/bug21596_030' into maint-0.3.0Nick Mathewson
2017-04-03Merge remote-tracking branch 'public/bug21415_testfix_030' into maint-0.3.0Nick Mathewson
2017-03-27Fix max sampled size logic when in bridge mode.George Kadianakis
When calculating max sampled size, Tor would only count the number of bridges in torrc, without considering that our state file might already have sampled bridges in it. This caused problems when people swap bridges, since the following error would trigger: [warn] Not expanding the guard sample any further; just hit the maximum sample threshold of 1
2017-03-26Tweak test_entrynodes commentNick Mathewson
2017-03-23Use update_approx_time() to run a test 100 days in the past.Nick Mathewson
Fixes bug21799.
2017-03-15Merge branch 'bug20059_024_v2' into maint-0.3.0Nick Mathewson
2017-03-15Avoid a double-mark bug when makring a pending circuit as "too old"Nick Mathewson
Fixes bug 20059; bugfix on 0.1.0.1-rc.
2017-03-13Merge remote-tracking branch 'public/bug21682_030' into maint-0.3.0Nick Mathewson
2017-03-09Fix failing bridges+ipv6-min integration test.George Kadianakis
The bridges+ipv6-min integration test has a client with bridges: Bridge 127.0.0.1:5003 Bridge [::1]:5003 which got stuck in guard_selection_have_enough_dir_info_to_build_circuits() because it couldn't find the descriptor of both bridges. Specifically, the guard_has_descriptor() function could not find the node_t of the [::1] bridge, because the [::1] bridge had no identity digest assigned to it. After further examination, it seems that during fetching the descriptor for our bridges, we used the CERTS cell to fill the identity digest of 127.0.0.1:5003 properly. However, when we received a CERTS cell from [::1]:5003 we actually ignored its identity digest because the learned_router_identity() function was using get_configured_bridge_by_addr_port_digest() which was returning the 127.0.0.1 bridge instead of the [::1] bridge (because it prioritizes digest matching over addrport matching). The fix replaces get_configured_bridge_by_addr_port_digest() with the recent get_configured_bridge_by_exact_addr_port_digest() function. It also relaxes the constraints of the get_configured_bridge_by_exact_addr_port_digest() function by making it return bridges whose identity digest is not yet known. By using the _exact_() function, learned_router_identity() actually fills in the identity digest of the [::1] bridge, which then allows guard_has_descriptor() to find the right node_t and verify that the descriptor is there. FWIW, in the bridges+ipv6-min test both 127.0.0.1 and [::1] bridges correspond to the same node_t, which I guess makes sense given that it's actually the same underlying bridge.
2017-03-09Revert "Restore correct behavior of 0.3.0.4-rc with bridges+ipv6-min"George Kadianakis
This reverts commit 5298ab59170be74aed20e04e5378ec66eef6476e.
2017-03-08Merge branch 'maint-0.2.9' into maint-0.3.0Nick Mathewson
2017-03-08Merge branch 'maint-0.2.8' into maint-0.2.9Nick Mathewson
2017-03-08Merge branch 'maint-0.2.7-redux' into maint-0.2.8Nick Mathewson
2017-03-08Merge branch 'maint-0.2.6' into maint-0.2.7-reduxNick Mathewson
2017-03-08Merge branch 'maint-0.2.5' into maint-0.2.6Nick Mathewson
2017-03-08Merge branch 'maint-0.2.4' into maint-0.2.5Nick Mathewson
2017-03-08Fix a memory leak in config_get_assigned_option()Nick Mathewson
This was introducd in 4d83999213712c7 in 0.3.0.3-alpha. This is bug 21682.
2017-03-08Update geoip and geoip6 to the March 7 2017 database.Karsten Loesing
2017-03-07Merge branch 'bug21594_030_squashed' into maint-0.3.0Nick Mathewson
2017-03-07Remove delay in hidden service introduction point checksteor
Make hidden services with 8 to 10 introduction points check for failed circuits immediately after startup. Previously, they would wait for 5 minutes before performing their first checks. Fixes bug 21594; bugfix on commit 190aac0eab9 in Tor 0.2.3.9-alpha. Reported by alecmuffett.
2017-03-04Merge remote-tracking branch 'teor/bug21576_029_v2' into maint-0.3.0Nick Mathewson
2017-03-02Make hidden services always check for failed intro point connectionsteor
Previously, they would stop checking when they exceeded their intro point creation limit. Fixes bug 21596; bugfix on commit d67bf8b2f23 in Tor 0.2.7.2-alpha. Reported by alecmuffett.
2017-03-02Fix a crash when a connection tries to open just after it has been unlinkedteor
Fixes bug 21576; bugfix on Tor 0.2.9.3-alpha. Reported by alecmuffett.
2017-03-01Bump to 0.3.0.4-rc-devNick Mathewson
2017-03-01Restore correct behavior of 0.3.0.4-rc with bridges+ipv6-minNick Mathewson
In that chutney test, the bridge client is configured to connect to the same bridge at 127.0.0.1:5003 _and_ at [::1]:5003, with no change in transports. That meant, I think, that the descriptor is only assigned to the first bridge when it arrives, and never the second.
2017-03-01Improve descriptor checks in the new guard algorithm.George Kadianakis
- Make sure we check at least two guards for descriptor before making circuits. We typically use the first primary guard for circuits, but it can also happen that we use the second primary guard (e.g. if we pick our first primary guard as an exit), so we should make sure we have descriptors for both of them. - Remove BUG() from the guard_has_descriptor() check since we now know that this can happen in rare but legitimate situations as well, and we should just move to the next guard in that case.
2017-03-01Bump to 0.2.9.10-devNick Mathewson
2017-03-01Remove the space before the interpreter name in test-network.shteor
Apparently some unixes don't like this. Part of #21581.
2017-03-01Restore support for test-network.sh on BSD and other systems without bashteor
(But use bash if it's available.) This is a workaround until we remove bash-specific code in 19699. Fixes bug 21581; bugfix on 21562, not in any released version of tor.
2017-02-28bump version to 0.3.0.4-rcNick Mathewson
2017-02-28bump version to 0.2.9.10Nick Mathewson
2017-02-28bump version to 0.2.8.13Nick Mathewson
2017-02-28Bump version to 0.2.7.7Nick Mathewson
2017-02-28bump to 0.2.6.11Nick Mathewson
2017-02-28Bump version to 0.2.5.13Nick Mathewson