[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
[tor-bugs] #19069 [Core Tor/Tor]: When DisableNetwork is 1 but !circuit_enough_testing_circs(), we can still launch circuits
#19069: When DisableNetwork is 1 but !circuit_enough_testing_circs(), we can still
launch circuits
------------------------------+--------------------------
Reporter: arma | Owner:
Type: defect | Status: new
Priority: Medium | Milestone: Tor: 0.2.???
Component: Core Tor/Tor | Version:
Severity: Normal | Keywords:
Actual Points: | Parent ID:
Points: | Reviewer:
Sponsor: |
------------------------------+--------------------------
In consider_testing_reachability(), we check
{{{
if (test_or && (!orport_reachable || !circuit_enough_testing_circs())) {
}}}
Once #18616 is merged, the first function will return 1 for
orport_reachable when DisableNetwork is 1, so that bug will go away.
But it will remain the case that if !circuit_enough_testing_circs(), we
will proceed to call circuit_launch_by_extend_info(), even when
DisableNetwork is 1.
There are four places that call consider_testing_reachability():
* circuitbuild.c:circuit_send_next_onion_skin()
* circuituse.c:circuit_testing_opened()
* main.c:directory_info_has_arrived()
* main.c:check_for_reachability_bw_callback()
I think the middle two are safe, since they shouldn't happen while
DisableNetwork is set.
I think the first one is iffy, since it's called from a bunch of places so
I'm not sure, but given the name I hope it doesn't get called during
DisableNetwork.
And I think the fourth one is bad news, since it gets called periodically
and doesn't check DisableNetwork.
--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/19069>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online
_______________________________________________
tor-bugs mailing list
tor-bugs@xxxxxxxxxxxxxxxxxxxx
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-bugs