diff options
author | Roger Dingledine <arma@torproject.org> | 2005-12-28 07:27:41 +0000 |
---|---|---|
committer | Roger Dingledine <arma@torproject.org> | 2005-12-28 07:27:41 +0000 |
commit | 5d9256a367a9dccb1efa914b95a00622635ff640 (patch) | |
tree | 213e0a04159fb293ac24325b6a5cf1abb61e0b62 /src/or | |
parent | c1145138ead3252ced1cd9b365521e572bd7ad54 (diff) | |
download | tor-5d9256a367a9dccb1efa914b95a00622635ff640.tar.gz tor-5d9256a367a9dccb1efa914b95a00622635ff640.zip |
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
Diffstat (limited to 'src/or')
-rw-r--r-- | src/or/circuitbuild.c | 9 |
1 files 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; |