Do not reuse shared TCP dispatches for zone transfers

Zone transfers (XFRIN) need a dedicated TCP connection because they
are long-lived and stream the entire zone.
This commit is contained in:
Ondřej Surý 2026-03-19 05:06:47 +01:00 committed by Ondřej Surý
parent 3e364aec2b
commit 6e78094ebd
No known key found for this signature in database
GPG key ID: 2820F37E873DEA41

View file

@ -1286,7 +1286,9 @@ dns_dispatch_createtcp(dns_dispatchmgr_t *mgr, const isc_sockaddr_t *localaddr,
isc_result_t result;
if ((options & DNS_DISPATCHOPT_FIXEDID) == 0) {
if ((options & DNS_DISPATCHOPT_FIXEDID) == 0 &&
disptype != DNS_DISPATCHTYPE_XFRIN)
{
result = dispatch_gettcp(mgr, localaddr, destaddr, transport,
disptype, dispp);
if (result == ISC_R_SUCCESS) {