From 5d9256a367a9dccb1efa914b95a00622635ff640 Mon Sep 17 00:00:00 2001 From: Roger Dingledine Date: Wed, 28 Dec 2005 07:27:41 +0000 Subject: [PATCH] but only close the new conn if one of the earlier helper nodes that we mark up is actually reachable, fast enough, etc to use. svn:r5672 --- src/or/circuitbuild.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/or/circuitbuild.c b/src/or/circuitbuild.c index 154f687f59..f19f1d7708 100644 --- a/src/or/circuitbuild.c +++ b/src/or/circuitbuild.c @@ -1959,11 +1959,14 @@ helper_node_set_status(const char *digest, int succeeded) helper->made_contact = 1; SMARTLIST_FOREACH(helper_nodes, helper_node_t *, h, { - routerinfo_t *r = router_get_by_digest(h->identity); + routerinfo_t *r; if (h->made_contact) { h->down_since = 0; - refuse_conn = 1; - if (r) r->is_running = 1; + r = helper_is_live(h, 0, 1); + if (r) { + refuse_conn = 1; + r->is_running = 1; + } } if (h == helper) break;