- Aug 30, 2016
-
-
Daniel Stenberg authored
CURLDEBUG is for the memory debugging DEBUGBUILD is for the extra debug stuff Pointed-out-by: Steve Holme
-
- Aug 28, 2016
-
-
Daniel Stenberg authored
With HTTP/2 each transfer is made in an indivial logical stream over the connection, making most previous errors that caused the connection to get forced-closed now instead just kill the stream and not the connection. Fixes #941
-
- Aug 21, 2016
-
-
Marco Deckel authored
Closes #820
-
- Jul 20, 2016
-
-
Jay Satiro authored
- Linux TFO + TLS is not implemented yet. Bug: https://github.com/curl/curl/issues/907
-
- Jun 22, 2016
-
-
Daniel Stenberg authored
-
- Jun 04, 2016
-
-
Steve Holme authored
connect.c:952:5: warning: suggest explicit braces to avoid ambiguous 'else'
-
Steve Holme authored
Closes #845
-
- May 08, 2016
-
-
Antonio Larrosa authored
Sometimes, in systems with both ipv4 and ipv6 addresses but where the network doesn't support ipv6, Curl_is_connected returns an error (intermittently) even if the ipv4 socket connects successfully. This happens because there's a for-loop that iterates on the sockets but the error variable is not resetted when the ipv4 is checked and is ok. This patch fixes this problem by setting error to 0 when checking the second socket and not having a result yet. Fixes #794
-
- Apr 29, 2016
-
-
Daniel Stenberg authored
curl_printf.h defines printf to curl_mprintf, etc. This can cause problems with external headers which may use __attribute__((format(printf, ...))) markers etc. To avoid that they cause problems with system includes, we include curl_printf.h after any system headers. That makes the three last headers to always be, and we keep them in this order: curl_printf.h curl_memory.h memdebug.h None of them include system headers, they all do funny #defines. Reported-by: David Benjamin Fixes #743
-
- Apr 19, 2016
-
-
Kamil Dudka authored
This commit fixes a Clang warning introduced in curl-7_48_0-190-g8f72b13: Error: CLANG_WARNING: lib/connect.c:1120:11: warning: The right operand of '==' is a garbage value 1118| } 1119| 1120|-> if(-1 == rc) 1121| error = SOCKERRNO; 1122| }
-
- Apr 18, 2016
-
-
Alessandro Ghedini authored
Closes #660
-
Alessandro Ghedini authored
-
- Apr 17, 2016
-
-
Michael Kaufmann authored
Makes curl connect to the given host+port instead of the host+port found in the URL.
-
- Mar 20, 2016
-
-
Steve Holme authored
warning C4189: 'data': local variable is initialized but not referenced
-
- Feb 04, 2016
-
-
Viktor Szakats authored
-
- Feb 02, 2016
-
-
Daniel Stenberg authored
-
- Nov 16, 2015
-
-
Anders Bakken authored
Closes #528
-
- Sep 27, 2015
-
-
Daniel Stenberg authored
For a single-stream download from localhost, we managed to increase transfer speed from 1.6MB/sec to around 400MB/sec, mostly because of this single fix.
-
- Sep 26, 2015
-
-
Tatsuhiro Tsujikawa authored
Closes #457
-
- Aug 01, 2015
-
-
Steve Holme authored
connect.c:953:5: warning: initializer element is not computable at load time connect.c:953:5: warning: missing initializer for field 'dwMinorVersion' of 'OSVERSIONINFOEX' curl_sspi.c:97:5: warning: initializer element is not computable at load time curl_sspi.c:97:5: warning: missing initializer for field 'szCSDVersion' of 'OSVERSIONINFOEX'
-
- Jul 22, 2015
-
-
Jay Satiro authored
- Fix the VerifyVersionInfo calls, which we use to test for the OS major version, to also test for the minor version as well as the service pack major and minor versions. MSDN: "If you are testing the major version, you must also test the minor version and the service pack major and minor versions." https://msdn.microsoft.com/en-us/library/windows/desktop/ms725492.aspx Bug: https://github.com/bagder/curl/pull/353#issuecomment-123493098 Reported-by: Marcel Raad <MarcelRaad@users.noreply.github.com>
-
- Jun 08, 2015
-
-
Daniel Stenberg authored
When CURL_SOCKET_BAD is returned in the callback, it should be treated as an error (CURLE_COULDNT_CONNECT) if no other socket is subsequently created when trying to connect to a server. Bug: http://curl.haxx.se/mail/lib-2015-06/0047.html
-
- May 12, 2015
-
-
Daniel Stenberg authored
... by using plain structs instead of pointers for the connection cache, we can avoid several dynamic allocations that weren't necessary.
-
- Mar 24, 2015
-
-
Dan Fandrich authored
This header file must be included after all header files except memdebug.h, as it does similar memory function redefinitions and can be similarly affected by conflicting definitions in system or dependent library headers.
-
- Mar 23, 2015
-
-
Yamada Yasuharu authored
By making sure Curl_getconnectinfo() uses the correct connection cache to find the last connection.
-
- Mar 17, 2015
-
-
Daniel Stenberg authored
-
- Mar 16, 2015
-
-
Jay Satiro authored
Bug: https://github.com/bagder/curl/pull/168 (trynextip) - Don't try the "other" protocol family unless IPv6 is available. In an IPv4-only build the other family can only be IPv6 which is unavailable. This change essentially stops IPv4-only builds from attempting the "happy eyeballs" secondary parallel connection that is supposed to be used by the "other" address family. Prior to this change in IPv4-only builds that secondary parallel connection attempt could be erroneously used by the same family (IPv4) which caused a bug where every address after the first for a host could be tried twice, often in parallel. This change fixes that bug. An example of the bug is shown below. Assume MTEST resolves to 3 addresses 127.0.0.2, 127.0.0.3 and 127.0.0.4: * STATE: INIT => CONNECT handle 0x64f4b0; line 1046 (connection #-5000) * Rebuilt URL to: http://MTEST/ * Added connection 0. The cache now contains 1 members * STATE: CONNECT => WAITRESOLVE handle 0x64f4b0; line 1083 (connection #0) * Trying 127.0.0.2... * STATE: WAITRESOLVE => WAITCONNECT handle 0x64f4b0; line 1163 (connection #0) * Trying 127.0.0.3... * connect to 127.0.0.2 port 80 failed: Connection refused * Trying 127.0.0.3... * connect to 127.0.0.3 port 80 failed: Connection refused * Trying 127.0.0.4... * connect to 127.0.0.3 port 80 failed: Connection refused * Trying 127.0.0.4... * connect to 127.0.0.4 port 80 failed: Connection refused * connect to 127.0.0.4 port 80 failed: Connection refused * Failed to connect to MTEST port 80: Connection refused * Closing connection 0 * The cache now contains 0 members * Expire cleared curl: (7) Failed to connect to MTEST port 80: Connection refused The bug was born in commit bagder/curl@2d435c7.
-
- Mar 15, 2015
-
-
Frank Meier authored
In function Curl_closesocket() in connect.c the call to Curl_multi_closed() was wrongly omitted if a socket close function (CURLOPT_CLOSESOCKETFUNCTION) is registered. That would lead to not removing the socket from the internal hash table and not calling the multi socket callback appropriately. Bug: http://curl.haxx.se/bug/view.cgi?id=1493
-
- Mar 07, 2015
-
-
Daniel Stenberg authored
-
- Mar 03, 2015
-
-
Daniel Stenberg authored
... and as a consequence, introduce curl_printf.h with that re-define magic instead and make all libcurl code use that instead.
-
- Feb 23, 2015
-
-
Kamil Dudka authored
... even if the last IPv6 connection attempt has failed. Bug: https://bugzilla.redhat.com/show_bug.cgi?id=1187531#c4
-
Kamil Dudka authored
... in case the protocol versions are mixed in a DNS response (IPv6 -> IPv4 -> IPv6). Bug: https://bugzilla.redhat.com/show_bug.cgi?id=1187531#c3
-
- Jan 20, 2015
-
-
Daniel Stenberg authored
Reported-by: Chris Young
-
- Dec 27, 2014
-
-
Steve Holme authored
For consistency, as we seem to have a bit of a mixed bag, changed all instances of ipv4 and ipv6 in comments and documentations to use the correct case.
-
- Dec 16, 2014
-
-
Patrick Monnerat authored
There was a confusion between these: this commit tries to disambiguate them. - Scope can be computed from the address itself. - Scope id is scope dependent: it is currently defined as 1-based local interface index for link-local scoped addresses, and as a site index(?) for (obsolete) site-local addresses. Linux only supports it for link-local addresses. The URL parser properly parses a scope id as an interface index, but stores it in a field named "scope": confusion. The field has been renamed into "scope_id". Curl_if2ip() used the scope id as it was a scope. This caused failures to bind to an interface. Scope is now computed from the addresses and Curl_if2ip() matches them. If redundantly specified in the URL, scope id is check for mismatch with the interface index. This commit should fix SF bug #1451.
-
Patrick Monnerat authored
-
- Dec 04, 2014
-
-
Daniel Stenberg authored
Otherwise we may read uninitialized bytes later in the unix-domain sockets case.
-
- Nov 30, 2014
-
-
Peter Wu authored
This patch prepares for adding UNIX domain sockets support. TCP_NODELAY and TCP_KEEPALIVE are specific to TCP/IP sockets, so do not apply these to other socket types. bindlocal only works for IP sockets (independent of TCP/UDP), so filter that out too for other types. Signed-off-by: Peter Wu <peter@lekensteyn.nl>
-
- Nov 19, 2014
-
-
Jon Spencer authored
When the connection code decides to close a socket it informs the multi system via the Curl_multi_closed function. The multi system may, in turn, invoke the CURLMOPT_SOCKETFUNCTION function with CURL_POLL_REMOVE. This happens after the socket has already been closed. Reorder the code so that CURL_POLL_REMOVE is called before the socket is closed.
-
- Nov 18, 2014
-
-
Carlo Wood authored
Debug output 'typo' fix. Don't print an extra "0x" in * Pipe broke: handle 0x0x2546d88, url = / Add debug output. Print the number of connections in the connection cache when adding one, and not only when one is removed. Fix typos in comments.
-