tor

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

commit 1cdc030c3d3afbe16461271a1147397f87ba5693
parent 91413e04b458f41334ea4e25e35829043956b742
Author: Nick Mathewson <nickm@torproject.org>
Date:   Tue, 22 Oct 2019 14:47:28 -0400

Merge branch 'maint-0.4.2'

Diffstat:
Achanges/bug32108 | 8++++++++
Msrc/core/mainloop/mainloop.c | 2+-
2 files changed, 9 insertions(+), 1 deletion(-)

diff --git a/changes/bug32108 b/changes/bug32108 @@ -0,0 +1,8 @@ + o Major bugfixes (relay): + - Relays now respect their AccountingMax bandwidth again. When relays + entered "soft" hibernation (which typically starts when we've hit + 90% of our AccountingMax), we had stopped checking whether we should + enter hard hibernation. Soft hibernation refuses new connections and + new circuits, but the existing circuits can continue, meaning that + relays could have exceeded their configured AccountingMax. Fixes + bug 32108; bugfix on 0.4.0.1-alpha. diff --git a/src/core/mainloop/mainloop.c b/src/core/mainloop/mainloop.c @@ -1389,7 +1389,7 @@ STATIC periodic_event_item_t mainloop_periodic_events[] = { /* This is a legacy catch-all callback that runs once per second if * we are online and active. */ CALLBACK(second_elapsed, NET_PARTICIPANT, - FL(NEED_NET)|FL(RUN_ON_DISABLE)), + FL(RUN_ON_DISABLE)), /* XXXX Do we have a reason to do this on a callback? Does it do any good at * all? For now, if we're dormant, we can let our listeners decay. */