aboutsummaryrefslogtreecommitdiff
path: root/lib/nss.c
diff options
context:
space:
mode:
authorDaniel Stenberg <daniel@haxx.se>2007-05-25 21:56:27 +0000
committerDaniel Stenberg <daniel@haxx.se>2007-05-25 21:56:27 +0000
commitfe1fe64fd44bf46ea0f7c9b4bb2b1cb5637174cb (patch)
tree8e0636fd6f04db13769d57894312a86ecfb07e6b /lib/nss.c
parent9d904ee41b880bde9ad88c2f7ec742836a44490e (diff)
Rob Crittenden fixed bug #1705802
(http://curl.haxx.se/bug/view.cgi?id=1705802), which was filed by Daniel Black identifying several FTP-SSL test cases fail when we build libcurl with NSS for TLS/SSL. Listed as #42 in KNOWN_BUGS.
Diffstat (limited to 'lib/nss.c')
-rw-r--r--lib/nss.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/lib/nss.c b/lib/nss.c
index 652d9f1f7..ec7815400 100644
--- a/lib/nss.c
+++ b/lib/nss.c
@@ -74,6 +74,8 @@ PRFileDesc *PR_ImportTCPSocket(PRInt32 osfd);
static int initialized = 0;
static int noverify = 0;
+#define HANDSHAKE_TIMEOUT 30
+
typedef struct {
PRInt32 retryCount;
struct SessionHandle *data;
@@ -513,6 +515,12 @@ CURLcode Curl_nss_connect(struct connectdata * conn, int sockindex)
SSL_SetURL(connssl->handle, conn->host.name);
+ /* Force the handshake now */
+ if (SSL_ForceHandshakeWithTimeout(connssl->handle,
+ PR_SecondsToInterval(HANDSHAKE_TIMEOUT))
+ != SECSuccess)
+ goto error;
+
return CURLE_OK;
error: