diff options
author | Nick Mathewson <nickm@torproject.org> | 2019-10-22 14:47:28 -0400 |
---|---|---|
committer | Nick Mathewson <nickm@torproject.org> | 2019-10-22 14:47:28 -0400 |
commit | 443df7e0d25710036c4cc821954cfd92386419a3 (patch) | |
tree | 343b0efc5da1d13546fe98dcc09a674765a60dc4 | |
parent | 869e15cbf49417f2c6774bec49da9d91dc133905 (diff) | |
parent | 2ed194c9a93c9e60ca4d4ff0bbf25acb2cf2c62c (diff) | |
download | tor-443df7e0d25710036c4cc821954cfd92386419a3.tar.gz tor-443df7e0d25710036c4cc821954cfd92386419a3.zip |
Merge branch 'maint-0.4.2' into release-0.4.2
-rw-r--r-- | changes/bug32108 | 8 | ||||
-rw-r--r-- | src/core/mainloop/mainloop.c | 2 |
2 files changed, 9 insertions, 1 deletions
diff --git a/changes/bug32108 b/changes/bug32108 new file mode 100644 index 0000000000..2806fa3e5d --- /dev/null +++ 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 index 2f8be9961d..6f29a6981a 100644 --- a/src/core/mainloop/mainloop.c +++ b/src/core/mainloop/mainloop.c @@ -1388,7 +1388,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. */ |