aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Stenberg <daniel@haxx.se>2009-01-31 20:25:55 +0000
committerDaniel Stenberg <daniel@haxx.se>2009-01-31 20:25:55 +0000
commitdcf92bffd2a22909a44b45bd7490e2575e14f82c (patch)
treebac149118b9b72f7d144af622b2d4a1346841974
parenta2256e899b7c122169b9c50e8cb92ac6fc51e95b (diff)
- When building with c-ares 1.6.1 (not yet released) or later and IPv6 support
enabled, we can now take advantage of its brand new AF_UNSPEC support in ares_gethostbyname(). This makes test case 241 finally run fine for me wtih this setup since it now parses the "::1 ip6-localhost" line fine in my /etc/hosts file!
-rw-r--r--CHANGES7
-rw-r--r--RELEASE-NOTES1
-rw-r--r--lib/hostares.c13
3 files changed, 16 insertions, 5 deletions
diff --git a/CHANGES b/CHANGES
index d5fa106e8..8ef4e55bb 100644
--- a/CHANGES
+++ b/CHANGES
@@ -6,6 +6,13 @@
Changelog
+Daniel Stenberg (31 Jan 2009)
+- When building with c-ares 1.6.1 (not yet released) or later and IPv6 support
+ enabled, we can now take advantage of its brand new AF_UNSPEC support in
+ ares_gethostbyname(). This makes test case 241 finally run fine for me wtih
+ this setup since it now parses the "::1 ip6-localhost" line fine in my
+ /etc/hosts file!
+
Daniel Stenberg (30 Jan 2009)
- Scott Cantor filed bug report #2550061
(http://curl.haxx.se/bug/view.cgi?id=2550061) mentioning that I failed to
diff --git a/RELEASE-NOTES b/RELEASE-NOTES
index d35eb91ab..a2ecac09a 100644
--- a/RELEASE-NOTES
+++ b/RELEASE-NOTES
@@ -16,6 +16,7 @@ This release includes the following changes:
o Added CURLOPT_SOCKS5_GSSAPI_SERVICE and CURLOPT_SOCKS5_GSSAPI_NEC - with
the corresponding curl options --socks5-gssapi-service and
--socks5-gssapi-nec
+ o Improved IPv6 support when built with with c-ares >= 1.6.1
This release includes the following bugfixes:
diff --git a/lib/hostares.c b/lib/hostares.c
index 1f49b6784..708af4e86 100644
--- a/lib/hostares.c
+++ b/lib/hostares.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2008, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel@haxx.se>, et al.
*
* This software is licensed as described in the file COPYING, which
* you should have received as part of this distribution. The terms
@@ -326,11 +326,14 @@ Curl_addrinfo *Curl_getaddrinfo(struct connectdata *conn,
}
switch(data->set.ip_version) {
+ default:
+#if ARES_VERSION >= 0x010601
+ family = PF_UNSPEC; /* supported by c-ares since 1.6.1, so for older
+ c-ares versions this just falls through and defaults
+ to PF_INET */
+ break;
+#endif
case CURL_IPRESOLVE_V4:
- default: /* By default we try ipv4, as PF_UNSPEC isn't supported by c-ares.
- This is a bit disturbing since users may very well assume that
- both kinds of addresses are asked for, but the problem is really
- in c-ares' end here. */
family = PF_INET;
break;
case CURL_IPRESOLVE_V6: