diff options
author | Daniel Stenberg <daniel@haxx.se> | 2015-01-20 09:03:55 +0100 |
---|---|---|
committer | Daniel Stenberg <daniel@haxx.se> | 2015-01-20 09:03:55 +0100 |
commit | 960b04e137446943a258e910c48f183a1a1a273b (patch) | |
tree | 130196a14d1d6ff54dbe781c1e23d54cc595710d | |
parent | 089783c8383f401afef981500183a42eb9e10507 (diff) |
ipv6: enclose AF_INET6 uses with proper #ifdefs for ipv6
Reported-by: Chris Young
-rw-r--r-- | lib/connect.c | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/lib/connect.c b/lib/connect.c index 5a60d14ab..32888e653 100644 --- a/lib/connect.c +++ b/lib/connect.c @@ -5,7 +5,7 @@ * | (__| |_| | _ <| |___ * \___|\___/|_| \_\_____| * - * Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al. + * Copyright (C) 1998 - 2015, 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 @@ -1016,8 +1016,12 @@ static CURLcode singleipconnect(struct connectdata *conn, } infof(data, " Trying %s...\n", ipaddress); +#ifdef ENABLE_IPV6 is_tcp = (addr.family == AF_INET || addr.family == AF_INET6) && - addr.socktype == SOCK_STREAM; + addr.socktype == SOCK_STREAM; +#else + is_tcp = (addr.family == AF_INET) && addr.socktype == SOCK_STREAM; +#endif if(is_tcp && data->set.tcp_nodelay) tcpnodelay(conn, sockfd); @@ -1043,7 +1047,11 @@ static CURLcode singleipconnect(struct connectdata *conn, } /* possibly bind the local end to an IP, interface or port */ - if(addr.family == AF_INET || addr.family == AF_INET6) { + if(addr.family == AF_INET +#ifdef ENABLE_IPV6 + || addr.family == AF_INET6 +#endif + ) { result = bindlocal(conn, sockfd, addr.family, Curl_ipv6_scope((struct sockaddr*)&addr.sa_addr)); if(result) { |