Explorar el Código

Display consensus bandwidth to the control port.

Also div vote and other bandwidth by 1000, not 1024.
Mike Perry hace 16 años
padre
commit
ca676c3924
Se han modificado 1 ficheros con 8 adiciones y 2 borrados
  1. 8 2
      src/or/dirserv.c

+ 8 - 2
src/or/dirserv.c

@@ -1943,6 +1943,7 @@ routerstatus_format_entry(char *buf, size_t buf_len,
 
   if (format != NS_V2) {
     routerinfo_t* desc = router_get_by_digest(rs->identity_digest);
+    u_int32_t bw;
 
     if (format != NS_CONTROL_PORT) {
       /* Blow up more or less nicely if we didn't get anything or not the
@@ -1985,9 +1986,14 @@ routerstatus_format_entry(char *buf, size_t buf_len,
       };
     }
 
+    if (format == NS_CONTROL_PORT && rs->has_bandwidth) {
+      bw = rs->bandwidth;
+    } else {
+      tor_assert(desc);
+      bw = router_get_advertised_bandwidth_capped(desc) / 1000;
+    }
     r = tor_snprintf(cp, buf_len - (cp-buf),
-                     "w Bandwidth=%d\n",
-                     router_get_advertised_bandwidth_capped(desc) / 1024);
+                     "w Bandwidth=%d\n", bw);
 
     if (r<0) {
       log_warn(LD_BUG, "Not enough space in buffer.");