- Robert Iakobashvili fixed CURLOPT_INTERFACE for IPv6.

This commit is contained in:
Daniel Stenberg 2007-03-09 22:48:07 +00:00
parent 6dd4fe0740
commit 1e55ed5c7d
3 changed files with 12 additions and 2 deletions

View File

@ -7,6 +7,8 @@
Changelog
Daniel (9 March 2007)
- Robert Iakobashvili fixed CURLOPT_INTERFACE for IPv6.
- Robert A. Monat improved the maketgz and VC6/8 generating to set the correct
machine type too.

View File

@ -38,6 +38,7 @@ This release includes the following bugfixes:
used
o HTTP Digest header parsing fix for unquoted last word ending with CRLF
o CURLOPT_PORT, HTTP proxy, re-using connections and non-HTTP protocols
o CURLOPT_INTERFACE for ipv6
This release includes the following known bugs:
@ -58,6 +59,7 @@ advice from friends like these:
Yang Tse, Manfred Schwarb, Michael Wallner, Jeff Pohlmeyer, Shmulik Regev,
Rob Crittenden, Robert A. Monat, Dan Fandrich, Duncan Mac-Vicar Prett,
Michal Marek, Robson Braga Araujo, Ian Turner, Linus Nielsen Feltzing,
Ravi Pratap, Adam D. Moss, Jose Kahan, Hang Kin Lau, Justin Fletcher
Ravi Pratap, Adam D. Moss, Jose Kahan, Hang Kin Lau, Justin Fletcher,
Robert Iakobashvili
Thanks! (and sorry if I forgot to mention someone)

View File

@ -233,7 +233,9 @@ static CURLcode bindlocal(struct connectdata *conn,
char myhost[256] = "";
in_addr_t in;
int rc;
char ipv6_addr[16];
bool was_iface = FALSE;
int in6 = -1;
/* First check if the given name is an IP address */
in=inet_addr(data->set.device);
@ -314,7 +316,11 @@ static CURLcode bindlocal(struct connectdata *conn,
#endif
in=inet_addr(myhost);
if (CURL_INADDR_NONE == in) {
#ifdef ENABLE_IPV6
in6 = inet_pton (AF_INET6, myhost, (void *)&ipv6_addr);
#endif
if (CURL_INADDR_NONE == in && -1 == in6) {
failf(data,"couldn't find my own IP address (%s)", myhost);
return CURLE_HTTP_PORT_FAILED;
} /* end of inet_addr */