tor

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

commit ea48ddc9552ecfc73d3b2186c05ee15cd7cc361d
parent 52d1c1fd311c9d552b32108a7e92ea2be76e090c
Author: David Goulet <dgoulet@torproject.org>
Date:   Mon, 14 Feb 2022 13:20:53 -0500

dns: Do not trigger overload general on DNS timeout

This was missed in #40527 when the DNS timeout overload general signal
was removed.

Closes #40564

Signed-off-by: David Goulet <dgoulet@torproject.org>

Diffstat:
Achanges/ticket40564 | 4++++
Msrc/feature/relay/dns.c | 10----------
2 files changed, 4 insertions(+), 10 deletions(-)

diff --git a/changes/ticket40564 b/changes/ticket40564 @@ -0,0 +1,4 @@ + o Major bugfixes (relay, overload): + - Do not trigger a general overload on DNS timeout. Even after fixing + 40527, some code remained that triggered the overload. Fixes bug 40564; + bugfix on 0.4.7.1-alpha. diff --git a/src/feature/relay/dns.c b/src/feature/relay/dns.c @@ -1539,16 +1539,6 @@ evdns_callback(int result, char type, int count, int ttl, void *addresses, tor_addr_make_unspec(&addr); - /* Note down any DNS errors to the statistics module */ - if (result == DNS_ERR_TIMEOUT) { - /* libevent timed out while resolving a name. However, because libevent - * handles retries and timeouts internally, this means that all attempts of - * libevent timed out. If we wanted to get more granular information about - * individual libevent attempts, we would have to implement our own DNS - * timeout/retry logic */ - rep_hist_note_overload(OVERLOAD_GENERAL); - } - /* Keep track of whether IPv6 is working */ if (type == DNS_IPv6_AAAA) { if (result == DNS_ERR_TIMEOUT) {