curl / Mailing Lists / curl-library / Single Mail


libCurl 7.61.1: no response message received indicating dead connection

From: Bernd Mueller \(bermuell\) via curl-library <>
Date: Tue, 9 Oct 2018 13:40:56 +0000


I’m reaching out to you as we saw a functional change in libCurl which might not have been intended or to get advice how to cope with it on application side.

When moving from libCurl version 7.61.0 to 7.61.1 a response message is not received anymore
in case of ‘dead connection’ (‘stream_error’ in multi.c). Where as we
received in 7.61.0 a response message with error code 7="Couldn't connect to server”.

It looks like that the reason is the introduction of the state function ‘Curl_init_completed’ for state CURLM_STATE_COMPLETED which stops all the timers by calling ‘Curl_expire_clear’.

In the above mentioned error case
* “Completed” state is the next state
* as a result, all timers are stopped (which was not the case in v7.61.0)
* response message which is created afterwards (,
with error code indicating the ’timed out’) is never received by the application because of the stopped timers...I assume.

I tried not stopping/clearing the timers in that ‘error’ situation and then we receive on application side the response message with the expected error code in ‘msg->’.

Is there a change required on application side to get informed about the failing attempt to send the message in that situation?

We’re using
- libCurl (7.61.1).
- multi interface to connect to a server using HTTPS.

thanks a lot for your help,

Received on 2018-10-09