[curl/f17] fix duplicated SSL handshake with multi interface and proxy (#788526)

Kamil Dudka kdudka at fedoraproject.org
Sat Jun 9 11:20:25 UTC 2012


commit 082189f94a207b43a99f04f3caac2f6f67320573
Author: Kamil Dudka <kdudka at redhat.com>
Date:   Sat Jun 9 12:44:03 2012 +0200

    fix duplicated SSL handshake with multi interface and proxy (#788526)

 0003-curl-7.24.0-68857e40.patch |   42 +++++++++++++++++++++++++++++++++++++++
 curl.spec                       |    9 +++++++-
 2 files changed, 50 insertions(+), 1 deletions(-)
---
diff --git a/0003-curl-7.24.0-68857e40.patch b/0003-curl-7.24.0-68857e40.patch
new file mode 100644
index 0000000..faaf9c8
--- /dev/null
+++ b/0003-curl-7.24.0-68857e40.patch
@@ -0,0 +1,42 @@
+From 68857e40d69ef792bfcc6d7395c65305a4117c51 Mon Sep 17 00:00:00 2001
+From: Kamil Dudka <kdudka at 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
+
diff --git a/curl.spec b/curl.spec
index b641948..c48810f 100644
--- a/curl.spec
+++ b/curl.spec
@@ -1,7 +1,7 @@
 Summary: A utility for getting files from remote servers (FTP, HTTP, and others)
 Name: curl
 Version: 7.24.0
-Release: 3%{?dist}
+Release: 4%{?dist}
 License: MIT
 Group: Applications/Internet
 Source: http://curl.haxx.se/download/%{name}-%{version}.tar.lzma
@@ -14,6 +14,9 @@ Patch1: 0001-curl-7.24.0-20cb12db.patch
 # provide human-readable names for NSS errors (upstream commit a60edcc6)
 Patch2: 0002-curl-7.24.0-a60edcc6.patch
 
+# fix duplicated SSL handshake with multi interface and proxy (#788526)
+Patch3: 0003-curl-7.24.0-68857e40.patch
+
 # patch making libcurl multilib ready
 Patch101: 0101-curl-7.21.1-multilib.patch
 
@@ -115,6 +118,7 @@ done
 # upstream patches
 %patch1 -p1
 %patch2 -p1
+%patch3 -p1
 
 # Fedora patches
 %patch101 -p1
@@ -228,6 +232,9 @@ rm -rf $RPM_BUILD_ROOT
 %{_datadir}/aclocal/libcurl.m4
 
 %changelog
+* Sat Jun 09 2012 Kamil Dudka <kdudka at redhat.com> 7.24.0-4
+- fix duplicated SSL handshake with multi interface and proxy (#788526)
+
 * Mon May 21 2012 Kamil Dudka <kdudka at redhat.com> 7.24.0-3
 - do not use valgrind on ppc (#810992)
 


More information about the scm-commits mailing list