- From ca2ca2f4b7f46c366fde7c4f1b7fc4522d49e142 Mon Sep 17 00:00:00 2001
- From: Brent Cook <busterb@gmail.com>
- Date: Tue, 30 Dec 2014 09:10:22 -0600
- Subject: [PATCH 01/13] Handle IPv6 DNS records on IPv4 networks more liberally
-
- Rather than fail on IPv4 only networks when seeing an IPv6 DNS record,
- just give a warning.
-
- Debian bug ID: 500676.
- Original Author: Stefan Praszalowicz <stefan.praszalowicz@avedya.com>
- ---
- src/usr.sbin/ntpd/client.c | 13 ++++++++++---
- 1 file changed, 10 insertions(+), 3 deletions(-)
-
- diff --git a/src/usr.sbin/ntpd/client.c b/src/usr.sbin/ntpd/client.c
- index a92382b..7ce3b38 100644
- --- a/src/usr.sbin/ntpd/client.c
- +++ b/src/usr.sbin/ntpd/client.c
- @@ -138,9 +138,16 @@ client_query(struct ntp_peer *p)
- if (p->query->fd == -1) {
- struct sockaddr *sa = (struct sockaddr *)&p->addr->ss;
-
- - if ((p->query->fd = socket(p->addr->ss.ss_family, SOCK_DGRAM,
- - 0)) == -1)
- - fatal("client_query socket");
- + p->query->fd = socket(p->addr->ss.ss_family, SOCK_DGRAM, 0);
- + if (p->query->fd == -1) {
- + if (errno == EAFNOSUPPORT) {
- + log_warn("client_query socket");
- + client_nextaddr(p);
- + set_next(p, error_interval());
- + return (-1);
- + } else
- + fatal("client_query socket");
- + }
-
- if (connect(p->query->fd, sa, SA_LEN(sa)) == -1) {
- if (errno == ECONNREFUSED || errno == ENETUNREACH ||
- --
- 2.8.1
-
|