curl-library
Re: Test 504 in Windows
Date: Sat, 17 Jul 2004 00:09:50 +0200 (CEST)
On Thu, 8 Jul 2004, Andrés García wrote:
> The second time 'curl_multi_perform' gets invoked, 'easy->state' is
> 'CURLM_STATE_CONNECT'.
>
> In Linux 'Curl_connect' returns 7, couldn't connect error, which ends the
> transfer.
>
> In Windows though, 'Curl_connect' returns '0', in the following invocations,
> 'easy->state' is 'CURL_STATE_WAITRESOLVE' but 'Curl_is_resolved' always
> returns '0', the connection neither works nor fails so the transfer stays in
> a limbo until the test gives up.
Sorry it has taken me a while to get back on this. Thanks for looking at it!
Curl_connect() could return CURLE_OK (0) fine if the resolving of the host was
only started and not finished (if 'async' was set TRUE), and then it should be
resolved asynchronously.
With a "plain" windows build, that resolving would be done using the threaded
resolve approach in hostthre.c
However, since test 504 is using a plain IP address, there's no "resolving"
done and Curl_connect() should return CURLE_OK (0) immediately with 'async'
set FALSE! It should then proceed to the CURLM_STATE_WAITCONNECT state
instead, and there it should probably fail rather soon.
Does this help you continue tracking this?
-- Daniel Stenberg -- http://curl.haxx.se -- http://daniel.haxx.se Dedicated custom curl help for hire: http://haxx.se/curl.htmlReceived on 2004-07-17