From: Daniel Stenberg Date: Wed, 18 Jun 2008 22:01:55 +0000 (+0000) Subject: - Rob Crittenden brought a fix for the NSS layer that makes libcurl no longer X-Git-Tag: curl-7_19_0~444 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=e547bfa933b251263e73ac845c466196e0dec271;p=thirdparty%2Fcurl.git - Rob Crittenden brought a fix for the NSS layer that makes libcurl no longer always fire up a new connection rather than using the existing one when the multi interface is used. Original bug report: https://bugzilla.redhat.com/show_bug.cgi?id=450140 --- diff --git a/CHANGES b/CHANGES index 6fb46f4ca9..b61afe82a6 100644 --- a/CHANGES +++ b/CHANGES @@ -6,6 +6,12 @@ Changelog +Daniel Stenberg (18 Jun 2008) +- Rob Crittenden brought a fix for the NSS layer that makes libcurl no longer + always fire up a new connection rather than using the existing one when the + multi interface is used. Original bug report: + https://bugzilla.redhat.com/show_bug.cgi?id=450140 + Yang Tse (18 Jun 2008) - Internal configure script improvement. No longer break out of shell "for" statements from inside AC_FOO_IFELSE macros, otherwise temporary macro files diff --git a/RELEASE-NOTES b/RELEASE-NOTES index fc085d0c2c..50ea7ad7b2 100644 --- a/RELEASE-NOTES +++ b/RELEASE-NOTES @@ -19,6 +19,7 @@ This release includes the following changes: This release includes the following bugfixes: o Fixed curl-config --ca + o Fixed the multi interface connection re-use with NSS-built libcurl This release includes the following known bugs: @@ -35,6 +36,7 @@ New curl mirrors: This release would not have looked like this without help, code, reports and advice from friends like these: - Lenny Rachitsky, Axel Tillequin, Arnaud Ebalard + Lenny Rachitsky, Axel Tillequin, Arnaud Ebalard, Yang Tse, Dan Fandrich, + Rob Crittenden Thanks! (and sorry if I forgot to mention someone) diff --git a/lib/nss.c b/lib/nss.c index cd52af1566..39c716228f 100644 --- a/lib/nss.c +++ b/lib/nss.c @@ -925,6 +925,9 @@ CURLcode Curl_nss_connect(struct connectdata *conn, int sockindex) curlerr = CURLE_SSL_CONNECT_ERROR; + if (connssl->state == ssl_connection_complete) + return CURLE_OK; + /* FIXME. NSS doesn't support multiple databases open at the same time. */ if(!initialized) { initialized = 1;