summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* multi: free sockhash on OOMbagder/mutli-sockhash-leakDaniel Stenberg2019-12-131-0/+1
| | | | | | This would otherwise leak memory in the error path. Detected by torture test.
* azure: add a torture testDaniel Stenberg2019-12-131-0/+21
| | | | | | Skipping all FTP tests for speed reasons. Closes #4697
* azure: make the default build use --enable-debug --enable-werrorDaniel Stenberg2019-12-131-1/+5
|
* ntlm_wb: fix double-free in OOMDaniel Stenberg2019-12-131-11/+6
| | | | | | Detected by torture testing test 1310 Closes #4710
* cirrus: Drop the FreeBSD 10.4 buildDan Fandrich2019-12-131-2/+1
| | | | | | Upstream support for 10.4 ended a year ago, and it looks like the image is now gone, too. [skip ci]
* unit1620: fix bad free in OOMDaniel Stenberg2019-12-131-0/+2
| | | | Closes #4709
* unit1609: fix mem-leak in OOMDaniel Stenberg2019-12-131-9/+20
| | | | Closes #4709
* unit1607: fix mem-leak in OOMDaniel Stenberg2019-12-131-12/+18
| | | | Closes #4709
* lib1559: fix mem-leak in OOMDaniel Stenberg2019-12-131-8/+4
| | | | Closes #4709
* lib1557: fix mem-leak in OOMDaniel Stenberg2019-12-131-3/+3
| | | | Closes #4709
* altsvc: make the save function ignore NULL filenamesDaniel Stenberg2019-12-121-2/+2
| | | | | | It might happen in OOM situations. Detected bv torture tests. Closes #4707
* curl: fix memory leak in OOM in etags logicDaniel Stenberg2019-12-121-10/+9
| | | | | | Detected by torture tests Closes #4706
* doh: make it behave when built without proxy supportDaniel Stenberg2019-12-121-16/+18
| | | | | | | Reported-by: Marcel Raad Bug: https://github.com/curl/curl/pull/4692#issuecomment-564115734 Closes #4704
* curl: improved cleanup in upload error pathDaniel Stenberg2019-12-121-5/+6
| | | | | | Memory leak found by torture test 58 Closes #4705
* mailmap: fix Andrew IshchukDaniel Stenberg2019-12-111-0/+1
|
* travis: make torture use --shallow=40Daniel Stenberg2019-12-111-1/+1
| | | | | As a first step to enable it to run over a more diverse set of tests in a reasonable time.
* runtests: introduce --shallow to reduce huge torture testsDaniel Stenberg2019-12-112-4/+41
| | | | | | | | | | | | When set, shallow mode limits runtests -t to make no more than NUM fails per test case. If more are found, it will randomly discard entries until the number is right. The random seed can also be set. This is particularly useful when running MANY tests as then most torture failures will already fail the same functions over and over and make the total operation painfully tedious. Closes #4699
* conncache: CONNECT_ONLY connections assumed always in-useDaniel Stenberg2019-12-111-1/+2
| | | | | | | | | | | | | | | This makes them never to be considered "the oldest" to be discarded when reaching the connection cache limit. The reasoning here is that CONNECT_ONLY is primarily used in combination with using the connection's socket post connect and since that is used outside of curl's knowledge we must assume that it is in use until explicitly closed. Reported-by: Pavel Pavlov Reported-by: Pavel Löbl Fixes #4426 Fixes #4369 Closes #4696
* vtls: make BearSSL possible to set with CURL_SSL_BACKENDGisle Vanem2019-12-101-0/+3
| | | | | | Ref: https://github.com/curl/curl/commit/9b879160df01e7ddbb4770904391d3b74114302b#commitcomment-36355622 Closes #4698
* RELEASE-NOTES: syncedDaniel Stenberg2019-12-101-11/+26
|
* travis: remove "coverage", make it "torture"Daniel Stenberg2019-12-102-2/+11
| | | | | | | | The coveralls service and test coverage numbers are just too unreliable. Removed badge from README.md as well. Fixes #4694 Closes #4695
* azure: add libssh2 and cmake macos buildsDaniel Stenberg2019-12-103-6/+31
| | | | | | Removed the macos libssh2 build from travis Closes #4686
* curl: use errorf() betterDaniel Stenberg2019-12-104-16/+17
| | | | | | | | | | Change series of error outputs to use errorf(). Only errors that are due to mistakes in command line option usage should use helpf(), other types of errors in the tool should rather use errorf(). Closes #4691
* tests: make it possible to set executable extensionsMarc Hoersken2019-12-094-17/+36
| | | | | | | | | | | | | | | | | This enables the use of Windows Subsystem for Linux (WSL) to run the testsuite against Windows binaries while using Linux servers. This commit introduces the following environment variables: - CURL_TEST_EXE_EXT: set the executable extension for all components - CURL_TEST_EXE_EXT_TOOL: set it for the curl tool only - CURL_TEST_EXE_EXT_SSH: set it for the SSH tools only Later testcurl.pl could be adjusted to make use of those variables. - CURL_TEST_EXE_EXT_SRV: set it for the test servers only (This is one of several commits to support use of WSL for the tests.) Closes https://github.com/curl/curl/pull/3899
* tests: fix permissions of ssh keys in WSLMarc Hoersken2019-12-091-0/+3
| | | | | | | | | Keys created on Windows Subsystem for Linux (WSL) require it for some reason. (This is one of several commits to support use of WSL for the tests.) Ref: https://github.com/curl/curl/pull/3899
* tests: use \r\n for log messages in WSLMarc Hoersken2019-12-091-1/+9
| | | | | | | | Bash in Windows Subsystem for Linux (WSL) requires it for some reason. (This is one of several commits to support use of WSL for the tests.) Ref: https://github.com/curl/curl/pull/3899
* winbuild: Define CARES_STATICLIB when WITH_CARES=staticandrew_ishchuk2019-12-091-0/+3
| | | | | | | | When libcurl is built with MODE=static, c-ares is forced into static linkage too. That doesn't happen when MODE=dll so linker would break over undefined symbols. closes https://github.com/curl/curl/pull/4688
* conn: always set bits.close with connclose()Daniel Stenberg2019-12-092-3/+4
| | | | Closes #4690
* cirrus: enable clang sanitizers on freebsd 13Daniel Stenberg2019-12-091-0/+7
|
* conncache: fix multi-thread use of shared connection cacheDaniel Stenberg2019-12-098-52/+58
| | | | | | | | | It could accidentally let the connection get used by more than one thread, leading to double-free and more. Reported-by: Christopher Reid Fixes #4544 Closes #4557
* azure: add a vanilla macos buildDaniel Stenberg2019-12-091-8/+32
| | | | Closes #4685
* curl: make the etag load logic work without fseekDaniel Stenberg2019-12-061-16/+3
| | | | | | The fseek()s were unnecessary and caused Coverity warning CID 1456554 Closes #4681
* mailmap: Mohammad HasbiniDaniel Stenberg2019-12-061-0/+1
|
* docs: fix some typosmhasbini2019-12-065-5/+5
| | | | Closes #4680
* RELEASE-NOTES: syncedDaniel Stenberg2019-12-061-10/+43
|
* lib: fix some loose ends for recently added CURLSSLOPT_NO_PARTIALCHAINJay Satiro2019-12-053-0/+4
| | | | | | | | | | | | | Add support for CURLSSLOPT_NO_PARTIALCHAIN in CURLOPT_PROXY_SSL_OPTIONS and OS400 package spec. Also I added the option to the NameValue list in the tool even though it isn't exposed as a command-line option (...yet?). (NameValue stringizes the option name for the curl cmd -> libcurl source generator) Follow-up to 564d88a which added CURLSSLOPT_NO_PARTIALCHAIN. Ref: https://github.com/curl/curl/pull/4655
* setopt: Fix ALPN / NPN user option when built without HTTP2Jay Satiro2019-12-051-2/+0
| | | | | | | | | | | | | | | | - Stop treating lack of HTTP2 as an unknown option error result for CURLOPT_SSL_ENABLE_ALPN and CURLOPT_SSL_ENABLE_NPN. Prior to this change it was impossible to disable ALPN / NPN if libcurl was built without HTTP2. Setting either option would result in CURLE_UNKNOWN_OPTION and the respective internal option would not be set. That was incorrect since ALPN and NPN are used independent of HTTP2. Reported-by: Shailesh Kapse Fixes https://github.com/curl/curl/issues/4668 Closes https://github.com/curl/curl/pull/4672
* etag: allow both --etag-compare and --etag-save in same cmdlineDaniel Stenberg2019-12-053-11/+62
| | | | | Fixes #4669 Closes #4678
* curl_setup: fix `CURLRES_IPV6` conditionMarcel Raad2019-12-051-6/+6
| | | | | | | | | Move the definition of `CURLRES_IPV6` to before undefining `HAVE_GETADDRINFO`. Regression from commit 67a08dca27a which caused some tests to fail and others to be skipped with c-ares. Fixes https://github.com/curl/curl/issues/4673 Closes https://github.com/curl/curl/pull/4677
* test342: make it return a 304 as the tag matchesDaniel Stenberg2019-12-051-3/+2
|
* CMake: add support for building with the NSS vtls backendPeter Wu2019-12-043-4/+41
| | | | | | | | Options are cross-checked with configure.ac and acinclude.m4. Tested on Arch Linux, untested on other platforms like Windows or macOS. Closes #4663 Reviewed-by: Kamil Dudka
* azure: add more buildsDaniel Stenberg2019-12-042-29/+58
| | | | | | ... removed two from travis (that now runs on azure instead) Closes #4671
* CURLOPT_VERBOSE.3: see also ERRORBUFFERDaniel Stenberg2019-12-041-1/+2
|
* hostip4.c: bump copyright year rangeDaniel Stenberg2019-12-031-1/+1
|
* configure: enable IPv6 support without `getaddrinfo`Marcel Raad2019-12-031-11/+13
| | | | | | | | | | | | | This makes it possible to recognize and connect to literal IPv6 addresses when `getaddrinfo` is not available, which is already the case for the CMake build. This affects e.g. classic MinGW because it still targets Windows 2000 by default, where `getaddrinfo` is not available, but general IPv6 support is. Instead of checking for `getaddrinfo`, check for `sockaddr_in6` as the CMake build does. Closes https://github.com/curl/curl/pull/4662
* curl_setup: disable IPv6 resolver without `getaddrinfo`Marcel Raad2019-12-034-6/+26
| | | | | | | | | | Also, use `CURLRES_IPV6` only for actual DNS resolution, not for IPv6 address support. This makes it possible to connect to IPv6 literals by setting `ENABLE_IPV6` even without `getaddrinfo` support. It also fixes the CMake build when using the synchronous resolver without `getaddrinfo` support. Closes https://github.com/curl/curl/pull/4662
* github action/azure pipeline: run 'make test-nonflaky' for testsDaniel Stenberg2019-12-032-2/+2
| | | | To match travis and give more info on failures.
* openssl: CURLSSLOPT_NO_PARTIALCHAIN can disable partial cert chainsDaniel Stenberg2019-12-036-23/+36
| | | | Closes #4655
* openssl: set X509_V_FLAG_PARTIAL_CHAINDaniel Stenberg2019-12-031-9/+17
| | | | | | | | | | | | Have intermediate certificates in the trust store be treated as trust-anchors, in the same way as self-signed root CA certificates are. This allows users to verify servers using the intermediate cert only, instead of needing the whole chain. Other TLS backends already accept partial chains. Reported-by: Jeffrey Walton Bug: https://curl.haxx.se/mail/lib-2019-11/0094.html
* curl: show better error message when no homedir is foundDaniel Stenberg2019-12-033-2/+19
| | | | | | Reported-by: Vlastimil Ovčáčík Fixes #4644 Closes #4665