cURL cURL > Mailing List > Monthly Index > Single Mail

curl-tracker Archives

[curl:bugs] #1479 timeout issue over proxy

From: Daniel Stenberg <bagder_at_users.sf.net>
Date: Wed, 25 Feb 2015 11:02:22 +0000

- **labels**: --> proxy, CONNECT
- **status**: open --> open-confirmed
- **Comment**:

I posted a suggested patch to the mailing list, lets continue there: http://curl.haxx.se/mail/lib-2015-02/0198.html

---
** [bugs:#1479] timeout issue over proxy**
**Status:** open-confirmed
**Labels:** proxy CONNECT 
**Created:** Mon Feb 02, 2015 06:08 AM UTC by Peter
**Last Updated:** Tue Feb 03, 2015 02:46 AM UTC
**Owner:** Daniel Stenberg
There is timeout issue over proxy in the libcurl 7.39, the root cause is due to the introduction of "Happy Eyeballs" feature of libcurl leading to waitconnect_getsock() returning 0 unexpectedly somehow over proxy.
The curl code might need to return "GETSOCK_WRITESOCK(0)" as 7.32 if 0 is going to be returned, without impacting the existing "Happy Eyeballs" feature.
http://curl.haxx.se/mail/lib-2013-10/0207.html
@@ -621,17 +621,26 @@ static int waitconnect_getsock(struct connectdata *conn,
                                curl_socket_t *sock,
                                int numsocks)
 {
+  int i;
+  int s=0;
+  int rc=0;
+
   if(!numsocks)
     return GETSOCK_BLANK;
 
-  sock[0] = conn->sock[FIRSTSOCKET];
+  for(i=0; i<2; i++) {
+    if(conn->tempsock[i] != CURL_SOCKET_BAD) {
+      sock[s] = conn->tempsock[i];
+      rc |= GETSOCK_WRITESOCK(s++);
+    }
+  }
 
   /* when we've sent a CONNECT to a proxy, we should rather wait for the
      socket to become readable to be able to get the response headers */
   if(conn->tunnel_state[FIRSTSOCKET] == TUNNEL_CONNECT)
     return GETSOCK_READSOCK(0);
 
-  return GETSOCK_WRITESOCK(0);
+  return rc;
Could you please it in the next libcurl version(7.41)?
---
Sent from sourceforge.net because curl-tracker@cool.haxx.se is subscribed to https://sourceforge.net/p/curl/bugs/
To unsubscribe from further messages, a project admin can change settings at https://sourceforge.net/p/curl/admin/bugs/options.  Or, if this is a mailing list, you can unsubscribe from the mailing list.
Received on 2015-02-25

These mail archives are generated by hypermail.