summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2017-03-04 23:10:40 -0500
committerNick Mathewson <nickm@torproject.org>2017-03-04 23:10:40 -0500
commitfe17955661551f869ea2777297bc44e08d01ec92 (patch)
treef969a51c3e86fa5d12a44167486cae7d2c2f8f42 /src
parent3a1cba7d90855d63387168a0345f9c51436bd322 (diff)
parente0486c937178981585d45b65b359f488ed96c06d (diff)
downloadtor-fe17955661551f869ea2777297bc44e08d01ec92.tar.gz
tor-fe17955661551f869ea2777297bc44e08d01ec92.zip
Merge remote-tracking branch 'teor/bug21596_030'
Diffstat (limited to 'src')
-rw-r--r--src/or/rendservice.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/or/rendservice.c b/src/or/rendservice.c
index cb87624df5..c23d45cf34 100644
--- a/src/or/rendservice.c
+++ b/src/or/rendservice.c
@@ -4061,6 +4061,10 @@ rend_consider_services_intro_points(void)
smartlist_clear(exclude_nodes);
smartlist_clear(retry_nodes);
+ /* Cleanup the invalid intro points and save the node objects, if any,
+ * in the exclude_nodes and retry_nodes lists. */
+ remove_invalid_intro_points(service, exclude_nodes, retry_nodes, now);
+
/* This retry period is important here so we don't stress circuit
* creation. */
if (now > service->intro_period_started + INTRO_CIRC_RETRY_PERIOD) {
@@ -4070,14 +4074,10 @@ rend_consider_services_intro_points(void)
} else if (service->n_intro_circuits_launched >=
MAX_INTRO_CIRCS_PER_PERIOD) {
/* We have failed too many times in this period; wait for the next
- * one before we try again. */
+ * one before we try to initiate any more connections. */
continue;
}
- /* Cleanup the invalid intro points and save the node objects, if apply,
- * in the exclude_nodes and retry_nodes list. */
- remove_invalid_intro_points(service, exclude_nodes, retry_nodes, now);
-
/* Let's try to rebuild circuit on the nodes we want to retry on. */
SMARTLIST_FOREACH_BEGIN(retry_nodes, rend_intro_point_t *, intro) {
r = rend_service_launch_establish_intro(service, intro);