- Dec 05, 2011
-
-
Daniel Stenberg authored
Moved out into a separate function to work as a "generic" socket() replacement.
-
- Dec 02, 2011
-
-
Jason Glasgow authored
Ensure that CURLE_OK is returned if setting the name servers is successfull.
-
Daniel Stenberg authored
If the socket callback function pointer hasn't been set, we must not attempt to use it. Commit adc88ca2 made it more likely to occur.
-
Jason Glasgow authored
If the first name server is not available, the multi interface does not invoke the socket_cb when the DNS request to the first name server timesout. Ensure that the list of sockets are always updated after calling Curl_resolver_is_resolved. This bug can be reproduced if Curl is complied with --enable_ares and your code uses the multi socket interfaces and the CURLMOPT_SOCKETFUNCTION option. To test try: iptables -I INPUT \ -s $(sed -n -e '/name/{s/.* //p;q}' /etc/resolv.conf)/32 \ -j REJECT and then run a program which uses the multi-interface.
-
- Nov 30, 2011
-
-
Steve Holme authored
Changed the eob detection to work across the whole of the buffer so that lines that begin with a dot (which the server will have escaped) are passed to the client application correctly.
-
- Nov 29, 2011
-
-
Yang Tse authored
-
Daniel Stenberg authored
By making sure the function can detect an "end of body" sequence immediately on the first line, test 811 is now enabled.
-
- Nov 28, 2011
-
-
Daniel Stenberg authored
Curl_pop3_write() now has a state machine that scans for the end of a POP3 body so that the CR LF '.' CR LF sequence can come in everything from one up to five subsequent packets. Test case 810 is modified to use SLOWDOWN which makes the server pause between each single byte and thus makes the POP3 body get sent to curl basically one byte at a time.
-
- Nov 25, 2011
-
-
Yang Tse authored
-
Jonas Schnelli authored
-
Daniel Stenberg authored
Added convenience macro to use to check if a handle is using a shared SSL session, and fixed so that Curl_ssl_close_all() doesn't lock when the session isn't shared.
-
Yang Tse authored
-
Yang Tse authored
Skip a floating point addition operation when integral part of time difference is zero. This avoids potential floating point addition rounding problems while preserving decimal part value.
-
Daniel Stenberg authored
Macros that look like function calls need to be made so that we can use semicolons properly for indentation and for reducing the risk for mistakes when using them.
-
Laurent Rabret authored
1) enables the Window Size option 2) allows the server to enable the echo mode 3) allows an app using libcurl to disable the default binary mode Signed-off-by: Laurent Rabret
-
- Nov 24, 2011
-
-
Jonas Schnelli authored
By setting PROTOPT_NOURLQUERY in the protocol handler struct, the protocol will get the "query part" of the URL cut off before the data is handled by the protocol-specific code. This makes libcurl adhere to RFC3986 section 2.2. Test 1220 is added to verify a file:// URL with query-part.
-
Yang Tse authored
-
Yang Tse authored
-
- Nov 23, 2011
-
-
Mark Brand authored
Bugfix: https handshake fails using gnutls 3 on windows http://sourceforge.net/tracker/index.php?func=detail&aid=3441084&group_id=976&atid=100976 New gnutls versions have an error handler that knows about Winsock errors, which is why gnutls_transport_set_global_errno() was deprecated and then removed. This is a correction of commit f5bb3701 (blame me) which meant to reimplement gnutls_transport_set_global_errno(), which is not necessary.
-
- Nov 21, 2011
-
-
Daniel Stenberg authored
Regression: commit b998d95b (shipped first in release 7.22.0) made the condition always equal false that should reset the TIMER_CONNECT timer and call the Curl_verboseconnect() function. Reported by: "Captain Basil" Bug: http://curl.haxx.se/mail/archive-2011-11/0035.html
-
- Nov 19, 2011
-
-
Martin Storsjo authored
-
- Nov 18, 2011
-
-
Jonas Schnelli authored
prefixing a command with '*' means it is allowed to fail without aborting the chain actions
-
- Nov 17, 2011
-
-
Daniel Stenberg authored
Also, check for the session sharing bit instead of comparing pointers
-
Daniel Stenberg authored
-
Alejandro Alvarez Ayllon authored
Previously the age counter would be counted individually in each easy handle that shared SSL sessions!
-
Jason Glasgow authored
-
- Nov 08, 2011
-
-
Guenter Knauf authored
-
- Nov 06, 2011
-
-
Daniel Stenberg authored
When the user requests PORT with a specific port or port range, the code could lock up in an endless loop. There's now an extra conditional that makes sure to special treat the error and try the local address only once so a second failure will abort the loop correctly. Bug: http://curl.haxx.se/bug/view.cgi?id=3433968 Reported by: Gokhan Sengun
-
Daniel Stenberg authored
Just a sign of where the code originally was ripped out from. Now it is generic "pingpong".
-
Rene Bernhardt authored
If a proxy offers several Authentication schemes where NTLM and Negotiate are offered by the proxy and you tell libcurl not to use the Negotiate scheme then the request never returns when the proxy answers with its HTTP 407 reply. It is reproducible by the following steps: - Use a proxy that offers NTLM and Negotiate ( CURLOPT_PROXY and CURLOPT_PROXYPORT ) - Tell libcurl NOT to use Negotiate CURL_EASY_SETOPT(CURLOPT_PROXYAUTH, CURLAUTH_BASIC | CURLAUTH_DIGEST | CURLAUTH_NTLM ) - Start the request The call to CURL_EASY_PERFORM never returns. If you switch on debug logging you can see that libcurl issues a new request As soon as it received the 407 reply. Instead it should return and set the response code to 407. Bug: http://curl.haxx.se/mail/lib-2011-10/0323.html
-
- Nov 04, 2011
-
-
Yang Tse authored
Move calling of ERR_remove_state(0) a.k.a ERR_remove_thread_state(NULL) from Curl_ossl_close_all() to Curl_ossl_cleanup(). In this way ERR_remove_state(0) is now only called in libcurl by curl_global_cleanup(). Previously it would get called by functions curl_easy_cleanup(), curl_multi_cleanup and potentially each time a connection was removed from a connection cache leading to premature destruction of OpenSSL's thread local state hash. Multi-threaded apps using OpenSSL enabled libcurl should still call function ERR_remove_state(0) or ERR_remove_thread_state(NULL) at the very end end of threads that do not call curl_global_cleanup().
-
- Nov 03, 2011
-
-
Yang Tse authored
-
Daniel Stenberg authored
Now called 'use_ssl' instead, which better matches the current CURLOPT name and since the option is used for all pingpong protocols (at least) it makes sense to not use 'ftp' in the name.
-
- Nov 02, 2011
-
-
Daniel Stenberg authored
Use gnutls_priority_set_direct() instead of gnutls_protocol_set_priority(). Remove the gnutls_certificate_type_set_priority() use since x509 is the default certificate type anyway. Reported by: Vincent Torri
-
Yang Tse authored
-
- Nov 01, 2011
-
-
Yang Tse authored
-
- Oct 31, 2011
-
-
Yang Tse authored
-
- Oct 29, 2011
-
-
Yang Tse authored
-
- Oct 27, 2011
-
-
Yang Tse authored
Fix curl_multi_cleanup() segfault when using weird cleanup sequence.
-
Daniel Stenberg authored
This extends the fix from commit d7934b8b When the multi state is changed within the multi_runsingle from DOING to DO_MORE, we didn't immediately start the FTP state machine again. That then left the FTP state in FTP_STOP. When curl_multi_fdset() was subsequently called, the ftp_domore_getsock() function would return the wrong fd info. Reported by: Gokhan Sengun
-