Jeff helped me pinpoint that we didn't properly set the expire timer during

c-ares name resolves, but now we do!
This commit is contained in:
Daniel Stenberg 2006-10-17 08:06:27 +00:00
parent 0bb20cc611
commit 7a710b4970
1 changed files with 12 additions and 0 deletions

View File

@ -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;
}