]> granicus.if.org Git - curl/commitdiff
url: Fix CURLOPT_MAXAGE_CONN time comparison
authorCliff Crosland <cliftonc@cisco.com>
Tue, 11 Jun 2019 21:17:30 +0000 (14:17 -0700)
committerJay Satiro <raysatiro@yahoo.com>
Wed, 12 Jun 2019 05:10:22 +0000 (01:10 -0400)
Old connections are meant to expire from the connection cache after
CURLOPT_MAXAGE_CONN seconds. However, they actually expire after 1000x
that value. This occurs because a time value measured in milliseconds is
accidentally divided by 1M instead of by 1,000.

Closes https://github.com/curl/curl/pull/4013

lib/url.c

index c37ce04947c010b1a795af0bd06aad6aef130498..bf1c7c9eacd8479174745d3dfd5caa0755fcf2a3 100644 (file)
--- a/lib/url.c
+++ b/lib/url.c
@@ -975,7 +975,7 @@ static bool conn_maxage(struct Curl_easy *data,
     timediff_t idletime = Curl_timediff(now, conn->lastused);
     idletime /= 1000; /* integer seconds is fine */
 
-    if(idletime/1000 > data->set.maxage_conn) {
+    if(idletime > data->set.maxage_conn) {
       infof(data, "Too old connection (%ld seconds), disconnect it\n",
             idletime);
       return TRUE;