Browse Source

Don't list relays w/ bw estimate of 0 in the consensus

This implements a feature from bug 13000. Instead of starting a bwauth
run with this wrong idea about their bw, relays should do the self-test
and then get measured.
Sebastian Hahn 10 years ago
parent
commit
962765a35d
2 changed files with 7 additions and 2 deletions
  1. 3 1
      changes/bug13000
  2. 4 1
      src/or/dirserv.c

+ 3 - 1
changes/bug13000

@@ -2,4 +2,6 @@
     - If our previous bandwidth estimate was 0 bytes, allow publishing a
       new relay descriptor immediately. Fixes bug 13000; bugfix on
       0.1.1.6-alpha.
-
+  o Minor features:
+    - Don't list relays with a bandwidth estimate of 0 in the consensus.
+      Implements a feature proposed during discussion of bug 13000.

+ 4 - 1
src/or/dirserv.c

@@ -1051,7 +1051,8 @@ format_versions_list(config_line_t *ln)
 }
 
 /** Return 1 if <b>ri</b>'s descriptor is "active" -- running, valid,
- * not hibernating, and not too old. Else return 0.
+ * not hibernating, having observed bw greater 0, and not too old. Else
+ * return 0.
  */
 static int
 router_is_active(const routerinfo_t *ri, const node_t *node, time_t now)
@@ -1061,6 +1062,8 @@ router_is_active(const routerinfo_t *ri, const node_t *node, time_t now)
     return 0;
   if (!node->is_running || !node->is_valid || ri->is_hibernating)
     return 0;
+  if (!ri->bandwidthcapacity)
+      return 0;
   return 1;
 }