cURL / Mailing Lists / curl-library / Single Mail

curl-library

Re: not receiving CURLMSG_DONE or other end-of-transfer signals

From: mm.w <0xcafefeed_at_gmail.com>
Date: Tue, 21 Apr 2015 17:10:18 -0700

a lot has to be retaken about understanding basics of BSD socket interface
; he would less theorize.

On Tue, Apr 21, 2015 at 4:46 PM, Daniel Hardman <daniel.hardman_at_gmail.com>
wrote:

> >>If asio is only issuing edge-triggered notifications, then libcurl will
> only see state transitions on sockets, not continuations of the previous
> state.
>
> I've verified that the edge-triggered change in asio is the cause of the
> hang. In event_cb in asiohiper.cpp, we call curl_multi_socket_action() only
> once for each state transition. This worked fine when asio was
> level-triggered. Now, however, we need to call curl_multi_socket_action()
> repeatedly, until curl tells us that our socket has a new target state.
>
> Besides explaining my hang, this probably explains the problem I reported
> in my other post--the asio sample running very slowly. I'll confirm that as
> well--and assuming the theory is confirmed after further testing, I'll post
> a patch.
>
> --Daniel
>
> -------------------------------------------------------------------
> List admin: http://cool.haxx.se/list/listinfo/curl-library
> Etiquette: http://curl.haxx.se/mail/etiquette.html
>

-------------------------------------------------------------------
List admin: http://cool.haxx.se/list/listinfo/curl-library
Etiquette: http://curl.haxx.se/mail/etiquette.html
Received on 2015-04-22