Fixed the getifaddrs version of Curl_if2ip to work on systems without IPv6
support (e.g. Minix)
This commit is contained in:
parent
479ddb1fee
commit
7abdc4b218
4
CHANGES
4
CHANGES
@ -6,6 +6,10 @@
|
|||||||
|
|
||||||
Changelog
|
Changelog
|
||||||
|
|
||||||
|
Daniel Fandrich (3 Dec 2008)
|
||||||
|
- Fixed the getifaddrs version of Curl_if2ip to work on systems without IPv6
|
||||||
|
support (e.g. Minix)
|
||||||
|
|
||||||
Daniel Stenberg (3 Dec 2008)
|
Daniel Stenberg (3 Dec 2008)
|
||||||
- Igor Novoseltsev filed bug #2351645
|
- Igor Novoseltsev filed bug #2351645
|
||||||
(http://curl.haxx.se/bug/view.cgi?id=2351645) that identified a problem with
|
(http://curl.haxx.se/bug/view.cgi?id=2351645) that identified a problem with
|
||||||
|
@ -84,6 +84,7 @@ char *Curl_if2ip(int af, const char *interface, char *buf, int buf_size)
|
|||||||
curl_strequal(iface->ifa_name, interface)) {
|
curl_strequal(iface->ifa_name, interface)) {
|
||||||
void *addr;
|
void *addr;
|
||||||
char scope[12]="";
|
char scope[12]="";
|
||||||
|
#ifdef ENABLE_IPV6
|
||||||
if (af == AF_INET6) {
|
if (af == AF_INET6) {
|
||||||
unsigned int scopeid;
|
unsigned int scopeid;
|
||||||
addr = &((struct sockaddr_in6 *)iface->ifa_addr)->sin6_addr;
|
addr = &((struct sockaddr_in6 *)iface->ifa_addr)->sin6_addr;
|
||||||
@ -93,6 +94,7 @@ char *Curl_if2ip(int af, const char *interface, char *buf, int buf_size)
|
|||||||
snprintf(scope, sizeof(scope), "%%%u", scopeid);
|
snprintf(scope, sizeof(scope), "%%%u", scopeid);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
#endif
|
||||||
addr = &((struct sockaddr_in *)iface->ifa_addr)->sin_addr;
|
addr = &((struct sockaddr_in *)iface->ifa_addr)->sin_addr;
|
||||||
ip = (char *) Curl_inet_ntop(af, addr, buf, buf_size);
|
ip = (char *) Curl_inet_ntop(af, addr, buf, buf_size);
|
||||||
strlcat(buf, scope, buf_size);
|
strlcat(buf, scope, buf_size);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user