cURL / Mailing Lists / curl-library / Single Mail

curl-library

Re: Curl 7.38 gets stuck in SSL Handshake with Proxies

From: Alibek Joraev <alibek.joraev_at_gmail.com>
Date: Wed, 15 Oct 2014 15:45:59 +0100

hi !

just an update: I could not reproduce this case even with multi interface.

This case is very complex, with custom sockets and SSL (which Curl uses via
callbacks).
Currently my theory is that Curl tries to do protocol connect when it is
not supposed too or I am using Curl wrong way.
if I find problem (and workaround - I will update you guys on that).
If not, then I will give up this case for a while, and try with new Curl
releases.

br.,
Alibek

On Mon, Oct 13, 2014 at 7:07 PM, Alibek Joraev <alibek.joraev_at_gmail.com>
wrote:

> hi !
>
> I just wanted to say - that I tried to write simple independent sample app
> which can reproduce this issue (Curl 7.38.0 gets stuck in wrong state after
> receiving server SSL Hello when getting HTTPS target via Proxy which
> requires authentication. while 7.24.0 works fine).
>
> Unfortunately - in simple app (using easy handles) it works fine. Then, I
> realised that it gets stuck in multi_runsingle() function. Also in the
> real application, multi interface is used, which explains why it does not
> reproduce.
>
> but I still thought it is useful information for you. this strongly
> indicates that it is just state transitions which got wrong.
>
> tomorrow I will try to build standalone app which uses multi interface.
> hopefully, it will reproduce.
>
> Alibek
>
>
> On Wed, Oct 8, 2014 at 6:30 PM, Ryan Beasley <rbeasley_at_vmware.com> wrote:
>
>> Alibek wrote:
>> > Curl 7.24 undergoes withs state transitions:
>> > GDCurl: STATE: WAITPROXYCONNECT => WAITCONNECT
>> > GDCurl: STATE: WAITCONNECT => PROTOCONNECT
>> > while Curl 7.38 goes from WAITPROXYCONNECT to WAITCONNECT and then
>> remains
>> > stuck in this state.
>> > any ideas what could be root cause of this error?
>> > Perhaps new Curl requires some explicit configuration? or it could be
>> some
>> > inner regression?
>>
>> I *think* I git-bisected this to the following commit:
>>
>> commit a4cece3d47cf092da00cf9910e87bb60b9eff533
>> Author: Daniel Stenberg <daniel_at_haxx.se>
>> Date: Sat Jul 19 23:58:58 2014 +0200
>>
>> CONNECT: Revert Curl_proxyCONNECT back to 7.29.0 design
>>
>> This reverts commit cb3e6dfa3511 and instead fixes the problem
>> differently.
>>
>> The reverted commit addressed a test failure in test 1021 by
>> simplifying
>> and generalizing the code flow in a way that damaged the
>> performance. Now we modify the flow so that Curl_proxyCONNECT() again
>> does as much as possible in one go, yet still do test 1021 with and
>> without valgrind. It failed due to mistakes in the multi state
>> machine.
>>
>> Bug: http://curl.haxx.se/bug/view.cgi?id=1397
>> Reported-by: Paul Saab
>>
>> Could you try testing with revision
>> d242839af8511b389f0edd6519bdae6cd860e8a9 to confirm? Thanks!
>
>
>

-------------------------------------------------------------------
List admin: http://cool.haxx.se/list/listinfo/curl-library
Etiquette: http://curl.haxx.se/mail/etiquette.html
Received on 2014-10-15