mirror of
https://gitlab.isc.org/isc-projects/bind9
synced 2025-09-01 15:05:23 +00:00
If the client used TCP, tell the resolver to do so as well.
This commit is contained in:
@@ -1617,6 +1617,7 @@ query_recurse(ns_client_t *client, dns_rdatatype_t qtype, dns_name_t *qdomain,
|
|||||||
{
|
{
|
||||||
isc_result_t result;
|
isc_result_t result;
|
||||||
dns_rdataset_t *rdataset, *sigrdataset;
|
dns_rdataset_t *rdataset, *sigrdataset;
|
||||||
|
unsigned int options = 0;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Invoke the resolver.
|
* Invoke the resolver.
|
||||||
@@ -1634,11 +1635,15 @@ query_recurse(ns_client_t *client, dns_rdatatype_t qtype, dns_name_t *qdomain,
|
|||||||
return (ISC_R_NOMEMORY);
|
return (ISC_R_NOMEMORY);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ((client->attributes & NS_CLIENTATTR_TCP) != 0)
|
||||||
|
options |= DNS_FETCHOPT_TCP;
|
||||||
|
|
||||||
result = dns_resolver_createfetch(client->view->resolver,
|
result = dns_resolver_createfetch(client->view->resolver,
|
||||||
client->query.qname,
|
client->query.qname,
|
||||||
qtype, qdomain, nameservers,
|
qtype, qdomain, nameservers,
|
||||||
NULL, 0, client->task, query_resume,
|
NULL, options, client->task,
|
||||||
client, rdataset, sigrdataset,
|
query_resume, client,
|
||||||
|
rdataset, sigrdataset,
|
||||||
&client->query.fetch);
|
&client->query.fetch);
|
||||||
|
|
||||||
if (result == ISC_R_SUCCESS) {
|
if (result == ISC_R_SUCCESS) {
|
||||||
|
Reference in New Issue
Block a user