[tor-bugs] #30776 [Core Tor/Tor]: Circpad circuits do not expire as intended

Tor Bug Tracker & Wiki blackhole at torproject.org
Wed Jun 5 18:35:27 UTC 2019


#30776: Circpad circuits do not expire as intended
------------------------------+------------------------------------
 Reporter:  asn               |          Owner:  (none)
     Type:  defect            |         Status:  new
 Priority:  Medium            |      Milestone:  Tor: 0.4.1.x-final
Component:  Core Tor/Tor      |        Version:
 Severity:  Normal            |     Resolution:
 Keywords:  041-must wtf-pad  |  Actual Points:
Parent ID:                    |         Points:
 Reviewer:                    |        Sponsor:
------------------------------+------------------------------------
Description changed by asn:

Old description:

> I saw the following logs in my logs of Tor master (includes #28780,
> #28634 and #29034):
> {{{
> Jun 05 16:44:59.442 [notice] circpad_marked_circuit_for_padding(): Bug:
> Circuit 6 was not marked for close because of a  pending padding machine
> for over an hour. Circuit is a Circuit kept open for padding (on Tor
> 0.4.1.2-alpha 7f341d64828d48eb)
> Jun 05 16:49:07.888 [notice] circpad_marked_circuit_for_padding(): Bug:
> Circuit 10 was not marked for close because of a  pending padding machine
> for over an hour. Circuit is a Circuit kept open for padding (on Tor
> 0.4.1.2-alpha 7f341d64828d48eb)
> Jun 05 16:51:42.130 [notice] circpad_marked_circuit_for_padding(): Bug:
> Circuit 16 was not marked for close because of a  pending padding machine
> for over an hour. Circuit is a Circuit kept open for padding (on Tor
> 0.4.1.2-alpha 7f341d64828d48eb)
> }}}
>
> Seems like the logic that is supposed to expire circuits does not work.
> In particular I see the following pattern per-circuit:
> {{{
> Jun 05 15:37:03.318 [info] circpad_marked_circuit_for_padding(): Circuit
> 10 is not marked for close because of a  pending padding machine.
> ... 10 minutes pass...
> Jun 05 15:47:07.862 [info] circpad_marked_circuit_for_padding(): Circuit
> 10 is not marked for close because of a  pending padding machine.
> Jun 05 15:47:38.896 [info] circpad_marked_circuit_for_padding(): Circuit
> 10 is not marked for close because of a  pending padding machine.
> Jun 05 15:48:09.921 [info] circpad_marked_circuit_for_padding(): Circuit
> 10 is not marked for close because of a  pending padding machine.
> Jun 05 15:48:40.958 [info] circpad_marked_circuit_for_padding(): Circuit
> 10 is not marked for close because of a  pending padding machine.
> Jun 05 15:49:11.998 [info] circpad_marked_circuit_for_padding(): Circuit
> 10 is not marked for close because of a  pending padding machine.
> Jun 05 15:49:42.041 [info] circpad_marked_circuit_for_padding(): Circuit
> 10 is not marked for close because of a  pending padding machine.
> ... <etc>
> Jun 05 16:49:07.888 [notice] circpad_marked_circuit_for_padding(): Bug:
> Circuit 10 was not marked for close because of a  pending padding machine
> for over an hour. Circu
> it is a Circuit kept open for padding (on Tor 0.4.1.2-alpha
> 7f341d64828d48eb)
> }}}
>
> so it seems like the machine is still alive, or something thinks it still
> is.
>
> The good thing is that the circuit does not stay up for ever and it does
> get closed after an hour, but our logic is still failing.
>
> I think this is a definite 041-must but perhaps we don't need to stall
> the alpha for it.

New description:

 **Still investigating this bug. Might be caused by an outdated version of
 #28634 on the relay-side and might actually not be a bug.**

 I saw the following logs in my logs of Tor master (includes #28780, #28634
 and #29034):
 {{{
 Jun 05 16:44:59.442 [notice] circpad_marked_circuit_for_padding(): Bug:
 Circuit 6 was not marked for close because of a  pending padding machine
 for over an hour. Circuit is a Circuit kept open for padding (on Tor
 0.4.1.2-alpha 7f341d64828d48eb)
 Jun 05 16:49:07.888 [notice] circpad_marked_circuit_for_padding(): Bug:
 Circuit 10 was not marked for close because of a  pending padding machine
 for over an hour. Circuit is a Circuit kept open for padding (on Tor
 0.4.1.2-alpha 7f341d64828d48eb)
 Jun 05 16:51:42.130 [notice] circpad_marked_circuit_for_padding(): Bug:
 Circuit 16 was not marked for close because of a  pending padding machine
 for over an hour. Circuit is a Circuit kept open for padding (on Tor
 0.4.1.2-alpha 7f341d64828d48eb)
 }}}

 Seems like the logic that is supposed to expire circuits does not work. In
 particular I see the following pattern per-circuit:
 {{{
 Jun 05 15:37:03.318 [info] circpad_marked_circuit_for_padding(): Circuit
 10 is not marked for close because of a  pending padding machine.
 ... 10 minutes pass...
 Jun 05 15:47:07.862 [info] circpad_marked_circuit_for_padding(): Circuit
 10 is not marked for close because of a  pending padding machine.
 Jun 05 15:47:38.896 [info] circpad_marked_circuit_for_padding(): Circuit
 10 is not marked for close because of a  pending padding machine.
 Jun 05 15:48:09.921 [info] circpad_marked_circuit_for_padding(): Circuit
 10 is not marked for close because of a  pending padding machine.
 Jun 05 15:48:40.958 [info] circpad_marked_circuit_for_padding(): Circuit
 10 is not marked for close because of a  pending padding machine.
 Jun 05 15:49:11.998 [info] circpad_marked_circuit_for_padding(): Circuit
 10 is not marked for close because of a  pending padding machine.
 Jun 05 15:49:42.041 [info] circpad_marked_circuit_for_padding(): Circuit
 10 is not marked for close because of a  pending padding machine.
 ... <etc>
 Jun 05 16:49:07.888 [notice] circpad_marked_circuit_for_padding(): Bug:
 Circuit 10 was not marked for close because of a  pending padding machine
 for over an hour. Circu
 it is a Circuit kept open for padding (on Tor 0.4.1.2-alpha
 7f341d64828d48eb)
 }}}

 so it seems like the machine is still alive, or something thinks it still
 is.

 The good thing is that the circuit does not stay up for ever and it does
 get closed after an hour, but our logic is still failing.

 I think this is a definite 041-must but perhaps we don't need to stall the
 alpha for it.

--

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


More information about the tor-bugs mailing list