Browse Source

Display consensus bandwidth to the control port.

Also div vote and other bandwidth by 1000, not 1024.
Mike Perry 16 years ago
parent
commit
ca676c3924
1 changed files with 8 additions and 2 deletions
  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.");