| |
|
|
|
cURL Mailing List Monthly Index Single Mail
curl-library Mailing List Archives
hangs up of application above libcurl
From: Igor Novoseltsev <IgorN_at_radvision.com>
Date: Tue, 2 Dec 2008 17:57:42 +0200
Hello dear all,
My application works asynchronously using the curl_multi_socket_action
It performs two simultaneous request transactions to the same server in
The application hangs up at the first iteration.
The expected message flow for the iteration is:
-- Req A -->
-- Req B -->
<-- 401 A -
<-- 401 B --
-- Req A (+ authentication) -->
<-- 500 A --
-- Req B (without authentication) -->
<-- 401 B -
The libcurl version is 7.19.3-20081126, Win32 (XP SP2).
While analyzing the hang I found,
that matching of the received socket event to the easy object is based
when the pipes are not taken into consideration.
As a result I get a situation when the READ event is ignored,
because it is routed to the second element in the connection recv_pipe,
"if(!easy->easy_conn->readchannel_inuse &&
This caused my application to wait for response for the second Req B
From this point of view the possible fix can be on receiving READ event
If no such element is found - fallback to the current mechanism which
What do you think of my analysis and the proposed solution?
Please find in the attachment the log generated by the libcurl and by
Note:
1. I added few extra print outs to the libcurl sources.
2. The log was collected until the application hung up.
Thank you,
Igor
These mail archives are generated by hypermail. |
Page updated November 12, 2010.
web site info