From f72cb0ced39aca827b5269eba5455dbf846410e2 Mon Sep 17 00:00:00 2001 From: Nicolás Reynolds Date: Fri, 3 Jan 2014 03:19:39 +0000 Subject: Fri Jan 3 03:17:00 UTC 2014 --- ...-all-addresses-in-first-connection-attemp.patch | 47 ++++++++++++++++++++++ core/curl/PKGBUILD | 12 +++++- core/s-nail/PKGBUILD | 6 +-- 3 files changed, 60 insertions(+), 5 deletions(-) create mode 100644 core/curl/0001-connect-Try-all-addresses-in-first-connection-attemp.patch (limited to 'core') diff --git a/core/curl/0001-connect-Try-all-addresses-in-first-connection-attemp.patch b/core/curl/0001-connect-Try-all-addresses-in-first-connection-attemp.patch new file mode 100644 index 000000000..f3428c7d5 --- /dev/null +++ b/core/curl/0001-connect-Try-all-addresses-in-first-connection-attemp.patch @@ -0,0 +1,47 @@ +From 4e1ece2e44f432c2614f2090155c0aaf2226ea80 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Bj=C3=B6rn=20Stenberg?= +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 + diff --git a/core/curl/PKGBUILD b/core/curl/PKGBUILD index 06a7b278f..3ea9f4915 100644 --- a/core/curl/PKGBUILD +++ b/core/curl/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 202635 2013-12-23 02:04:37Z dreisner $ +# $Id: PKGBUILD 203041 2014-01-02 14:43:46Z dreisner $ # Maintainer: Dave Reisner # Contributor: Angel Velasquez # Contributor: Eric Belanger @@ -7,7 +7,7 @@ pkgname=curl pkgver=7.34.0 -pkgrel=1 +pkgrel=2 pkgdesc="An URL retrieval utility and library" arch=('i686' 'x86_64') url="http://curl.haxx.se" @@ -16,11 +16,19 @@ depends=('ca-certificates' 'libssh2' 'openssl' 'zlib') provides=('libcurl.so') options=('strip' 'debug') source=("http://curl.haxx.se/download/$pkgname-$pkgver.tar.gz"{,.asc} + 0001-connect-Try-all-addresses-in-first-connection-attemp.patch curlbuild.h) md5sums=('d5b7edccbd1793e3549842e01331da20' 'SKIP' + 'ee755b0e886207fc1e8154e426c46ca7' '751bd433ede935c8fae727377625a8ae') +prepare() { + cd "$pkgname-$pkgver" + + patch -Np1 <"$srcdir"/0001-connect-Try-all-addresses-in-first-connection-attemp.patch +} + build() { cd "$pkgname-$pkgver" diff --git a/core/s-nail/PKGBUILD b/core/s-nail/PKGBUILD index bf726ac6b..cb41a1e7e 100644 --- a/core/s-nail/PKGBUILD +++ b/core/s-nail/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 202657 2013-12-23 17:15:07Z bisson $ +# $Id: PKGBUILD 203051 2014-01-02 20:19:55Z bisson $ # Maintainer: Gaetan Bisson # Contributor: Stéphane Gaudreault # Contributor: Sergej Pupykin # Contributor: Andreas Wagner pkgname=s-nail -pkgver=14.5 +pkgver=14.5.1 pkgrel=1 pkgdesc='Mail processing system with a command syntax reminiscent of ed' url='http://sourceforge.net/projects/s-nail/' @@ -14,7 +14,7 @@ arch=('i686' 'x86_64') depends=('openssl') optdepends=('smtp-forwarder: for sending mail') source=("http://downloads.sourceforge.net/project/${pkgname}/${pkgname}-${pkgver//./_}.tar.gz") -sha1sums=('0c7341f7404f7113a3c4ed915adfed720379e8e7') +sha1sums=('022e09b9873ce3fdc745a5894374ff918befec2c') groups=('base') backup=('etc/mail.rc') -- cgit v1.2.3-54-g00ecf