aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/if2ip.c15
1 files changed, 12 insertions, 3 deletions
diff --git a/lib/if2ip.c b/lib/if2ip.c
index 15ea9521e..389feed1c 100644
--- a/lib/if2ip.c
+++ b/lib/if2ip.c
@@ -124,16 +124,21 @@ if2ip_result_t Curl_if2ip(int af, unsigned int remote_scope,
#ifndef ENABLE_IPV6
(void) remote_scope;
+
+#ifndef HAVE_SOCKADDR_IN6_SIN6_SCOPE_ID
+ (void) remote_scope_id;
+#endif
+
#endif
if(getifaddrs(&head) >= 0) {
- for(iface=head; iface != NULL; iface=iface->ifa_next) {
+ for(iface = head; iface != NULL; iface=iface->ifa_next) {
if(iface->ifa_addr != NULL) {
if(iface->ifa_addr->sa_family == af) {
if(curl_strequal(iface->ifa_name, interf)) {
void *addr;
char *ip;
- char scope[12]="";
+ char scope[12] = "";
char ipstr[64];
#ifdef ENABLE_IPV6
if(af == AF_INET6) {
@@ -157,7 +162,9 @@ if2ip_result_t Curl_if2ip(int af, unsigned int remote_scope,
/* If given, scope id should match. */
if(remote_scope_id && scopeid != remote_scope_id) {
- if(res == IF2IP_NOT_FOUND) res = IF2IP_AF_NOT_SUPPORTED;
+ if(res == IF2IP_NOT_FOUND)
+ res = IF2IP_AF_NOT_SUPPORTED;
+
continue;
}
#endif
@@ -179,8 +186,10 @@ if2ip_result_t Curl_if2ip(int af, unsigned int remote_scope,
}
}
}
+
freeifaddrs(head);
}
+
return res;
}