From: Mark Andrews Date: Wed, 21 Oct 2015 23:58:25 +0000 (+1100) Subject: 4242. [bug] Replace the client if not already replaced when X-Git-Tag: v9.11.0a1~330^2~5 X-Git-Url: http://git.ipfire.org/gitweb/?a=commitdiff_plain;h=0526268c2b2806ceb67032e0bfee708b6e70e004;p=thirdparty%2Fbind9.git 4242. [bug] Replace the client if not already replaced when prefetching. [RT #41001] --- diff --git a/CHANGES b/CHANGES index 4b820f108d4..7a288004294 100644 --- a/CHANGES +++ b/CHANGES @@ -1,3 +1,6 @@ +4242. [bug] Replace the client if not already replaced when + prefetching. [RT #41001] + 4241. [doc] Improved the TSIG, TKEY, and SIG(0) sections in the ARM. [RT #40955] diff --git a/bin/named/query.c b/bin/named/query.c index 63187c77c2f..6d14128e795 100644 --- a/bin/named/query.c +++ b/bin/named/query.c @@ -3945,6 +3945,8 @@ query_prefetch(ns_client_t *client, dns_name_t *qname, if (client->recursionquota == NULL) { result = isc_quota_attach(&ns_g_server->recursionquota, &client->recursionquota); + if (result == ISC_R_SUCCESS && !client->mortal && !TCP(client)) + result = ns_client_replace(client); if (result != ISC_R_SUCCESS) return; isc_stats_increment(ns_g_server->nsstats,