[tor-commits] [tor/maint-0.2.4] Don't relax the timeout for already opened 1-hop circuits.
nickm at torproject.org
nickm at torproject.org
Fri Mar 29 16:18:39 UTC 2013
commit d39e6736fe1608028223604f49d5d091ef23bb27
Author: Mike Perry <mikeperry-git at fscked.org>
Date: Wed Mar 27 17:43:27 2013 -0700
Don't relax the timeout for already opened 1-hop circuits.
---
src/or/circuituse.c | 7 ++++++-
1 files changed, 6 insertions(+), 1 deletions(-)
diff --git a/src/or/circuituse.c b/src/or/circuituse.c
index bbf219a..8fb70f5 100644
--- a/src/or/circuituse.c
+++ b/src/or/circuituse.c
@@ -529,7 +529,12 @@ circuit_expire_building(void)
if (timercmp(&victim->timestamp_began, &cutoff, >))
continue; /* it's still young, leave it alone */
- if (!any_opened_circs) {
+ /* We need to double-check the opened state here because
+ * we don't want to consider opened 1-hop dircon circuits for
+ * deciding when to relax the timeout, but we *do* want to relax
+ * those circuits too if nothing else is opened *and* they still
+ * aren't either. */
+ if (!any_opened_circs && victim->state != CIRCUIT_STATE_OPEN) {
/* It's still young enough that we wouldn't close it, right? */
if (timercmp(&victim->timestamp_began, &close_cutoff, >)) {
if (!TO_ORIGIN_CIRCUIT(victim)->relaxed_timeout) {
More information about the tor-commits
mailing list