bind9/lib/ns/include/ns
Matthijs Mekking fee164243f Keep track of allow client detach
The stale-answer-client-timeout feature introduced a dependancy on
when a client may be detached from the handle. The dboption
DNS_DBFIND_STALEONLY was reused to track this attribute. This overloads
the meaning of this database option, and actually introduced a bug
because the option was checked in other places. In particular, in
'ns_query_done()' there is a check for 'RECURSING(qctx->client) &&
(!QUERY_STALEONLY(&qctx->client->query) || ...' and the condition is
satisfied because recursion has not completed yet and
DNS_DBFIND_STALEONLY is already cleared by that time (in
query_lookup()), because we found a useful answer and we should detach
the client from the handle after sending the response.

Add a new boolean to the client structure to keep track of client
detach from handle is allowed or not. It is only disallowed if we are
in a staleonly lookup and we didn't found a useful answer.
2021-04-02 09:14:09 +02:00
..
client.h Keep track of allow client detach 2021-04-02 09:14:09 +02:00
events.h implementation of hook-based asynchronous functionality 2020-11-24 15:11:39 -08:00
hooks.h implementation of hook-based asynchronous functionality 2020-11-24 15:11:39 -08:00
interfacemgr.h Initial support for DNS-over-HTTP(S) 2021-02-03 12:06:17 +01:00
lib.h update all copyright headers to eliminate the typo 2020-09-14 16:20:40 -07:00
listenlist.h support "tls ephemeral" with https 2021-02-03 12:06:17 +01:00
log.h update all copyright headers to eliminate the typo 2020-09-14 16:20:40 -07:00
notify.h update all copyright headers to eliminate the typo 2020-09-14 16:20:40 -07:00
query.h Allow stale data to be used before name resolution 2021-01-25 10:47:14 -03:00
server.h implementation of hook-based asynchronous functionality 2020-11-24 15:11:39 -08:00
sortlist.h update all copyright headers to eliminate the typo 2020-09-14 16:20:40 -07:00
stats.h Reformat sources using clang-format-11 2020-12-08 18:36:23 +01:00
types.h implementation of hook-based asynchronous functionality 2020-11-24 15:11:39 -08:00
update.h update all copyright headers to eliminate the typo 2020-09-14 16:20:40 -07:00
xfrout.h update all copyright headers to eliminate the typo 2020-09-14 16:20:40 -07:00