Date: Friday, January 24, 2014 @ 08:51:51 Author: lcarlier Revision: 104647
upgpkg: lib32-curl 7.34.0-1 upstream update 7.34.0 Added: lib32-curl/trunk/0001-connect-Try-all-addresses-in-first-connection-attemp.patch Modified: lib32-curl/trunk/PKGBUILD Deleted: lib32-curl/trunk/0001-Fix-NULL-pointer-reference-when-closing-an-unused-mu.patch -----------------------------------------------------------------+ 0001-Fix-NULL-pointer-reference-when-closing-an-unused-mu.patch | 39 -------- 0001-connect-Try-all-addresses-in-first-connection-attemp.patch | 47 ++++++++++ PKGBUILD | 22 ++-- 3 files changed, 59 insertions(+), 49 deletions(-) Deleted: 0001-Fix-NULL-pointer-reference-when-closing-an-unused-mu.patch =================================================================== --- 0001-Fix-NULL-pointer-reference-when-closing-an-unused-mu.patch 2014-01-24 07:28:17 UTC (rev 104646) +++ 0001-Fix-NULL-pointer-reference-when-closing-an-unused-mu.patch 2014-01-24 07:51:51 UTC (rev 104647) @@ -1,39 +0,0 @@ -From da3fc1ee91de656a30f3a12de394bcba55119872 Mon Sep 17 00:00:00 2001 -From: Linus Nielsen Feltzing <li...@haxx.se> -Date: Sun, 10 Feb 2013 22:57:58 +0100 -Subject: [PATCH] Fix NULL pointer reference when closing an unused multi - handle. - ---- - lib/multi.c | 8 +++++--- - tests/data/Makefile.am | 1 + - tests/data/test1508 | 31 +++++++++++++++++++++++++++++ - tests/libtest/Makefile.inc | 6 +++++- - tests/libtest/lib1508.c | 49 ++++++++++++++++++++++++++++++++++++++++++++++ - 5 files changed, 91 insertions(+), 4 deletions(-) - create mode 100644 tests/data/test1508 - create mode 100644 tests/libtest/lib1508.c - -diff --git a/lib/multi.c b/lib/multi.c -index fa0afb9..706df23 100644 ---- a/lib/multi.c -+++ b/lib/multi.c -@@ -1773,10 +1773,12 @@ CURLMcode curl_multi_cleanup(CURLM *multi_handle) - /* Close all the connections in the connection cache */ - close_all_connections(multi); - -- multi->closure_handle->dns.hostcache = multi->hostcache; -- Curl_hostcache_clean(multi->closure_handle); -+ if(multi->closure_handle) { -+ multi->closure_handle->dns.hostcache = multi->hostcache; -+ Curl_hostcache_clean(multi->closure_handle); - -- Curl_close(multi->closure_handle); -+ Curl_close(multi->closure_handle); -+ } - multi->closure_handle = NULL; - - Curl_hash_destroy(multi->sockhash); --- -1.8.1.3 - Added: 0001-connect-Try-all-addresses-in-first-connection-attemp.patch =================================================================== --- 0001-connect-Try-all-addresses-in-first-connection-attemp.patch (rev 0) +++ 0001-connect-Try-all-addresses-in-first-connection-attemp.patch 2014-01-24 07:51:51 UTC (rev 104647) @@ -0,0 +1,47 @@ +From 4e1ece2e44f432c2614f2090155c0aaf2226ea80 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Bj=C3=B6rn=20Stenberg?= <bj...@haxx.se> +Date: Sat, 28 Dec 2013 13:42:57 +0100 +Subject: [PATCH] connect: Try all addresses in first connection attempt +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Fixes a bug when all addresses in the first family fail immediately, due +to "Network unreachable" for example, curl would hang and never try the +next address family. + +Iterate through all address families when to trying establish the first +connection attempt. + +Bug: http://curl.haxx.se/bug/view.cgi?id=1315 +Reported-by: Michal Górny and Anthony G. Basile +--- + lib/connect.c | 12 ++++++------ + 1 file changed, 6 insertions(+), 6 deletions(-) + +diff --git a/lib/connect.c b/lib/connect.c +index 4b6ee00..588ac28 100644 +--- a/lib/connect.c ++++ b/lib/connect.c +@@ -1104,12 +1104,12 @@ CURLcode Curl_connecthost(struct connectdata *conn, /* context */ + conn->tempaddr[0]->ai_next == NULL ? timeout_ms : timeout_ms / 2; + + /* start connecting to first IP */ +- res = singleipconnect(conn, conn->tempaddr[0], &(conn->tempsock[0])); +- while(res != CURLE_OK && +- conn->tempaddr[0] && +- conn->tempaddr[0]->ai_next && +- conn->tempsock[0] == CURL_SOCKET_BAD) +- res = trynextip(conn, FIRSTSOCKET, 0); ++ while(conn->tempaddr[0]) { ++ res = singleipconnect(conn, conn->tempaddr[0], &(conn->tempsock[0])); ++ if(res == CURLE_OK) ++ break; ++ conn->tempaddr[0] = conn->tempaddr[0]->ai_next; ++ } + + if(conn->tempsock[0] == CURL_SOCKET_BAD) + return res; +-- +1.8.5.2 + Modified: PKGBUILD =================================================================== --- PKGBUILD 2014-01-24 07:28:17 UTC (rev 104646) +++ PKGBUILD 2014-01-24 07:51:51 UTC (rev 104647) @@ -8,7 +8,7 @@ pkgname=lib32-curl _pkgname=curl -pkgver=7.33.0 +pkgver=7.34.0 pkgrel=1 pkgdesc="An URL retrieval utility and library (32-bit)" arch=('x86_64') @@ -15,11 +15,18 @@ url="http://curl.haxx.se" license=('MIT') depends=('lib32-libssh2' "${_pkgname}") -options=('!libtool') -source=("http://curl.haxx.se/download/$_pkgname-$pkgver.tar.gz"{,.asc}) -md5sums=('c8a4eaac7ce7b0d1bf458d62ccd4ef93' - 'SKIP') +source=("http://curl.haxx.se/download/$_pkgname-$pkgver.tar.gz"{,.asc} + 0001-connect-Try-all-addresses-in-first-connection-attemp.patch) +md5sums=('d5b7edccbd1793e3549842e01331da20' + 'SKIP' + 'ee755b0e886207fc1e8154e426c46ca7') +prepare() { + cd "$_pkgname-$pkgver" + + patch -Np1 <"$srcdir"/0001-connect-Try-all-addresses-in-first-connection-attemp.patch +} + build() { cd "$_pkgname-$pkgver" @@ -27,11 +34,6 @@ export CXX="g++ -m32" export PKG_CONFIG_PATH="/usr/lib32/pkgconfig" - # workaround to avoid error during ./configure - - #CFLAGS=${CFLAGS/-D_FORTIFY_SOURCE=2/} - #CPPFLAGS="$CPPFLAGS -D_FORTIFY_SOURCE=2" - ./configure \ --prefix=/usr \ --mandir=/usr/share/man \