浏览代码

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

Roger Dingledine 20 年之前
父节点
当前提交
5d9256a367
共有 1 个文件被更改,包括 6 次插入3 次删除
  1. 6 3
      src/or/circuitbuild.c

+ 6 - 3
src/or/circuitbuild.c

@@ -1959,11 +1959,14 @@ helper_node_set_status(const char *digest, int succeeded)
             helper->made_contact = 1;
             helper->made_contact = 1;
             SMARTLIST_FOREACH(helper_nodes, helper_node_t *, h,
             SMARTLIST_FOREACH(helper_nodes, helper_node_t *, h,
               {
               {
-                routerinfo_t *r = router_get_by_digest(h->identity);
+                routerinfo_t *r;
                 if (h->made_contact) {
                 if (h->made_contact) {
                   h->down_since = 0;
                   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)
                 if (h == helper)
                   break;
                   break;