diff --git a/curl-http-Don-t-wait-on-CONNECT-when-there-is-no-proxy.patch b/curl-http-Don-t-wait-on-CONNECT-when-there-is-no-proxy.patch new file mode 100644 index 0000000..7b0ff79 --- /dev/null +++ b/curl-http-Don-t-wait-on-CONNECT-when-there-is-no-proxy.patch @@ -0,0 +1,34 @@ +From 74dac344b2feb2e0f4baddb70532dc8e45d2d817 Mon Sep 17 00:00:00 2001 +From: "Jan Alexander Steffens (heftig)" +Date: Fri, 18 Aug 2017 10:43:02 +0200 +Subject: [PATCH] http: Don't wait on CONNECT when there is no proxy + +Since curl 7.55.0, NetworkManager almost always failed its connectivity +check by timeout. I bisected this to 5113ad04 (http-proxy: do the HTTP +CONNECT process entirely non-blocking). + +This patch replaces !Curl_connect_complete with Curl_connect_ongoing, +which returns false if the CONNECT state was left uninitialized and lets +the connection continue. + +Closes #1803 +Fixes #1804 + +Also-fixed-by: Gergely Nagy +--- + lib/http.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/lib/http.c b/lib/http.c +index 35c7c3d43f..3e33132783 100644 +--- a/lib/http.c ++++ b/lib/http.c +@@ -1371,7 +1371,7 @@ CURLcode Curl_http_connect(struct connectdata *conn, bool *done) + if(CONNECT_FIRSTSOCKET_PROXY_SSL()) + return CURLE_OK; /* wait for HTTPS proxy SSL initialization to complete */ + +- if(!Curl_connect_complete(conn)) ++ if(Curl_connect_ongoing(conn)) + /* nothing else to do except wait right now - we're not done here. */ + return CURLE_OK; + diff --git a/curl-mini.changes b/curl-mini.changes index 30dd1c5..0a57aa7 100644 --- a/curl-mini.changes +++ b/curl-mini.changes @@ -1,3 +1,14 @@ +------------------------------------------------------------------- +Tue Aug 29 17:33:29 UTC 2017 - zaitor@opensuse.org + +- Add curl-http-Don-t-wait-on-CONNECT-when-there-is-no-proxy.patch: + Fix NetworkManagers connectivity test. + +------------------------------------------------------------------- +Mon Aug 28 16:15:30 UTC 2017 - schwab@suse.de + +- ppc-build.patch: Fix build for powerpc + ------------------------------------------------------------------- Thu Aug 10 11:08:46 UTC 2017 - pmonrealgonzalez@suse.com diff --git a/curl-mini.spec b/curl-mini.spec index 145303b..7ebbc6e 100644 --- a/curl-mini.spec +++ b/curl-mini.spec @@ -49,6 +49,10 @@ Patch2: curl-secure-getenv.patch Patch3: curl-disable-test1427-i586.patch # PATCH-FIX-UPSTREAM curl-man3.patch - Fix to build libcurl man3 pages Patch4: curl-man3.patch +# PATCH-FIX-UPSTREAM ppc-build.patch - Fix build for powerpc +Patch5: ppc-build.patch +# PATCH-FIX-UPSTREAM curl-http-Don-t-wait-on-CONNECT-when-there-is-no-proxy.patch -- Fix NetworkManagers connectivity test +Patch6: curl-http-Don-t-wait-on-CONNECT-when-there-is-no-proxy.patch BuildRequires: libtool BuildRequires: pkgconfig %if !0%{?bootstrap} @@ -131,6 +135,8 @@ user interaction or any kind of interactivity. %patch2 %patch3 -p1 -R %patch4 -p1 +%patch5 -p1 +%patch6 -p1 %build # curl complains if macro definition is contained in CFLAGS diff --git a/curl.changes b/curl.changes index 30dd1c5..0a57aa7 100644 --- a/curl.changes +++ b/curl.changes @@ -1,3 +1,14 @@ +------------------------------------------------------------------- +Tue Aug 29 17:33:29 UTC 2017 - zaitor@opensuse.org + +- Add curl-http-Don-t-wait-on-CONNECT-when-there-is-no-proxy.patch: + Fix NetworkManagers connectivity test. + +------------------------------------------------------------------- +Mon Aug 28 16:15:30 UTC 2017 - schwab@suse.de + +- ppc-build.patch: Fix build for powerpc + ------------------------------------------------------------------- Thu Aug 10 11:08:46 UTC 2017 - pmonrealgonzalez@suse.com diff --git a/curl.spec b/curl.spec index fd3eb5c..4975395 100644 --- a/curl.spec +++ b/curl.spec @@ -47,6 +47,10 @@ Patch2: curl-secure-getenv.patch Patch3: curl-disable-test1427-i586.patch # PATCH-FIX-UPSTREAM curl-man3.patch - Fix to build libcurl man3 pages Patch4: curl-man3.patch +# PATCH-FIX-UPSTREAM ppc-build.patch - Fix build for powerpc +Patch5: ppc-build.patch +# PATCH-FIX-UPSTREAM curl-http-Don-t-wait-on-CONNECT-when-there-is-no-proxy.patch -- Fix NetworkManagers connectivity test +Patch6: curl-http-Don-t-wait-on-CONNECT-when-there-is-no-proxy.patch BuildRequires: libtool BuildRequires: pkgconfig %if !0%{?bootstrap} @@ -129,6 +133,8 @@ user interaction or any kind of interactivity. %patch2 %patch3 -p1 -R %patch4 -p1 +%patch5 -p1 +%patch6 -p1 %build # curl complains if macro definition is contained in CFLAGS diff --git a/ppc-build.patch b/ppc-build.patch new file mode 100644 index 0000000..abcc5e6 --- /dev/null +++ b/ppc-build.patch @@ -0,0 +1,13 @@ +Index: curl-7.55.0/include/curl/system.h +=================================================================== +--- curl-7.55.0.orig/include/curl/system.h ++++ curl-7.55.0/include/curl/system.h +@@ -401,7 +401,7 @@ + + #elif defined(__GNUC__) + # if !defined(__LP64__) && (defined(__ILP32__) || \ +- defined(__i386__) || defined(__ppc__) || defined(__arm__) || \ ++ defined(__i386__) || defined(__powerpc__) || defined(__arm__) || \ + defined(__sparc__) || defined(__mips__) || defined(__sh__) || \ + defined(__XTENSA__)) + # define CURL_SIZEOF_LONG 4