aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/hostasyn.c8
-rw-r--r--lib/hostip.h2
-rw-r--r--lib/hostip6.c3
-rw-r--r--lib/hostthre.c10
4 files changed, 12 insertions, 11 deletions
diff --git a/lib/hostasyn.c b/lib/hostasyn.c
index da072a043..2bf5a580a 100644
--- a/lib/hostasyn.c
+++ b/lib/hostasyn.c
@@ -96,8 +96,8 @@
**********************************************************************/
#ifdef CURLRES_ASYNCH
/*
- * Curl_addrinfo_callback() gets called by ares/gethostbyname_thread() when we
- * got the name resolved (or not!).
+ * addrinfo_callback() gets called by ares, gethostbyname_thread() or
+ * getaddrinfo_thread() when we got the name resolved (or not!).
*
* If the status argument is CURL_ASYNC_SUCCESS, we might need to copy the
* address field since it might be freed when this function returns. This
@@ -161,9 +161,9 @@ void Curl_addrinfo4_callback(void *arg, /* "struct connectdata *" */
#ifdef CURLRES_IPV6
void Curl_addrinfo6_callback(void *arg, /* "struct connectdata *" */
int status,
- struct addrinfo *hostent)
+ struct addrinfo *ai)
{
- addrinfo_callback(arg, status, hostent);
+ addrinfo_callback(arg, status, ai);
}
#endif
diff --git a/lib/hostip.h b/lib/hostip.h
index 9eb1bf055..ea9d0803c 100644
--- a/lib/hostip.h
+++ b/lib/hostip.h
@@ -206,7 +206,7 @@ void Curl_addrinfo4_callback(void *arg,
resolve, ipv6 */
void Curl_addrinfo6_callback(void *arg,
int status,
- struct hostent *hostent);
+ struct addrinfo *ai);
/* [ipv4 only] Creates a Curl_addrinfo struct from a numerical-only IP
diff --git a/lib/hostip6.c b/lib/hostip6.c
index 55e273623..7b0091d4c 100644
--- a/lib/hostip6.c
+++ b/lib/hostip6.c
@@ -111,8 +111,9 @@ void Curl_freeaddrinfo(Curl_addrinfo *p)
* address. But this is an ipv6 build and then we don't copy the address, we
* just return the same pointer!
*/
-Curl_addrinfo *Curl_addrinfo_copy(Curl_addrinfo *source)
+Curl_addrinfo *Curl_addrinfo_copy(void *source, int port)
{
+ (void) port;
return source;
}
#endif
diff --git a/lib/hostthre.c b/lib/hostthre.c
index be8ab20a8..6ab070638 100644
--- a/lib/hostthre.c
+++ b/lib/hostthre.c
@@ -163,7 +163,7 @@ struct thread_data {
#if defined(CURLRES_IPV4)
/*
- * gethostbyname_thread() resolves a name, calls the Curl_addrinfo_callback
+ * gethostbyname_thread() resolves a name, calls the Curl_addrinfo4_callback
* and then exits.
*
* For builds without ARES/ENABLE_IPV6, create a resolver thread and wait on
@@ -201,7 +201,7 @@ static unsigned __stdcall gethostbyname_thread (void *arg)
#elif defined(CURLRES_IPV6)
/*
- * getaddrinfo_thread() resolves a name, calls Curl_addrinfo_callback and then
+ * getaddrinfo_thread() resolves a name, calls Curl_addrinfo6_callback and then
* exits.
*
* For builds without ARES, but with ENABLE_IPV6, create a resolver thread
@@ -227,10 +227,10 @@ static unsigned __stdcall getaddrinfo_thread (void *arg)
#ifdef DEBUG_THREADING_GETADDRINFO
dump_addrinfo (conn, res);
#endif
- Curl_addrinfo_callback(conn, CURL_ASYNC_SUCCESS, res);
+ Curl_addrinfo6_callback(conn, CURL_ASYNC_SUCCESS, res);
}
else {
- Curl_addrinfo_callback(conn, (int)WSAGetLastError(), NULL);
+ Curl_addrinfo6_callback(conn, (int)WSAGetLastError(), NULL);
TRACE(("Winsock-error %d, no address\n", conn->async.status));
}
return (rc);
@@ -345,7 +345,7 @@ CURLcode Curl_wait_for_resolv(struct connectdata *conn,
status = WaitForSingleObject(td->thread_hnd, 1000UL*timeout);
if (status == WAIT_OBJECT_0 || status == WAIT_ABANDONED) {
/* Thread finished before timeout; propagate Winsock error to this thread.
- * 'conn->async.done = TRUE' is set in Curl_addrinfo_callback().
+ * 'conn->async.done = TRUE' is set in Curl_addrinfo4/6_callback().
*/
WSASetLastError(conn->async.status);
GetExitCodeThread(td->thread_hnd, &td->thread_status);