| curl and libcurl 7.68.0 |
| |
| Public curl releases: 187 |
| Command line options: 229 |
| curl_easy_setopt() options: 269 |
| Public functions in libcurl: 82 |
| Contributors: 2056 |
| |
| This release includes the following changes: |
| |
| o TLS: add BearSSL vtls implementation [37] |
| o XFERINFOFUNCTION: support CURL_PROGRESSFUNC_CONTINUE [36] |
| o curl: add --etag-compare and --etag-save [31] |
| o curl: add --parallel-immediate [29] |
| o multi: add curl_multi_wakeup() [38] |
| o openssl: CURLSSLOPT_NO_PARTIALCHAIN can disable partial cert chains [45] |
| |
| This release includes the following bugfixes: |
| |
| o Azure Pipelines: add several builds |
| o CMake: add support for building with the NSS vtls backend [43] |
| o CURL-DISABLE: initial docs for the CURL_DISABLE_* defines [19] |
| o CURLOPT_QUOTE.3: fix typos [78] |
| o CURLOPT_URL.3: "curl supports SMB version 1 (only)" |
| o CURLOPT_VERBOSE.3: see also ERRORBUFFER |
| o HISTORY: added cmake, HTTP/3 and parallel downloads with curl |
| o HISTORY: the SMB(S) support landed in 2014 |
| o INSTALL.md: provide Android build instructions [10] |
| o KNOWN_BUGS: Connection information when using TCP Fast Open [85] |
| o KNOWN_BUGS: LDAP on Windows doesn't work correctly [86] |
| o KNOWN_BUGS: TLS session cache doesn't work with TFO [56] |
| o OPENSOCKETFUNCTION.3: correct the purpose description [48] |
| o altsvc: bump to h3-24 [6] |
| o altsvc: make the save function ignore NULL filenames [67] |
| o build: Disable Visual Studio warning "conditional expression is constant" [49] |
| o build: fix for CURL_DISABLE_DOH [2] |
| o checksrc.bat: Add a check for vquic and vssh directories [40] |
| o checksrc: repair the copyrightyear check [25] |
| o cirrus-ci: enable clang sanitizers on freebsd 13 [60] |
| o cirrus: Drop the FreeBSD 10.4 build |
| o config-win32: cpu-machine-OS for Windows on ARM [13] |
| o configure: avoid unportable `==' test(1) operator [1] |
| o configure: enable IPv6 support without `getaddrinfo` [44] |
| o configure: fix typo in help text [4] |
| o conncache: CONNECT_ONLY connections assumed always in-use [71] |
| o conncache: fix multi-thread use of shared connection cache [61] |
| o copyrights: fix copyright year range [25] |
| o create_conn: prefer multiplexing to using new connections [76] |
| o curl.h: add two missing defines for "pre ISO C" compilers [75] |
| o curl/parseconfig: fix mem-leak [81] |
| o curl/parseconfig: use curl_free() to free memory allocated by libcurl [80] |
| o curl: fix --upload-file . hangs if delay in STDIN [35] |
| o curl: fix -T globbing [16] |
| o curl: improved cleanup in upload error path [69] |
| o curl: show better error message when no homedir is found [47] |
| o curl_setup_once: consistently use WHILE_FALSE in macros [54] |
| o define: remove HAVE_ENGINE_LOAD_BUILTIN_ENGINES, not used anymore [83] |
| o docs: Change 'experiemental' to 'experimental' [30] |
| o docs: TLS SRP doesn't work with TLS 1.3 [87] |
| o docs: fix several typos [62] |
| o doh: improved both encoding and decoding [11] |
| o doh: make it behave when built without proxy support [68] |
| o examples: add multi-poll.c [14] |
| o global_init: undo the "intialized" bump in case of failure [52] |
| o hostip: suppress compiler warning [64] |
| o http_ntlm: Remove duplicate NSS initialisation [55] |
| o lib: Move lib/ssh.h -> lib/vssh/ssh.h [9] |
| o lib: remove ASSIGNWITHINCONDITION exceptions, use our code style [84] |
| o libssh2: add support for ECDSA and ed25519 knownhost keys [89] |
| o multi: free sockhash on OOM [63] |
| o multi_poll: avoid busy-loop when called without easy handles attached [15] |
| o ngtcp2: fix thread-safety bug in error-handling [33] |
| o ngtcp2: free used resources on disconnect [7] |
| o ngtcp2: handle key updates as ngtcp2 master branch tells us [8] |
| o ngtcp2: increase QUIC window size when data is consumed [12] |
| o ngtcp2: use overflow buffer for extra HTTP/3 data [5] |
| o ntlm: USE_WIN32_CRYPTO check removed to get USE_NTLM2SESSION set [3] |
| o ntlm_wb: fix double-free in OOM [65] |
| o openssl: Revert to less sensitivity for SYSCALL errors [26] |
| o openssl: improve error message for SYSCALL during connect [27] |
| o openssl: prevent recursive function calls from ctx callbacks [18] |
| o openssl: retrieve reported LibreSSL version at runtime [50] |
| o openssl: set X509_V_FLAG_PARTIAL_CHAIN by default [46] |
| o parsedate: offer a getdate_capped() alternative [53] |
| o pause: avoid updating socket if done was already called [22] |
| o projects: Fix Visual Studio projects SSH builds [41] |
| o projects: Fix Visual Studio wolfSSL configurations |
| o quiche: reject HTTP/3 headers in the wrong order [17] |
| o remove_handle: clear expire timers after multi_done() [20] |
| o runtests: --repeat=[num] to repeat tests [91] |
| o runtests: introduce --shallow to reduce huge torture tests [70] |
| o schannel: fix --tls-max for when min is --tlsv1 or default [39] |
| o setopt: Fix ALPN / NPN user option when built without HTTP2 [42] |
| o strerror: Add Curl_winapi_strerror for Win API specific errors [51] |
| o strerror: Fix an error looking up some Windows error strings |
| o strerror: Fix compiler warning "empty expression" [79] |
| o system.h: fix for MCST lcc compiler [23] |
| o test/sws: search for "Testno:" header unconditionally if no testno [73] |
| o test1175: verify symbols-in-versions and libcurl-errors.3 in sync [28] |
| o test1270: a basic -w redirect_url test [82] |
| o test1456: remove the use of a fixed local port number [77] |
| o test1558: use double slash after file: [21] |
| o test1560: require IPv6 for IPv6 aware URL parsing [24] |
| o tests/lib1557: fix mem-leak in OOM [66] |
| o tests/lib1559: fix mem-leak in OOM [66] |
| o tests/lib1591: free memory properly on OOM, in the trailers callback [90] |
| o tests/unit1607: fix mem-leak in OOM [66] |
| o tests/unit1609: fix mem-leak in OOM [66] |
| o tests/unit1620: fix bad free in OOM [66] |
| o tests: fix build with `CURL_DISABLE_DOH` [64] |
| o tests: fix permissions of ssh keys in WSL [58] |
| o tests: make it possible to set executable extensions [58] |
| o tests: make sure checksrc runs on header files too |
| o tests: set LC_ALL=en_US.UTF-8 instead of blank in several tests [74] |
| o tests: use DoH feature for DoH tests [64] |
| o tests: use \r\n for log messages in WSL [58] |
| o travis: abandon coveralls, it is not reliable [57] |
| o travis: build ngtcp2 with --enable-lib-only [32] |
| o travis: export the CC/CXX variables when set [34] |
| o vtls: make BearSSL possible to set with CURL_SSL_BACKEND [72] |
| o winbuild: Define CARES_STATICLIB when WITH_CARES=static [59] |
| o winbuild: Document CURL_STATICLIB requirement for static libcurl [88] |
| o ngtcp2: Support the latest update key callback type [92] |
| |
| This release includes the following known bugs: |
| |
| o see docs/KNOWN_BUGS (https://curl.haxx.se/docs/knownbugs.html) |
| |
| This release would not have looked like this without help, code, reports and |
| advice from friends like these: |
| |
| 3dyd on github, Anderson Sasaki, Andreas Falkenhahn, Andrew Ishchuk, |
| bdry on github, Bjoern Franke, bxac on github, Bylon2 on github, |
| Christian Schmitz, Christopher Reid, Christoph M. Becker, Cynthia Coan, |
| Dan Fandrich, Daniel Gustafsson, Daniel Stenberg, David Benjamin, |
| Gergely Nagy, Gisle Vanem, JanB on github, Javier Blazquez, Jeff Mears, |
| Jeffrey Walton, John Schroeder, Kamil Dudka, Kunal Ekawde, Leonardo Taccari, |
| Marcel Raad, Marc Hörsken, Maros Priputen, Massimiliano Fantuzzi, |
| Max Kellermann, Melissa Mears, Michael Forney, Michael Vittiglio, |
| Mohammad Hasbini, Niall O'Reilly, Paul Groke, Paul Hoffman, |
| Paulo Roberto Tomasi, Pavel Löbl, Pavel Pavlov, Peter Wu, Ram Krushna Mishra, |
| Ray Satiro, Richard Alcock, Richard Bowker, Santino Keupp, sayrer on github, |
| Shailesh Kapse, SLDiggie on github, Steve Holme, Tatsuhiro Tsujikawa, |
| Tom van der Woerdt, Victor Magierski, Vlastimil Ovčáčík, Wyatt O'Day, |
| Xiaoyin Liu, |
| (57 contributors) |
| |
| Thanks! (and sorry if I forgot to mention someone) |
| |
| References to bug reports and discussions on issues: |
| |
| [1] = https://curl.haxx.se/bug/?i=4567 |
| [2] = https://curl.haxx.se/bug/?i=4565 |
| [3] = https://curl.haxx.se/bug/?i=3704 |
| [4] = https://curl.haxx.se/bug/?i=4570 |
| [5] = https://curl.haxx.se/bug/?i=4525 |
| [6] = https://curl.haxx.se/bug/?i=4604 |
| [7] = https://curl.haxx.se/bug/?i=4614 |
| [8] = https://curl.haxx.se/bug/?i=4612 |
| [9] = https://curl.haxx.se/bug/?i=4609 |
| [10] = https://curl.haxx.se/bug/?i=4606 |
| [11] = https://curl.haxx.se/bug/?i=4598 |
| [12] = https://curl.haxx.se/bug/?i=4600 |
| [13] = https://curl.haxx.se/bug/?i=4590 |
| [14] = https://curl.haxx.se/bug/?i=4596 |
| [15] = https://curl.haxx.se/bug/?i=4594 |
| [16] = https://curl.haxx.se/bug/?i=4588 |
| [17] = https://curl.haxx.se/bug/?i=4571 |
| [18] = https://curl.haxx.se/bug/?i=4585 |
| [19] = https://curl.haxx.se/bug/?i=4545 |
| [20] = https://curl.haxx.se/bug/?i=4575 |
| [21] = https://curl.haxx.se/bug/?i=4554 |
| [22] = https://curl.haxx.se/bug/?i=4563 |
| [23] = https://curl.haxx.se/bug/?i=4576 |
| [24] = https://curl.haxx.se/bug/?i=4556 |
| [25] = https://curl.haxx.se/bug/?i=4549 |
| [26] = https://curl.haxx.se/bug/?i=4624 |
| [27] = https://curl.haxx.se/bug/?i=4593 |
| [28] = https://curl.haxx.se/bug/?i=4628 |
| [29] = https://curl.haxx.se/bug/?i=4500 |
| [30] = https://curl.haxx.se/bug/?i=4618 |
| [31] = https://curl.haxx.se/bug/?i=4543 |
| [32] = https://curl.haxx.se/bug/?i=4646 |
| [33] = https://curl.haxx.se/bug/?i=4645 |
| [34] = https://curl.haxx.se/bug/?i=4637 |
| [35] = https://curl.haxx.se/bug/?i=2051 |
| [36] = https://curl.haxx.se/bug/?i=4599 |
| [37] = https://curl.haxx.se/bug/?i=4597 |
| [38] = https://curl.haxx.se/bug/?i=4418 |
| [39] = https://curl.haxx.se/bug/?i=4633 |
| [40] = https://curl.haxx.se/bug/?i=4607 |
| [41] = https://curl.haxx.se/bug/?i=4492 |
| [42] = https://curl.haxx.se/bug/?i=4668 |
| [43] = https://curl.haxx.se/bug/?i=4663 |
| [44] = https://curl.haxx.se/bug/?i=4662 |
| [45] = https://curl.haxx.se/bug/?i=4665 |
| [46] = https://curl.haxx.se/mail/lib-2019-11/0094.html |
| [47] = https://curl.haxx.se/bug/?i=4644 |
| [48] = https://curl.haxx.se/mail/lib-2019-12/0007.html |
| [49] = https://curl.haxx.se/bug/?i=4658 |
| [50] = https://curl.haxx.se/bug/?i=2425 |
| [51] = https://curl.haxx.se/bug/?i=4550 |
| [52] = https://curl.haxx.se/bug/?i=4636 |
| [53] = https://curl.haxx.se/bug/?i=4152 |
| [54] = https://curl.haxx.se/bug/?i=4649 |
| [55] = https://curl.haxx.se/bug/?i=3935 |
| [56] = https://curl.haxx.se/bug/?i=4301 |
| [57] = https://curl.haxx.se/bug/?i=4694 |
| [58] = https://curl.haxx.se/bug/?i=3899 |
| [59] = https://curl.haxx.se/bug/?i=4688 |
| [60] = https://curl.haxx.se/bug/?i=4557 |
| [61] = https://curl.haxx.se/bug/?i=4544 |
| [62] = https://curl.haxx.se/bug/?i=4680 |
| [63] = https://curl.haxx.se/bug/?i=4713 |
| [64] = https://curl.haxx.se/bug/?i=4692 |
| [65] = https://curl.haxx.se/bug/?i=4710 |
| [66] = https://curl.haxx.se/bug/?i=4709 |
| [67] = https://curl.haxx.se/bug/?i=4707 |
| [68] = https://curl.haxx.se/bug/?i=4704 |
| [69] = https://curl.haxx.se/bug/?i=4705 |
| [70] = https://curl.haxx.se/bug/?i=4699 |
| [71] = https://curl.haxx.se/bug/?i=4369 |
| [72] = https://curl.haxx.se/bug/?i=4698 |
| [73] = https://curl.haxx.se/bug/?i=4744 |
| [74] = https://curl.haxx.se/bug/?i=4738 |
| [75] = https://curl.haxx.se/bug/?i=4739 |
| [76] = https://curl.haxx.se/bug/?i=4732 |
| [77] = https://curl.haxx.se/bug/?i=4733 |
| [78] = https://curl.haxx.se/bug/?i=4736 |
| [79] = https://github.com/curl/curl/commit/5b22e1a#r36458547 |
| [80] = https://curl.haxx.se/bug/?i=4730 |
| [81] = https://curl.haxx.se/bug/?i=4731 |
| [82] = https://curl.haxx.se/bug/?i=4728 |
| [83] = https://curl.haxx.se/bug/?i=4725 |
| [84] = https://curl.haxx.se/bug/?i=4683 |
| [85] = https://curl.haxx.se/bug/?i=4296 |
| [86] = https://curl.haxx.se/bug/?i=4261 |
| [87] = https://curl.haxx.se/bug/?i=4262 |
| [88] = https://curl.haxx.se/bug/?i=4721 |
| [89] = https://curl.haxx.se/bug/?i=4714 |
| [90] = https://curl.haxx.se/bug/?i=4720 |
| [91] = https://curl.haxx.se/bug/?i=4715 |
| [92] = https://curl.haxx.se/bug/?i=4735 |