← Commit list

48d314f262

Daniel Stenberg
Daniel Stenberg
2025-10-23
SUCCESS Duration: 149s

Subject

connect: for CONNECT_ONLY, CURLOPT_TIMEOUT does not apply

Binary

No binary (build failed)

Architecture & Compiler Flags

Architecture: x86_64-linux-gnu Compiler: gcc (Ubuntu 11.4.0-1ubuntu1~22.04.3) 11.4.0

—

Build Log

(log yok)

Commit Diff GitHub →

lib/connect.c+3 -3
@@ -123,7 +123,7 @@ timediff_t Curl_timeleft(struct Curl_easy *data,
before the connect timeout expires and we must acknowledge whichever
timeout that is reached first. The total timeout is set per entire
operation, while the connect timeout is set per connect. */
- if(data->set.timeout <= 0 && !duringconnect)
+ if((!data->set.timeout || data->set.connect_only) && !duringconnect)
return 0; /* no timeout in place or checked, return "no limit" */
if(!nowp) {
@@ -131,9 +131,9 @@ timediff_t Curl_timeleft(struct Curl_easy *data,
nowp = &now;
}
- if(data->set.timeout > 0) {
+ if(data->set.timeout) {
timeleft_ms = data->set.timeout -
- curlx_timediff(*nowp, data->progress.t_startop);
+ curlx_timediff(*nowp, data->progress.t_startop);
if(!timeleft_ms)
timeleft_ms = -1; /* 0 is "no limit", fake 1 ms expiry */
if(!duringconnect)
lib/pingpong.c+1 -1
@@ -64,7 +64,7 @@ timediff_t Curl_pp_state_timeout(struct Curl_easy *data,
full response to arrive before we bail out */
timeout_ms = response_time - curlx_timediff(now, pp->response);
- if((data->set.timeout > 0) && !disconnecting) {
+ if(data->set.timeout && !disconnecting) {
/* if timeout is requested, find out how much overall remains */
timediff_t timeout2_ms = Curl_timeleft(data, &now, FALSE);
/* pick the lowest number */