#28780: circpadding: Add machine flag for not closing circuit if machine is active -------------------------------------------------+------------------------- Reporter: asn | Owner: (none) Type: defect | Status: | needs_review Priority: Very High | Milestone: Tor: | 0.4.1.x-final Component: Core Tor/Tor | Version: Severity: Normal | Resolution: Keywords: wtf-pad, tor-relay, tor-cell, | Actual Points: 6 padding, 041-proposed, network-team- | roadmap-2019-Q1Q2 | Parent ID: #28634 | Points: 5 Reviewer: asn | Sponsor: | Sponsor2 -------------------------------------------------+------------------------- Changes (by mikeperry):
* status: needs_revision => needs_review Comment: Freshly squashed nicely organized PR that addresses previous comments: https://github.com/torproject/tor/pull/1015 Summary of branch: * Still hooks circuit_mark_for_close(), but the circpad_is_using_circuit_for_padding() function name and mechanism are much clearer. * Only one return branch in the circpad_is_using_circuit_for_padding() function keeps the circuit open. All others result in relinquishing ownership to circuit_mark_for_close()/circuit_expire_old_circuits_clientside(). * It is easy to see that this one branch cannot hold the circuit open for more than CIRCPAD_DELAY_MAX_SECS (1.25hr) of inactivity on a circuit, even if it is deadlocked. This is also verified in the unit tests, by testing circuit_expire_old_circuits_clientside() directly. * If padding machines deadlock by ping-ponging (sending padding back and forth forever), then they will hit their machine-specific padding overhead limits, and cease padding. At which point, network activity on the circuit will cease, and circpad_is_using_circuit_for_padding() will return 0 and allow circuit_expire_old_circuits_clientside() to close the circuit (machine-specific padding limits are tested in a previously existing test). -- Ticket URL: <https://trac.torproject.org/projects/tor/ticket/28780#comment:39> Tor Bug Tracker & Wiki <https://trac.torproject.org/> The Tor Project: anonymity online
_______________________________________________ tor-bugs mailing list tor-bugs@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-bugs