[tor-bugs] #19969 [Core Tor/Tor]: tor client does not immediately open new circuits after standby

Tor Bug Tracker & Wiki blackhole at torproject.org
Tue Nov 1 03:04:04 UTC 2016


#19969: tor client does not immediately open new circuits after standby
-------------------------------------------------+-------------------------
 Reporter:  weasel                               |          Owner:
     Type:  defect                               |         Status:
                                                 |  needs_review
 Priority:  High                                 |      Milestone:  Tor:
                                                 |  0.2.9.x-final
Component:  Core Tor/Tor                         |        Version:  Tor:
                                                 |  0.2.8.6
 Severity:  Normal                               |     Resolution:
 Keywords:  regression 029-backport              |  Actual Points:
  028-backport                                   |
Parent ID:                                       |         Points:  2
 Reviewer:                                       |        Sponsor:
-------------------------------------------------+-------------------------

Comment (by arma):

 Replying to [comment:26 nickm]:
 > My `bug19969_028_small` is an alternative minimized version that tries
 to do this once a second unless the network is disabled.

 That is a compellingly small fix.

 I bet it would work -- specifically, it would resolve bug A in the
 previous comment, and would leave bug B in place, and I don't think it
 would break things much.

 I spent a little while pondering yet another alternative approach: trying
 to draw up the big "if it's not going to work, optimistically try again"
 clause from circuit_get_open_circ_or_launch() and put it into
 connection_ap_mark_as_pending_circuit(), so we trigger the directory reset
 right then, and then we don't need to call those other functions at all
 when !have_dir_info. But I think that approach would end up too messy
 also.

 One thing I'm still nervous about though is having one fix in 028 and a
 different one in 029. It would mean that we effectively never test the 028
 fix until it gets into the hands of users, who think of it as a stable
 update. Whereas if put something convincing into 029, and then also had it
 in 028, we would have a better chance of finding problems with it.

 Can we balance that by putting your 028 fix into both 028 *and* 029, and
 then my 029 fix into just 029? Or will we be happier if we pick just one
 of them (either one, really) and use it for both backports?

 Hm. I feel like I'm overthinking, but also this is complicated code and
 getting it wrong would be no fun.

 I think I favor either (1) putting your 028 into both 028 and 029, and my
 029 into 029, or (2) putting my 029 into both 028 and 029. With slight
 preference for option 2 at present, since (i) the thing that is in 028
 would get testing in 029, and (ii) it would resolve bug B as well.

--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/19969#comment:29>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online


More information about the tor-bugs mailing list