aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorRobert Ransom <rransom.8774@gmail.com>2011-10-12 06:41:33 -0700
committerRobert Ransom <rransom.8774@gmail.com>2011-10-12 06:41:33 -0700
commitb095be7f69e4b010d990d08c14eea74729f9528c (patch)
treec887973fd926abb7f3e60097d88a7bdedf54f117 /src
parentfbea8c8ef1e2f549e84ee681a9640c3006f7ad64 (diff)
downloadtor-b095be7f69e4b010d990d08c14eea74729f9528c.tar
tor-b095be7f69e4b010d990d08c14eea74729f9528c.tar.gz
Check for intro circ timeouts properly
Previously, we would treat an intro circuit failure as a timeout iff the circuit failed due to a mismatch in relay identity keys. (Due to a bug elsewhere, we only recognize relay identity-key mismatches on the first hop, so this isn't as bad as it could have been.) Bugfix on commit eaed37d14c6e1dc93a392f62ef2e501f75e4878a, not yet in any release.
Diffstat (limited to 'src')
-rw-r--r--src/or/circuitlist.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/or/circuitlist.c b/src/or/circuitlist.c
index b25a71e6b..ef884f3a7 100644
--- a/src/or/circuitlist.c
+++ b/src/or/circuitlist.c
@@ -1192,7 +1192,7 @@ _circuit_mark_for_close(circuit_t *circ, int reason, int line,
}
if (circ->purpose == CIRCUIT_PURPOSE_C_INTRODUCE_ACK_WAIT) {
origin_circuit_t *ocirc = TO_ORIGIN_CIRCUIT(circ);
- int timed_out = (reason == END_STREAM_REASON_TIMEOUT);
+ int timed_out = (reason == END_CIRC_REASON_TIMEOUT);
tor_assert(circ->state == CIRCUIT_STATE_OPEN);
tor_assert(ocirc->build_state->chosen_exit);
tor_assert(ocirc->rend_data);
@@ -1207,7 +1207,7 @@ _circuit_mark_for_close(circuit_t *circ, int reason, int line,
INTRO_POINT_FAILURE_TIMEOUT :
INTRO_POINT_FAILURE_GENERIC);
} else if (circ->purpose == CIRCUIT_PURPOSE_C_INTRODUCING &&
- reason != END_STREAM_REASON_TIMEOUT) {
+ reason != END_CIRC_REASON_TIMEOUT) {
origin_circuit_t *ocirc = TO_ORIGIN_CIRCUIT(circ);
tor_assert(ocirc->build_state->chosen_exit);
tor_assert(ocirc->rend_data);