[tor-commits] [tor/maint-0.3.3] Merge remote-tracking branch 'public/bug24104_029_squashed' into maint-0.2.9

nickm at torproject.org nickm at torproject.org
Thu Nov 15 21:56:17 UTC 2018


commit 8569166c70f99bf908e78ce272e71eb60cdc84d0
Merge: 7f042cbc0 81f422332
Author: Nick Mathewson <nickm at torproject.org>
Date:   Thu Nov 15 16:43:50 2018 -0500

    Merge remote-tracking branch 'public/bug24104_029_squashed' into maint-0.2.9
    
    Resolved conflicts with the 26269 fix in 015fcd0e1191aa6f.

 changes/bug24104            |   4 ++
 src/or/rephist.c            |   6 +-
 src/or/rephist.h            |   4 +-
 src/or/router.c             |  25 ++++++--
 src/test/include.am         |   1 +
 src/test/log_test_helpers.c |  22 ++++++-
 src/test/log_test_helpers.h |   7 ++-
 src/test/test.c             |   1 +
 src/test/test_router.c      | 142 ++++++++++++++++++++++++++++++++++++++++++++
 9 files changed, 200 insertions(+), 12 deletions(-)

diff --cc src/or/router.c
index 35b6bd203,f1a99364e..c41647422
--- a/src/or/router.c
+++ b/src/or/router.c
@@@ -2433,15 -2440,21 +2441,23 @@@ check_descriptor_bandwidth_changed(time
  {
    static time_t last_changed = 0;
    uint64_t prev, cur;
 +  const routerinfo_t *my_ri = router_get_my_routerinfo();
++
+   int hibernating = we_are_hibernating();
+ 
+   /* If the relay uptime is bigger than MAX_UPTIME_BANDWIDTH_CHANGE,
+    * the next regularly scheduled descriptor update (18h) will be enough */
+   if (get_uptime() > MAX_UPTIME_BANDWIDTH_CHANGE && !hibernating)
+     return;
+ 
 -  if (!router_get_my_routerinfo())
 +  if (!my_ri) /* make sure routerinfo exists */
      return;
  
 -  prev = router_get_my_routerinfo()->bandwidthcapacity;
 +  prev = my_ri->bandwidthcapacity;
-   cur = we_are_hibernating() ? 0 : rep_hist_bandwidth_assess();
+   cur = hibernating ? 0 : rep_hist_bandwidth_assess();
    if ((prev != cur && (!prev || !cur)) ||
-       cur > prev*2 ||
-       cur < prev/2) {
+       cur > (prev * BANDWIDTH_CHANGE_FACTOR) ||
+       cur < (prev / BANDWIDTH_CHANGE_FACTOR) ) {
      if (last_changed+MAX_BANDWIDTH_CHANGE_FREQ < now || !prev) {
        log_info(LD_GENERAL,
                 "Measured bandwidth has changed; rebuilding descriptor.");
@@@ -3640,4 -3652,4 +3656,3 @@@ router_get_all_orports(const routerinfo
    fake_node.ri = (routerinfo_t *)ri;
    return node_get_all_orports(&fake_node);
  }
--





More information about the tor-commits mailing list