summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGeorge Kadianakis <desnacked@riseup.net>2017-08-07 12:02:45 +0300
committerNick Mathewson <nickm@torproject.org>2017-08-08 20:29:35 -0400
commit273638288d4e6516011c4d538e5c1447f4753958 (patch)
tree8e1a832d04528d79f32e004e9e76658e03eea70e
parent827bd0e8827e10d1fe14c04b3d605b2278e3001e (diff)
downloadtor-273638288d4e6516011c4d538e5c1447f4753958.tar.gz
tor-273638288d4e6516011c4d538e5c1447f4753958.zip
Improve docs on rendezvous circ relaunch.
-rw-r--r--src/or/hs_circuit.c13
1 files changed, 12 insertions, 1 deletions
diff --git a/src/or/hs_circuit.c b/src/or/hs_circuit.c
index faceb731c5..43906619d7 100644
--- a/src/or/hs_circuit.c
+++ b/src/or/hs_circuit.c
@@ -682,7 +682,18 @@ hs_circ_service_get_intro_circ(const hs_service_intro_point_t *ip)
/* Called when we fail building a rendezvous circuit at some point other than
* the last hop: launches a new circuit to the same rendezvous point. This
- * supports legacy service. */
+ * supports legacy service.
+ *
+ * We currently relaunch connections to rendezvous points if:
+ * - A rendezvous circuit timed out before connecting to RP.
+ * - The redenzvous circuit failed to connect to the RP.
+ *
+ * We avoid relaunching a connection to this rendezvous point if:
+ * - We have already tried MAX_REND_FAILURES times to connect to this RP.
+ * - We've been trying to connect to this RP for more than MAX_REND_TIMEOUT
+ * seconds
+ * - We've already retried this specific rendezvous circuit.
+ */
void
hs_circ_retry_service_rendezvous_point(origin_circuit_t *circ)
{