Blob Blame History Raw
From 68857e40d69ef792bfcc6d7395c65305a4117c51 Mon Sep 17 00:00:00 2001
From: Kamil Dudka <kdudka@redhat.com>
Date: Fri, 8 Jun 2012 23:02:57 +0200
Subject: [PATCH] ssl: fix duplicated SSL handshake with multi interface and proxy

Bug: https://bugzilla.redhat.com/788526
Reported by: Enrico Scholz
---
 lib/sslgen.c  |   10 +++++-----
 1 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/lib/sslgen.c b/lib/sslgen.c
index a77fd78..14649a9 100644
--- a/lib/sslgen.c
+++ b/lib/sslgen.c
@@ -211,18 +211,18 @@ CURLcode
 Curl_ssl_connect_nonblocking(struct connectdata *conn, int sockindex,
                              bool *done)
 {
-#ifdef curlssl_connect_nonblocking
   CURLcode res;
   /* mark this is being ssl requested from here on. */
   conn->ssl[sockindex].use = TRUE;
+#ifdef curlssl_connect_nonblocking
   res = curlssl_connect_nonblocking(conn, sockindex, done);
-  if(!res && *done)
-    Curl_pgrsTime(conn->data, TIMER_APPCONNECT); /* SSL is connected */
-  return res;
 #else
   *done = TRUE; /* fallback to BLOCKING */
-  return Curl_ssl_connect(conn, sockindex);
+  res = curlssl_connect(conn, sockindex);
 #endif /* non-blocking connect support */
+  if(!res && *done)
+    Curl_pgrsTime(conn->data, TIMER_APPCONNECT); /* SSL is connected */
+  return res;
 }
 
 /*
-- 
1.7.1