# endif
#endif
-#ifdef INET6
+#ifdef ENABLE_IPV6
int ip_default_family = AF_INET6;
#else
int ip_default_family = AF_INET;
al->faulty = 0;
}
-#ifdef INET6
+#ifdef HAVE_GETADDRINFO
/**
* address_list_from_addrinfo
*
}
return;
}
-#ifdef INET6
+#ifdef ENABLE_IPV6
if (ip_family == AF_INET6)
{
sa->sin6.sin6_family = ip_family;
sa->sin.sin_port = htons (port);
return;
}
-#ifdef INET6
+#ifdef ENABLE_IPV6
if (sa->sa.sa_family == AF_INET6)
{
sa->sin6.sin6_port = htons (port);
{
if (sa->sa.sa_family == AF_INET)
return &sa->sin.sin_addr;
-#ifdef INET6
+#ifdef ENABLE_IPV6
if (sa->sa.sa_family == AF_INET6)
return &sa->sin6.sin6_addr;
#endif
{
if (sa->sa.sa_family == AF_INET)
return htons (sa->sin.sin_port);
-#ifdef INET6
+#ifdef ENABLE_IPV6
if (sa->sa.sa_family == AF_INET6)
return htons (sa->sin6.sin6_port);
#endif
{
if (ip_default_family == AF_INET)
return sizeof (struct sockaddr_in);
-#ifdef INET6
+#ifdef ENABLE_IPV6
if (ip_default_family == AF_INET6)
return sizeof (struct sockaddr_in6);
#endif
void
map_ipv4_to_ip (ip4_address *ipv4, ip_address *ip)
{
-#ifdef INET6
+#ifdef ENABLE_IPV6
static unsigned char ipv64[12] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0xff, 0xff};
memcpy ((char *)ip + 12, ipv4 , 4);
memcpy ((char *)ip + 0, ipv64, 12);
int
map_ip_to_ipv4 (ip_address *ip, ip4_address *ipv4)
{
-#ifdef INET6
+#ifdef ENABLE_IPV6
static unsigned char ipv64[12] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0xff, 0xff};
if (0 != memcmp (ip, ipv64, 12))
return 0;
\f
/* Versions of gethostbyname and getaddrinfo that support timeout. */
-#ifndef INET6
+#ifndef ENABLE_IPV6
struct ghbnwt_context {
const char *host_name;
return ctx.hptr;
}
-#else /* INET6 */
+#else /* ENABLE_IPV6 */
struct gaiwt_context {
const char *node;
return ctx.exit_code;
}
-#endif /* INET6 */
+#endif /* ENABLE_IPV6 */
\f
/* Pretty-print ADDR. When compiled without IPv6, this is the same as
inet_ntoa. With IPv6, it either prints an IPv6 address or an IPv4
char *
pretty_print_address (ip_address *addr)
{
-#ifdef INET6
+#ifdef ENABLE_IPV6
ip4_address addr4;
static char buf[128];
/* First, try to check whether the address is already a numeric
address. */
-#ifdef INET6
+#ifdef ENABLE_IPV6
if (inet_pton (AF_INET6, host, &addr) > 0)
return address_list_new_one (&addr);
#endif
/* Host name lookup goes on below. */
-#ifdef INET6
+#ifdef HAVE_GETADDRINFO
{
struct addrinfo hints, *ai;
int err;
logprintf (LOG_VERBOSE, _("done.\n"));
/* Cache the lookup information. */
- cache_host_lookup (host, al);
+ if (opt.dns_cache)
+ cache_host_lookup (host, al);
return al;
}