From f2285a6d399a63fd324bb8c3e90cc4655ef803be Mon Sep 17 00:00:00 2001 From: Yang Tse Date: Thu, 1 Sep 2011 17:09:46 +0200 Subject: [PATCH] hostip.c: return immediately from Curl_resolv_timeout() upon expired timeout. Ensure existing logic in Curl_resolv_timeout() is not subverted upon getting a negative timeout from resolve_server(). The timeout in resolve_server() could be checked to avoid calling Curl_resolv_timeout() with an expired timeout, but fixing this in this way allows existing logic in resolve_server() to be kept unchanged. --- lib/hostip.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/lib/hostip.c b/lib/hostip.c index e857dced4..d261a163a 100644 --- a/lib/hostip.c +++ b/lib/hostip.c @@ -554,6 +554,10 @@ int Curl_resolv_timeout(struct connectdata *conn, *entry = NULL; + if(timeoutms < 0) + /* got an already expired timeout */ + return CURLRESOLV_TIMEDOUT; + #ifdef USE_ALARM_TIMEOUT if(data->set.no_signal) /* Ignore the timeout when signals are disabled */ -- 2.50.1