|   | 
  | 
| 
 
  | 
cURL   Mailing List   Monthly Index   Single Mail
curl-tracker mailing list Archives
 [ curl-Bugs-2958179 ] SSL handshake may loop forever
From: SourceForge.net <noreply_at_sourceforge.net>
 
Date: Fri, 26 Feb 2010 23:30:19 +0000 
Bugs item #2958179, was opened at 2010-02-24 21:13
 Please note that this message will contain a full copy of the comment thread,
 Initial Comment:
 But ssluse.c's ossl_connect_common() function has a loop where it attempts to perform ossl_connect_step2() inside a loop. If the socket is non-blocking, it will do this until the timeout is hit (which may be forever).
 I fixed this by changing the following:
     retcode = ossl_connect_step2(conn, sockindex);
 to
     return ossl_connect_step2(conn, sockindex);
 There doesn't seem to be any problem with this as what you'll get from curl_multi_perform() is CURLM_CALL_MULTI_PERFORM indicating you should call curl_multi_perform() some more. I'm not sure what impact this has on curl_easy_perform() though.
 Another solution, which maybe works with curl_easy_perform() if this one does not, is to have any registered progress callback called in this loop. The progress callback can return non-zero to make the call give up. But this is slightly less flexible because maybe I just want to do some other work before letting libcurl continue, and not to abort the entire transfer.
 (BTW - Sorry for not replying to comments posted on the bug I filed earlier; I did not receive notification emails until it got closed.)
 ----------------------------------------------------------------------
 >Comment By: Daniel Stenberg (bagder)
 Message:
 diff -u -p -r1.252 ssluse.c
 ----------------------------------------------------------------------
 You can respond by visiting: 
 These mail archives are generated by hypermail.  | 
Page updated November 12, 2010.
web site info