1
0
mirror of https://github.com/moparisthebest/curl synced 2024-12-22 08:08:50 -05:00

- Michael Goffioul filed bug report #2107377 "Problem with mutli + GnuTLS +

proxy" (http://curl.haxx.se/bug/view.cgi?id=2107377) that showed how a multi
  interface using program didn't work when built with GnuTLS and a CONNECT
  request was done over a proxy (basically test 502 over a proxy to a HTTPS
  site). It turned out the ssl connect function would get called twice which
  caused the second call to fail.
This commit is contained in:
Daniel Stenberg 2008-09-22 20:42:13 +00:00
parent 1e076a4ae0
commit c4a694862c
3 changed files with 17 additions and 1 deletions

View File

@ -6,6 +6,14 @@
Changelog
Daniel Stenberg (22 Sep 2008)
- Michael Goffioul filed bug report #2107377 "Problem with mutli + GnuTLS +
proxy" (http://curl.haxx.se/bug/view.cgi?id=2107377) that showed how a multi
interface using program didn't work when built with GnuTLS and a CONNECT
request was done over a proxy (basically test 502 over a proxy to a HTTPS
site). It turned out the ssl connect function would get called twice which
caused the second call to fail.
Daniel Fandrich (22 Sep 2008)
- Fixed test 539 to handle an out of memory condition that shows up now
that memdebug.h is included in the test programs.

View File

@ -22,6 +22,7 @@ This release includes the following bugfixes:
o cookie with invalid expire dates are now considered expired
o HTTP pipelining over proxy
o fix regression in configure script which affected OpenSSL builds on MSYS
o GnuTLS-based multi interface doing HTTPS over proxy failed
This release includes the following known bugs:
@ -36,6 +37,6 @@ advice from friends like these:
Keith Mok, Yang Tse, Daniel Fandrich, Guenter Knauf, Dmitriy Sergeyev,
Linus Nielsen Feltzing, Martin Drasar, Stefan Krause, Dmitry Kurochkin,
Mike Revi, Andres Garcia
Mike Revi, Andres Garcia, Michael Goffioul
Thanks! (and sorry if I forgot to mention someone)

View File

@ -1814,6 +1814,13 @@ static CURLcode https_connecting(struct connectdata *conn, bool *done)
CURLcode result;
DEBUGASSERT((conn) && (conn->protocol & PROT_HTTPS));
if(conn->ssl[FIRSTSOCKET].use) {
/* in some circumstances, this already has SSL enabled and then we don't
need to connect SSL again */
*done = TRUE;
return CURLE_OK;
}
/* perform SSL initialization for this socket */
result = Curl_ssl_connect_nonblocking(conn, FIRSTSOCKET, done);
if(result) {