diff options
| -rw-r--r-- | usr.sbin/bind/lib/isc/unix/net.c | 14 | ||||
| -rw-r--r-- | usr.sbin/bind/lib/isc/unix/socket.c | 6 |
2 files changed, 10 insertions, 10 deletions
diff --git a/usr.sbin/bind/lib/isc/unix/net.c b/usr.sbin/bind/lib/isc/unix/net.c index 3f9fda2c79a..9335da260ba 100644 --- a/usr.sbin/bind/lib/isc/unix/net.c +++ b/usr.sbin/bind/lib/isc/unix/net.c @@ -14,7 +14,7 @@ * PERFORMANCE OF THIS SOFTWARE. */ -/* $Id: net.c,v 1.6 2019/12/17 01:46:37 sthen Exp $ */ +/* $Id: net.c,v 1.7 2019/12/17 02:05:31 deraadt Exp $ */ #include <config.h> @@ -140,7 +140,7 @@ try_proto(int domain) { isc_result_t result = ISC_R_SUCCESS; char strbuf[ISC_STRERRORSIZE]; - s = socket(domain, SOCK_STREAM, 0); + s = socket(domain, SOCK_STREAM | SOCK_DNS, 0); if (s == -1) { switch (errno) { #ifdef EAFNOSUPPORT @@ -274,7 +274,7 @@ try_ipv6only(void) { return; #else /* check for TCP sockets */ - s = socket(PF_INET6, SOCK_STREAM, 0); + s = socket(PF_INET6, SOCK_STREAM | SOCK_DNS, 0); if (s == -1) { isc__strerror(errno, strbuf, sizeof(strbuf)); UNEXPECTED_ERROR(__FILE__, __LINE__, @@ -297,7 +297,7 @@ try_ipv6only(void) { close(s); /* check for UDP sockets */ - s = socket(PF_INET6, SOCK_DGRAM, 0); + s = socket(PF_INET6, SOCK_DGRAM | SOCK_DNS, 0); if (s == -1) { isc__strerror(errno, strbuf, sizeof(strbuf)); UNEXPECTED_ERROR(__FILE__, __LINE__, @@ -348,7 +348,7 @@ try_ipv6pktinfo(void) { } /* we only use this for UDP sockets */ - s = socket(PF_INET6, SOCK_DGRAM, IPPROTO_UDP); + s = socket(PF_INET6, SOCK_DGRAM | SOCK_DNS, IPPROTO_UDP); if (s == -1) { isc__strerror(errno, strbuf, sizeof(strbuf)); UNEXPECTED_ERROR(__FILE__, __LINE__, @@ -655,7 +655,7 @@ try_dscp_v4(void) { return; } - s = socket(res0->ai_family, res0->ai_socktype, res0->ai_protocol); + s = socket(res0->ai_family, res0->ai_socktype | SOCK_DNS, res0->ai_protocol); if (s == -1) { isc__strerror(errno, strbuf, sizeof(strbuf)); @@ -720,7 +720,7 @@ try_dscp_v6(void) { return; } - s = socket(res0->ai_family, res0->ai_socktype, res0->ai_protocol); + s = socket(res0->ai_family, res0->ai_socktype | SOCK_DNS, res0->ai_protocol); if (s == -1) { isc__strerror(errno, strbuf, sizeof(strbuf)); isc_log_write(isc_lctx, ISC_LOGCATEGORY_GENERAL, diff --git a/usr.sbin/bind/lib/isc/unix/socket.c b/usr.sbin/bind/lib/isc/unix/socket.c index fa8e8bf1d07..4b5b6c96e56 100644 --- a/usr.sbin/bind/lib/isc/unix/socket.c +++ b/usr.sbin/bind/lib/isc/unix/socket.c @@ -2427,7 +2427,7 @@ set_rcvbuf(void) { int max = rcvbuf, min; ISC_SOCKADDR_LEN_T len; - fd = socket(AF_INET, SOCK_DGRAM, IPPROTO_UDP); + fd = socket(AF_INET, SOCK_DGRAM | SOCK_DNS, IPPROTO_UDP); #if defined(ISC_PLATFORM_HAVEIPV6) if (fd == -1) { switch (errno) { @@ -2565,10 +2565,10 @@ opensocket(isc__socketmgr_t *manager, isc__socket_t *sock, if (dup_socket == NULL) { switch (sock->type) { case isc_sockettype_udp: - sock->fd = socket(sock->pf, SOCK_DGRAM, IPPROTO_UDP); + sock->fd = socket(sock->pf, SOCK_DGRAM | SOCK_DNS, IPPROTO_UDP); break; case isc_sockettype_tcp: - sock->fd = socket(sock->pf, SOCK_STREAM, IPPROTO_TCP); + sock->fd = socket(sock->pf, SOCK_STREAM | SOCK_DNS, IPPROTO_TCP); break; case isc_sockettype_unix: sock->fd = socket(sock->pf, SOCK_STREAM, 0); |
