tor

The Tor anonymity network
git clone https://git.dasho.dev/tor.git
Log | Files | Refs | README | LICENSE

commit e033d98f79a950a342a7db6909709b5dc987b2cb
parent 1066fdd8d1e084ef38281c9817032e68e2a490ff
Author: juga0 <juga@riseup.net>
Date:   Mon,  2 Jul 2018 08:21:43 +0000

Check descriptor bandwidth changed if not hibernating

There should be a separate check to update descriptor when start
or end hibernating.

Diffstat:
Msrc/or/router.c | 5+++--
1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/src/or/router.c b/src/or/router.c @@ -2440,17 +2440,18 @@ check_descriptor_bandwidth_changed(time_t now) { static time_t last_changed = 0; uint64_t prev, cur; + 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) + if (get_uptime() > MAX_UPTIME_BANDWIDTH_CHANGE && !hibernating) return; if (!router_get_my_routerinfo()) return; prev = router_get_my_routerinfo()->bandwidthcapacity; - cur = we_are_hibernating() ? 0 : rep_hist_bandwidth_assess(); + cur = hibernating ? 0 : rep_hist_bandwidth_assess(); if ((prev != cur && (!prev || !cur)) || cur > (prev * BANDWIDTH_CHANGE_FACTOR) || cur < (prev / BANDWIDTH_CHANGE_FACTOR) ) {