summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRoger Dingledine <arma@torproject.org>2004-04-07 19:22:55 +0000
committerRoger Dingledine <arma@torproject.org>2004-04-07 19:22:55 +0000
commit3c683a9e7c70cfc2bfbe3f40c3e34b0f2a45dca3 (patch)
treee092c397aa24bac3e1999a3e5459c020ab9a6405
parent1f0769c470683acbe267a039e6661f170f020dcf (diff)
downloadtor-3c683a9e7c70cfc2bfbe3f40c3e34b0f2a45dca3.tar.gz
tor-3c683a9e7c70cfc2bfbe3f40c3e34b0f2a45dca3.zip
let alice reuse recent rendjoin circs
svn:r1519
-rw-r--r--src/or/circuit.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/src/or/circuit.c b/src/or/circuit.c
index a4794dc113..9577af8a08 100644
--- a/src/or/circuit.c
+++ b/src/or/circuit.c
@@ -304,10 +304,14 @@ circuit_t *circuit_get_best(connection_t *conn,
if(conn) {
/* decide if this circ is suitable for this conn */
- if(circ->state == CIRCUIT_STATE_OPEN && circ->n_conn) /* open */
- exitrouter = router_get_by_addr_port(circ->cpath->prev->addr,
- circ->cpath->prev->port);
- else /* not open */
+// if(circ->state == CIRCUIT_STATE_OPEN && circ->n_conn) /* open */
+// exitrouter = router_get_by_addr_port(circ->cpath->prev->addr,
+// circ->cpath->prev->port);
+// else /* not open */
+/* for rend circs, circ->cpath->prev is not the last router in the
+ * circuit, it's the magical extra bob hop. so just check the nickname
+ * of the one we meant to finish at.
+ */
exitrouter = router_get_by_nickname(circ->build_state->chosen_exit);
if(!exitrouter) {