The hint feeds the EDNS OPT UDP-size field, which has no effect on TCP
transport. Avoid the dns_adb_getudpsize() lookup when the query is
already pinned to TCP.
Assisted-by: Claude:claude-opus-4-7
query->options |= DNS_FETCHOPT_NOEDNS0;
}
- if (fctx->timeout && (query->options & DNS_FETCHOPT_NOEDNS0) == 0) {
+ if (fctx->timeout && (query->options & DNS_FETCHOPT_NOEDNS0) == 0 &&
+ (query->options & DNS_FETCHOPT_TCP) == 0)
+ {
isc_sockaddr_t *sockaddr = &query->addrinfo->sockaddr;
struct tried *tried = triededns(fctx, sockaddr);