From 8eaf10387df7014a20285e329455eda86e0c4dc9 Mon Sep 17 00:00:00 2001
From: Brent Cook <busterb@gmail.com>
Date: Tue, 30 Dec 2014 09:04:08 -0600
Subject: [PATCH 02/12] EAI_NODATA does not exist everywhere

FreeBSD says it is deprecated #ifdef's it out.

Linux glibc hides it and many other return codes behind __USE_GNU.
  What is that supposed to mean?

It seems the only effect of 'deprecating' this value has been that all
portable software now has to have a special check instead.
---
 src/usr.sbin/ntpd/config.c | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/src/usr.sbin/ntpd/config.c b/src/usr.sbin/ntpd/config.c
index 3945405..8c1baa2 100644
--- a/src/usr.sbin/ntpd/config.c
+++ b/src/usr.sbin/ntpd/config.c
@@ -133,8 +133,14 @@ host_dns(const char *s, struct ntp_addr **hn)
 	hints.ai_socktype = SOCK_DGRAM; /* DUMMY */
 	/* ntpd MUST NOT use AI_ADDRCONFIG here */
 	error = getaddrinfo(s, NULL, &hints, &res0);
-	if (error == EAI_AGAIN || error == EAI_NODATA || error == EAI_NONAME)
-			return (0);
+	switch (error) {
+	case EAI_AGAIN:
+	case EAI_NONAME:
+#ifdef EAI_NODATA
+	case EAI_NODATA:
+#endif
+		return (0);
+	}
 	if (error) {
 		log_warnx("could not parse \"%s\": %s", s,
 		    gai_strerror(error));
-- 
2.4.3.573.g4eafbef