summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* multi_socket: react on socket close immediatelyDaniel Stenberg2013-06-203-2/+53
| | | | | | | | | | | | As a remedy to the problem when a socket gets closed and a new one is opened with the same file descriptor number and as a result multi.c:singlesocket() doesn't detect the difference, the new function Curl_multi_closed() gets told when a socket is closed so that it can be removed from the socket hash. When the old one has been removed, a new socket should be detected fine by the singlesocket() on next invoke. Bug: http://curl.haxx.se/bug/view.cgi?id=1248 Reported-by: Erik Johansson
* RELEASE-NOTES: synced with e305f5ec715fDaniel Stenberg2013-06-201-1/+3
|
* TODO: mention the DANE patch from MarchDaniel Stenberg2013-06-181-0/+6
|
* CURLOPT_COOKIELIST: take cookie share lockDaniel Stenberg2013-06-171-18/+21
| | | | | | | | | | When performing COOKIELIST operations the cookie lock needs to be taken for the cases where the cookies are shared among multiple handles! Verified by Benjamin Gilbert's updated test 506 Bug: http://curl.haxx.se/bug/view.cgi?id=1215 Reported-by: Benjamin Gilbert
* test506: verify that CURLOPT_COOKIELIST takes share lockBenjamin Gilbert2013-06-172-31/+88
| | | | It doesn't right now: http://curl.haxx.se/bug/view.cgi?id=1215
* TODO: HTTP2/SPDY supportDaniel Stenberg2013-06-151-0/+20
|
* curl_easy_setopt.3: clarify CURLOPT_PROGRESSFUNCTION frequencyDaniel Stenberg2013-06-141-6/+12
| | | | | Make it clearer that the CURLOPT_PROGRESSFUNCTION callback will be called more frequently than once per second when things are happening.
* RELEASE-NOTES: synced with 9c3e098259b82Daniel Stenberg2013-06-131-1/+13
| | | | Mention 7 recent bug fixes and their associated contributors
* curl_multi_wait.3: clarify the numfds counterDaniel Stenberg2013-06-131-1/+3
|
* curl_easy_perform: avoid busy-loopingDaniel Stenberg2013-06-131-0/+25
| | | | | | | | | | | When curl_multi_wait() finds no file descriptor to wait for, it returns instantly and this must be handled gracefully within curl_easy_perform() or cause a busy-loop. Starting now, repeated fast returns without any file descriptors is detected and a gradually increasing sleep will be used (up to a max of 1000 milliseconds) before continuing the loop. Bug: http://curl.haxx.se/bug/view.cgi?id=1238 Reported-by: Miguel Angel
* cookies: follow-up fix for path checkingYAMADA Yasuharu2013-06-124-22/+134
| | | | | | | The initial fix to only compare full path names were done in commit 04f52e9b4db0 but found out to be incomplete. This takes should make the change more complete and there's now two additional tests to verify (test 31 and 62).
* lib1900: use tutil_tvnow instead of gettimeofdaySergei Nikulov2013-06-121-2/+2
| | | | Makes it build on windows
* axtls: now done non-blockingEric Hu2013-06-123-81/+177
|
* test2033: requires NTLM supportEric Hu2013-06-121-0/+3
|
* KNOWN_BUGS: #82 failed build with Borland compilerDaniel Stenberg2013-06-111-0/+5
|
* Curl_output_digest: support auth-int for empty entity bodyDaniel Stenberg2013-06-111-5/+9
| | | | | | | | By always returning the md5 for an empty body when auth-int is asked for, libcurl now at least sometimes does the right thing. Bug: http://curl.haxx.se/bug/view.cgi?id=1235 Patched-by: Nach M. S.
* multi_socket: reduce timeout inaccuracy marginDaniel Stenberg2013-06-111-2/+24
| | | | | | | | | | Allow less room for "triggered too early" mistakes by applications / timers on non-windows platforms. Starting now, we assume that a timeout call is never made earlier than 3 milliseconds before the actual timeout. This greatly improves timeout accuracy on Linux. Bug: http://curl.haxx.se/bug/view.cgi?id=1228 Reported-by: Hang Su
* cert_stuff: avoid double free in the PKCS12 codeDaniel Stenberg2013-06-101-2/+13
| | | | | | | | | | | | | In the pkcs12 code, we get a list of x509 records returned from PKCS12_parse but when iterating over the list and passing each to SSL_CTX_add_extra_chain_cert() we didn't also properly remove them from the "stack", which made them get freed twice (both in sk_X509_pop_free() and then later in SSL_CTX_free). This isn't really documented anywhere... Bug: http://curl.haxx.se/bug/view.cgi?id=1236 Reported-by: Nikaiw
* cert_stuff: remove code duplication in the pkcs12 logicDaniel Stenberg2013-06-101-24/+12
|
* axtls: honor disabled VERIFYHOSTAleksey Tulinov2013-06-081-10/+18
| | | | When VERIFYHOST == 0, libcurl should let invalid certificates to pass.
* curl_easy_setopt.3: HTTP header with no contentPeter Gal2013-06-081-4/+6
| | | | | Update the documentation on how to specify a HTTP header with no content.
* RELEASE-NOTES: synced with 87cf677eca55Daniel Stenberg2013-06-071-2/+21
| | | | Added 11 bugs and 7 contributors
* lib1500: remove bad checkDaniel Stenberg2013-06-061-6/+1
| | | | | | | | | | | | | After curl_multi_wait() returns, this test checked that we got exactly one file descriptor told to read from, but we cannot be sure that is true. curl_multi_wait() will sometimes return earlier without any file descriptor to handle, just just because it is a suitable time to call *perform(). This problem showed up with commit 29bf0598. Bug: http://curl.haxx.se/mail/lib-2013-06/0029.html Reported-by: Fabian Keil
* tests/Makefile: typo in the perlcheck targetDaniel Stenberg2013-06-041-1/+1
| | | | | Bug: http://curl.haxx.se/bug/view.cgi?id=1239 Reported-by: Christian Weisgerber
* test1230: verify CONNECT to a numerical ipv6-addressDaniel Stenberg2013-06-042-1/+80
|
* sws: support extracting test number from CONNECT ipv6-address!Daniel Stenberg2013-06-042-3/+19
| | | | | | If an ipv6-address is provided to CONNECT, the last hexadecimal group in the address will be used as the test number! For example the address "[1234::ff]" would be treated as test case 255.
* curl_multi_wait: only use internal timer if not -1Daniel Stenberg2013-06-041-2/+3
| | | | | | | | | commit 29bf0598aad5 introduced a problem when the "internal" timeout is prefered to the given if shorter, as it didn't consider the case where -1 was returned. Now the internal timeout is only considered if not -1. Reported-by: Tor Arntsen Bug: http://curl.haxx.se/mail/lib-2013-06/0015.html
* libcurl-tutorial.3: added a section on IPv6Dan Fandrich2013-06-031-13/+31
| | | | | | | | Also added a (correctly-escaped) backslash to the autoexec.bat example file and a new Windows character device name with a colon as examples of other characters that are special and potentially dangerous (this reverts and reworks commit 7d8d2a54).
* curl_multi_wait: reduce timeout if the multi handle wants toDaniel Stenberg2013-06-032-1/+13
| | | | | | | | | | | | | | If the multi handle's pending timeout is less than what is passed into this function, it will now opt to use the shorter time anyway since it is a very good hint that the handle wants to process something in a shorter time than what otherwise would happen. curl_multi_wait.3 was updated accordingly to clarify This is the reason for bug #1224 Bug: http://curl.haxx.se/bug/view.cgi?id=1224 Reported-by: Andrii Moiseiev
* multi_runsingle: switch an if() condition for readabilityDaniel Stenberg2013-06-031-1/+1
| | | | | ... because there's an identical check right next to it so using the operators in the check in the same order increases readability.
* curl_schannel.c: Removed variable unused since 35874298e4Marc Hoersken2013-06-021-1/+0
|
* curl_setup.h: Fixed redefinition warning using mingw-w64Marc Hoersken2013-06-021-0/+2
|
* multi_runsingle: add braces to clarify the codeDaniel Stenberg2013-05-301-7/+8
|
* libcurl-tutorial.3: remove incorrect backslashDaniel Stenberg2013-05-281-2/+2
| | | | | | | A single backslash in the content is not legal nroff syntax. Reported and fixed by: Eric S. Raymond Bug: http://curl.haxx.se/bug/view.cgi?id=1234
* curl_formadd.3: fixed wrong "end-marker" syntaxDaniel Stenberg2013-05-281-2/+2
| | | | | Reported and fixed by: Eric S. Raymond Bug: http://curl.haxx.se/bug/view.cgi?id=1233
* curl.1: clarify that --silent still outputs dataDaniel Stenberg2013-05-281-3/+4
|
* Digest auth: escape user names with \ or " in themDaniel Stenberg2013-05-273-3/+130
| | | | | | | | | | When sending the HTTP Authorization: header for digest, the user name needs to be escaped if it contains a double-quote or backslash. Test 1229 was added to verify Reported and fixed by: Nach M. S Bug: http://curl.haxx.se/bug/view.cgi?id=1230
* ossl_recv: SSL_read() returning 0 is an error tooMike Giancola2013-05-221-1/+1
| | | | | SSL_read can return 0 for "not successful", according to the open SSL documentation: http://www.openssl.org/docs/ssl/SSL_read.html
* ossl_send: SSL_write() returning 0 is an error tooMike Giancola2013-05-221-1/+1
| | | | | | | | | | | | | | | | | | | | We found that in specific cases if the connection is abruptly closed, the underlying socket is listed in a close_wait state. We continue to call the curl_multi_perform, curl_mutli_fdset etc. None of these APIs report the socket closed / connection finished. Since we have cases where the multi connection is only used once, this can pose a problem for us. I've read that if another connection was to come in, curl would see the socket as bad and attempt to close it at that time - unfortunately, this does not work for us. I found that in specific situations, if SSL_write returns 0, curl did not recognize the socket as closed (or errored out) and did not report it to the application. I believe we need to change the code slightly, to check if ssl_write returns 0. If so, treat it as an error - the same as a negative return code. For OpenSSL - the ssl_write documentation is here: http://www.openssl.org/docs/ssl/SSL_write.html
* KNOWN_BUGS: curl -OJC- fails to resumeDaniel Stenberg2013-05-211-0/+6
| | | | Bug: http://curl.haxx.se/bug/view.cgi?id=1169
* Curl_cookie_add: handle IPv6 hostsDaniel Stenberg2013-05-211-65/+24
| | | | | | | | | | | | | | | 1 - don't skip host names with a colon in them in an attempt to bail out on HTTP headers in the cookie file parser. It was only a shortcut anyway and trying to parse a file with HTTP headers will still be handled, only slightly slower. 2 - don't skip domain names based on number of dots. The original netscape cookie spec had this oddity mentioned and while our code decreased the check to only check for two, the existing cookie spec has no such dot counting required. Bug: http://curl.haxx.se/bug/view.cgi?id=1221 Reported-by: Stefan Neis
* curl_easy_setopt.3: expand the PROGRESSFUNCTION sectionDaniel Stenberg2013-05-201-5/+18
| | | | | Explain the callback and its arguments better and with more descriptive text.
* tests: add test1394 file to the tarballDaniel Stenberg2013-05-191-1/+1
|
* tarball: include the xmlstream exampleDaniel Stenberg2013-05-191-1/+1
|
* xmlstream: XML stream parsing example source codeDavid Strauss2013-05-193-0/+161
| | | | | Add an XML stream parsing example using Expat. Add missing ignore for the binary from an unrelated example.
* cookies: only consider full path matchesYAMADA Yasuharu2013-05-185-9/+89
| | | | | | | | | | | | | | | | I found a bug which cURL sends cookies to the path not to aim at. For example: - cURL sends a request to http://example.fake/hoge/ - server returns cookie which with path=/hoge; the point is there is NOT the '/' end of path string. - cURL sends a request to http://example.fake/hogege/ with the cookie. The reason for this old "feature" is because that behavior is what is described in the original netscape cookie spec: http://curl.haxx.se/rfc/cookie_spec.html The current cookie spec (RFC6265) clarifies the situation: http://tools.ietf.org/html/rfc6265#section-5.2.4
* axtls: prevent memleaks on SSL handshake failuresEric Hu2013-05-161-1/+19
|
* Revert "WIN32 MemoryTracking: track wcsdup() _wcsdup() and _tcsdup() usage"Daniel Stenberg2013-05-127-94/+3
| | | | | | | | | | | This reverts commit 8ec2cb5544b86306b702484ea785b6b9596562ab. We don't have any code anywhere in libcurl (or the curl tool) that use wcsdup so there's no such memory use to track. It seems to cause mild problems with the Borland compiler though that we may avoid by reverting this change again. Bug: http://curl.haxx.se/mail/lib-2013-05/0070.html
* RELEASE-NOTES: synced with ae26ee3489588f0Daniel Stenberg2013-05-121-2/+8
|
* Updated zlib version in build files.Guenter Knauf2013-05-1114-19/+19
|