It is currently possible that dns_adb_endudpfetch() is not
called in fctx_cancelquery() for a UDP query, which results
in quotas not being adjusted back.
Always call dns_adb_endudpfetch() for UDP queries.
(cherry picked from commit
e4569373ca05e2e1c1c04d2b81c1b592acf927e5)
}
dns_adb_adjustsrtt(fctx->adb, query->addrinfo, rtt, factor);
+ }
- if ((query->options & DNS_FETCHOPT_TCP) == 0) {
- /* Inform the ADB that we're ending a UDP fetch */
- dns_adb_endudpfetch(fctx->adb, query->addrinfo);
- }
+ if ((query->options & DNS_FETCHOPT_TCP) == 0) {
+ /* Inform the ADB that we're ending a UDP fetch */
+ dns_adb_endudpfetch(fctx->adb, query->addrinfo);
}
/*