diff options
| author | Daniel Stenberg <daniel@haxx.se> | 2005-11-08 14:45:58 +0000 | 
|---|---|---|
| committer | Daniel Stenberg <daniel@haxx.se> | 2005-11-08 14:45:58 +0000 | 
| commit | cab59b4c3209baa5f067b5c2339748a4669b3662 (patch) | |
| tree | 10b2364a98396de3ecfb7016efa7bf73842cf35c | |
| parent | 931eff89f52994365e20c8b45fd7498933cbf5be (diff) | |
Removed the use of AI_CANONNAME in the IPv6-enabled resolver functions since
we really have no use for reverse lookups of the address.
I truly hope these are the last reverse lookups we had lingering in the
code!
| -rw-r--r-- | CHANGES | 6 | ||||
| -rw-r--r-- | RELEASE-NOTES | 1 | ||||
| -rw-r--r-- | lib/hostip6.c | 17 | ||||
| -rw-r--r-- | lib/hostthre.c | 2 | 
4 files changed, 17 insertions, 9 deletions
| @@ -9,6 +9,12 @@  Daniel (8 November 2005) +- Removed the use of AI_CANONNAME in the IPv6-enabled resolver functions since +  we really have no use for reverse lookups of the address. + +  I truly hope these are the last reverse lookups we had lingering in the +  code! +  - Dmitry Bartsevich discovered some issues in compatibilty of SSPI-enabled    version of libcurl with different Windows versions. Current version of    libcurl imports SSPI functions from secur32.dll. However, under Windows NT diff --git a/RELEASE-NOTES b/RELEASE-NOTES index a32636896..799784cc2 100644 --- a/RELEASE-NOTES +++ b/RELEASE-NOTES @@ -17,6 +17,7 @@ This release includes the following changes:  This release includes the following bugfixes: + o no reverse lookups on IP addresses when ipv6-enabled   o SSPI compatibility fix: using the proper DLLs   o binary LDAP properties are now shown base64 encoded   o Windows uploads from stdin using curl can now contain ctrl-Z bytes diff --git a/lib/hostip6.c b/lib/hostip6.c index 775ba9147..04ebaedee 100644 --- a/lib/hostip6.c +++ b/lib/hostip6.c @@ -228,7 +228,6 @@ Curl_addrinfo *Curl_getaddrinfo(struct connectdata *conn,    curl_socket_t s;    int pf;    struct SessionHandle *data = conn->data; -  int ai_flags;    *waitp=0; /* don't wait, we have the response now */ @@ -263,20 +262,20 @@ Curl_addrinfo *Curl_getaddrinfo(struct connectdata *conn,      }    } +  memset(&hints, 0, sizeof(hints)); +  hints.ai_family = pf; +  hints.ai_socktype = conn->socktype; +    if((1 == Curl_inet_pton(AF_INET, hostname, addrbuf)) ||       (1 == Curl_inet_pton(AF_INET6, hostname, addrbuf))) {      /* the given address is numerical only, prevent a reverse lookup */ -    ai_flags = AI_NUMERICHOST; +    hints.ai_flags = AI_NUMERICHOST;    } +#if 0 /* removed nov 8 2005 before 7.15.1 */    else -    ai_flags = AI_CANONNAME; - -  memset(&hints, 0, sizeof(hints)); -  hints.ai_family = pf; - -  hints.ai_socktype = conn->socktype; +    hints.ai_flags = AI_CANONNAME; +#endif -  hints.ai_flags = ai_flags;    if(port) {      snprintf(sbuf, sizeof(sbuf), "%d", port);      sbufptr=sbuf; diff --git a/lib/hostthre.c b/lib/hostthre.c index eb8e02e12..028a36c61 100644 --- a/lib/hostthre.c +++ b/lib/hostthre.c @@ -819,7 +819,9 @@ Curl_addrinfo *Curl_getaddrinfo(struct connectdata *conn,    memset(&hints, 0, sizeof(hints));    hints.ai_family = pf;    hints.ai_socktype = conn->socktype; +#if 0 /* removed nov 8 2005 before 7.15.1 */    hints.ai_flags = AI_CANONNAME; +#endif    itoa(port, sbuf, 10);    /* fire up a new resolver thread! */ | 
