[115309] trunk/dports/net/curl

ryandesign at macports.org ryandesign at macports.org
Mon Dec 30 18:11:56 PST 2013


Revision: 115309
          https://trac.macports.org/changeset/115309
Author:   ryandesign at macports.org
Date:     2013-12-30 18:11:55 -0800 (Mon, 30 Dec 2013)
Log Message:
-----------
curl: apply upstream patch to fix deadlock (#41971)

Modified Paths:
--------------
    trunk/dports/net/curl/Portfile

Added Paths:
-----------
    trunk/dports/net/curl/files/patch-lib-connect.c.diff

Modified: trunk/dports/net/curl/Portfile
===================================================================
--- trunk/dports/net/curl/Portfile	2013-12-31 01:06:29 UTC (rev 115308)
+++ trunk/dports/net/curl/Portfile	2013-12-31 02:11:55 UTC (rev 115309)
@@ -31,12 +31,15 @@
 if {${name} eq ${subport}} {
     PortGroup                   muniversal 1.0
 
+    revision                    1
+
     depends_build               port:pkgconfig
 
     depends_lib                 port:libidn \
                                 port:zlib
 
     patchfiles                  patch-curl.h.diff
+    patchfiles-append           patch-lib-connect.c.diff
 
     configure.args              --enable-ipv6 \
                                 --without-gnutls \

Added: trunk/dports/net/curl/files/patch-lib-connect.c.diff
===================================================================
--- trunk/dports/net/curl/files/patch-lib-connect.c.diff	                        (rev 0)
+++ trunk/dports/net/curl/files/patch-lib-connect.c.diff	2013-12-31 02:11:55 UTC (rev 115309)
@@ -0,0 +1,23 @@
+https://github.com/bagder/curl/commit/4e1ece2e44f432c2614f2090155c0aaf2226ea80
+https://sourceforge.net/p/curl/bugs/1315/
+--- lib/connect.c.orig
++++ 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;
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.macosforge.org/pipermail/macports-changes/attachments/20131230/599756b2/attachment.html>


More information about the macports-changes mailing list