aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRoger Dingledine <arma@torproject.org>2005-12-10 21:07:21 +0000
committerRoger Dingledine <arma@torproject.org>2005-12-10 21:07:21 +0000
commitdefa3804cfcec859a464c53d3f21999fb23e4ded (patch)
tree14c4d9a5970a29fb31fdd300f7a7c1d60e5957fb
parent58366ffd249590d3f99296563e3f0a189efd568b (diff)
downloadtor-defa3804cfcec859a464c53d3f21999fb23e4ded.tar.gz
tor-defa3804cfcec859a464c53d3f21999fb23e4ded.zip
explain why 0.1.1.9-alpha-cvs is a special version.
svn:r5552
-rw-r--r--src/or/circuitbuild.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/or/circuitbuild.c b/src/or/circuitbuild.c
index 47eb51eb81..f3b27153ab 100644
--- a/src/or/circuitbuild.c
+++ b/src/or/circuitbuild.c
@@ -344,6 +344,9 @@ circuit_handle_first_hop(circuit_t *circ)
DIGEST_LEN);
n_conn = connection_or_get_by_identity_digest(
firsthop->extend_info->identity_digest);
+ /* If we don't have an open conn, or the conn we have is obsolete
+ * (i.e. old or broken) and the other side will let us make a second
+ * connection without dropping it immediately... */
if (!n_conn || n_conn->state != OR_CONN_STATE_OPEN ||
(n_conn->is_obsolete &&
router_digest_version_as_new_as(firsthop->extend_info->identity_digest,
@@ -669,6 +672,9 @@ circuit_extend(cell_t *cell, circuit_t *circ)
id_digest = cell->payload+RELAY_HEADER_SIZE+4+2+ONIONSKIN_CHALLENGE_LEN;
n_conn = connection_or_get_by_identity_digest(id_digest);
+ /* If we don't have an open conn, or the conn we have is obsolete
+ * (i.e. old or broken) and the other side will let us make a second
+ * connection without dropping it immediately... */
if (!n_conn || n_conn->state != OR_CONN_STATE_OPEN ||
(n_conn->is_obsolete &&
router_digest_version_as_new_as(id_digest,"0.1.1.9-alpha-cvs"))) {