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;