[tor-bugs] #9776 [Tor]: Long-running tor client doesn't build new circuits anymore

Tor Bug Tracker & Wiki blackhole at torproject.org
Mon Sep 23 15:53:58 UTC 2013


#9776: Long-running tor client doesn't build new circuits anymore
-------------------------+--------------------------------
     Reporter:  karsten  |      Owner:
         Type:  defect   |     Status:  new
     Priority:  normal   |  Milestone:  Tor: 0.2.4.x-final
    Component:  Tor      |    Version:  Tor: 0.2.4.17-rc
   Resolution:           |   Keywords:  tor-client
Actual Points:           |  Parent ID:
       Points:           |
-------------------------+--------------------------------

Comment (by andrea):

 The bug here is that channel_closed() doesn't call circuit_n_chan_done()
 unless chan->reason_for_closing == CHANNEL_CLOSE_FOR_ERROR, so in a few
 cases where a channel can close from below without error like timeouts
 from run_connection_housekeeping() it can leak pending circuits.  If
 skruffy means that (rather than implying that channel_closed() doesn't run
 at all in that case), then his analysis is correct.

 I think his comment that run_connection_housekeeping() is 'incompatible
 with chans' is not well supported though; this seems to be a localized bug
 in channel_closed().  Since it looks harmless to run circuit_n_chan_done()
 in any case, I suggest simply removing the chan->reason_for_closing ==
 CHANNEL_CLOSE_FOR_ERROR test.

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


More information about the tor-bugs mailing list