summaryrefslogtreecommitdiffstats
path: root/usr.sbin/bind/lib/isc/unix
diff options
context:
space:
mode:
Diffstat (limited to 'usr.sbin/bind/lib/isc/unix')
-rw-r--r--usr.sbin/bind/lib/isc/unix/net.c14
-rw-r--r--usr.sbin/bind/lib/isc/unix/socket.c6
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);