From e547bfa933b251263e73ac845c466196e0dec271 Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Wed, 18 Jun 2008 22:01:55 +0000 Subject: - 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 --- CHANGES | 6 ++++++ RELEASE-NOTES | 4 +++- lib/nss.c | 3 +++ 3 files changed, 12 insertions(+), 1 deletion(-) diff --git a/CHANGES b/CHANGES index 6fb46f4ca..b61afe82a 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 fc085d0c2..50ea7ad7b 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 cd52af156..39c716228 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; -- cgit v1.2.3