From 7a710b4970a183a2f0987419706758ffd918cecc Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Tue, 17 Oct 2006 08:06:27 +0000 Subject: Jeff helped me pinpoint that we didn't properly set the expire timer during c-ares name resolves, but now we do! --- lib/hostares.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/lib/hostares.c b/lib/hostares.c index 035d0e222..1db0f4320 100644 --- a/lib/hostares.c +++ b/lib/hostares.c @@ -75,6 +75,7 @@ #include "share.h" #include "strerror.h" #include "url.h" +#include "multiif.h" #include "connect.h" /* for the Curl_sockerrno() proto */ #define _MPRINTF_REPLACE /* use our functions only */ @@ -109,9 +110,20 @@ int Curl_resolv_getsock(struct connectdata *conn, int numsocks) { + struct timeval maxtime; + struct timeval timeout; int max = ares_getsock(conn->data->state.areschannel, (int *)socks, numsocks); + + maxtime.tv_sec = CURL_TIMEOUT_RESOLVE; + maxtime.tv_usec = 0; + + ares_timeout(conn->data->state.areschannel, &maxtime, &timeout); + + Curl_expire(conn->data, + (timeout.tv_sec * 1000) + (timeout.tv_usec/1000) ); + return max; } -- cgit v1.2.3