canohost.c changes.
+20030605
+ - (djm) Support AI_NUMERICHOST in fake-getaddrinfo.c. Needed for recent
+ canohost.c changes.
+
20030604
- (djm) Bug #573 - Remove unneeded Krb headers and compat goop. Patch from
simon@sxw.org.uk (Also matches a change in OpenBSD a while ago)
return ("no address associated with name");
case EAI_MEMORY:
return ("memory allocation failure.");
+ case EAI_NONAME:
+ return ("nodename nor servname provided, or not known");
default:
return ("unknown/invalid error.");
}
return (0);
}
+ /* Don't try DNS if AI_NUMERICHOST is set */
+ if (hints && hints->ai_flags & AI_NUMERICHOST)
+ return (EAI_NONAME);
+
hp = gethostbyname(hostname);
if (hp && hp->h_name && hp->h_name[0] && hp->h_addr_list[0]) {
struct addrinfo *cur, *prev;
#include "fake-gai-errnos.h"
#ifndef AI_PASSIVE
-# define AI_PASSIVE 1
-# define AI_CANONNAME 2
-#endif
-
-#ifndef NI_NUMERICHOST
-# define NI_NUMERICHOST 2
-# define NI_NAMEREQD 4
-# define NI_NUMERICSERV 8
+# define AI_PASSIVE (1)
+# define AI_CANONNAME (1<<1)
+# define AI_NUMERICHOST (1<<2)
#endif
#ifndef HAVE_STRUCT_ADDRINFO
char *, size_t, int);
#endif /* !HAVE_GETNAMEINFO */
+#ifndef NI_NUMERICHOST
+# define NI_NUMERICHOST (1)
+# define NI_NAMEREQD (1<<1)
+# define NI_NUMERICSERV (1<<2)
+#endif
+
#ifndef NI_MAXSERV
# define NI_MAXSERV 32
#endif /* !NI_MAXSERV */