]> granicus.if.org Git - curl/commitdiff
made the intended one hour default timeout in the CONNECT loop actually work
authorDaniel Stenberg <daniel@haxx.se>
Thu, 2 Dec 2004 23:30:13 +0000 (23:30 +0000)
committerDaniel Stenberg <daniel@haxx.se>
Thu, 2 Dec 2004 23:30:13 +0000 (23:30 +0000)
lib/http.c

index 0a20c833c6a2244b97e1c7b875e9349ce599c87a..d7a43ab308478129f9328a32a44d98ba978c19d0 100644 (file)
@@ -1024,14 +1024,13 @@ CURLcode Curl_ConnectHTTPProxyTunnel(struct connectdata *conn,
   struct Curl_transfer_keeper *k = &conn->keep;
   CURLcode result;
   int res;
-
   size_t nread;   /* total size read */
   int perline; /* count bytes per line */
   bool keepon=TRUE;
   ssize_t gotbytes;
   char *ptr;
-  long timeout = 3600; /* default timeout in seconds */
-
+  long timeout =
+    data->set.timeout?data->set.timeout:3600; /* in seconds */
   char *line_start;
   char *host_port;
   curl_socket_t tunnelsocket = conn->sock[sockindex];
@@ -1088,15 +1087,13 @@ CURLcode Curl_ConnectHTTPProxyTunnel(struct connectdata *conn,
 
     while((nread<BUFSIZE) && (keepon && !error)) {
 
-      if(data->set.timeout) {
-        /* if timeout is requested, find out how much remaining time we have */
-        timeout = data->set.timeout - /* timeout time */
-          Curl_tvdiff(Curl_tvnow(), conn->now)/1000; /* spent time */
-        if(timeout <=0 ) {
-          failf(data, "Proxy connection aborted due to timeout");
-          error = SELECT_TIMEOUT; /* already too little time */
-          break;
-        }
+      /* if timeout is requested, find out how much remaining time we have */
+      long check = timeout - /* timeout time */
+        Curl_tvdiff(Curl_tvnow(), conn->now)/1000; /* spent time */
+      if(check <=0 ) {
+        failf(data, "Proxy CONNECT aborted due to timeout");
+        error = SELECT_TIMEOUT; /* already too little time */
+        break;
       }
 
       /* timeout each second and check the timeout */