[CVE-2016-3739] TLS certificate check bypass with mbedTLS/PolarSSL
[platform/upstream/curl.git] / RELEASE-NOTES
index 371654a..54029db 100644 (file)
-Curl and libcurl 7.29.0
+Curl and libcurl 7.48.0
 
- Public curl releases:         131
- Command line options:         152
- curl_easy_setopt() options:   199
- Public functions in libcurl:  58
- Known libcurl bindings:       39
- Contributors:                 993
+ Public curl releases:         153
+ Command line options:         179
+ curl_easy_setopt() options:   221
+ Public functions in libcurl:  61
+ Contributors:                 1364
 
 This release includes the following changes:
 
- o test: offer "automake" output and check for perl better
- o always-multi: always use non-blocking internals [1]
- o imap: Added support for sasl digest-md5 authentication
- o imap: Added support for sasl cram-md5 authentication
- o imap: Added support for sasl ntlm authentication
- o imap: Added support for sasl login authentication
- o imap: Added support for sasl plain text authentication
- o imap: Added support for login disabled server capability
- o mk-ca-bundle: add -f, support passing to stdout and more [5]
- o writeout: -w now supports remote_ip/port and local_ip/port
+ o configure: --with-ca-fallback: use built-in TLS CA fallback [2]
+ o TFTP: add --tftp-no-options to expose CURLOPT_TFTP_NO_OPTIONS [22]
+ o getinfo: CURLINFO_TLS_SSL_PTR supersedes CURLINFO_TLS_SESSION [25]
+ o added CODE_STYLE.md [47]
 
 This release includes the following bugfixes:
 
- o nss: prevent NSS from crashing on client auth hook failure
- o darwinssl: Fixed inability to disable peer verification on Snow Leopard
-   and Lion
- o curl_multi_remove_handle: fix memory leak triggered with CURLOPT_RESOLVE
- o SCP: relative path didn't work as documented [7]
- o setup_once.h: HP-UX <sys/socket.h> issue workaround
- o configure: fix cross pkg-config detection
- o runtests: Do not add undefined values to @INC
- o build: fix compilation with CURL_DISABLE_CRYPTO_AUTH flag
- o multi: fix re-sending request on early connection close
- o HTTP: remove stray CRLF in chunk-encoded content-free request bodies
- o build: fix AIX compilation and usage of events/revents
- o VC Makefiles: add missing hostcheck
- o nss: clear session cache if a client certificate from file is used
- o nss: fix error messages for CURLE_SSL_{CACERT,CRL}_BADFILE
- o fix HTTP CONNECT tunnel establishment upon delayed response [2]
- o --libcurl: fix for non-zero default options
- o FTP: reject illegal port numbers in EPSV 229 responses
- o build: use per-target '_CPPFLAGS' for those currently using default
- o configure: fix automake 1.13 compatibility [6]
- o curl: ignore SIGPIPE [4]
- o pop3: Added support for non-blocking SSL upgrade
- o pop3: Fixed default authentication detection
- o imap: Fixed usernames and passwords that contain escape characters
- o packages/DOS/common.dj: remove COFF debug info generation [3]
- o imap/pop3/smtp: Fixed failure detection during TLS upgrade [8]
- o pop3: Fixed no known authentication mechanism when fallback is required [9]
- o formadd: reject trying to read a directory where a file is expected [10]
- o formpost: support quotes, commas and semicolon in file names [11]
- o docs: update the comments about loading CA certs with NSS [12]
- o docs: fix typos in man pages [13]
- o darwinssl: Fix bug where packets were sometimes transmitted twice [14]
- o winbuild: include version info for .dll .exe [15]
- o schannel: Removed extended error connection setup flag [16]
- o VMS: fix and generate the VMS build config
+ o Proxy-Connection: stop sending this header by default [1]
+ o os400: sync ILE/RPG definitions with latest public header files
+ o cookies: allow spaces in cookie names, cut of trailing spaces [3]
+ o tool_urlglob: Allow reserved dos device names (Windows) [4]
+ o openssl: remove most BoringSSL #ifdefs [5]
+ o tool_doswin: Support for literal path prefix \\?\
+ o mbedtls: fix ALPN usage segfault [6]
+ o mbedtls: fix memory leak when destroying SSL connection data [7]
+ o nss: do not count enabled cipher-suites
+ o examples/cookie_interface.c: add cleanup call
+ o examples: adhere to curl code style
+ o curlx_tvdiff: handle 32bit time_t overflows [8]
+ o dist: ship buildconf.bat too
+ o curl.1: --disable-{eprt,epsv} are ignored for IPv6 hosts [9]
+ o generate.bat: Fix comment bug by removing old comments [10]
+ o test1604: Add to Makefile.inc so it gets run
+ o gtls: fix for builds lacking encrypted key file support [11]
+ o SCP: use libssh2_scp_recv2 to support > 2GB files on windows [12]
+ o CURLOPT_CONNECTTIMEOUT_MS.3: Fix example to use milliseconds option [13]
+ o cookie: do not refuse cookies to localhost [14]
+ o openssl: avoid direct PKEY access with OpenSSL 1.1.0 [15]
+ o http: Don't break the header into chunks if HTTP/2 [16]
+ o http2: don't decompress gzip decoding automatically [17]
+ o curlx.c: i2s_ASN1_IA5STRING() clashes with an openssl function
+ o curl.1: add a missing dash
+ o curl.1: HTTP headers for --cookie must be Set-Cookie style [18]
+ o CURLOPT_COOKIEFILE.3: HTTP headers must be Set-Cookie style [18]
+ o curl_sasl: Fix memory leak in digest parser [19]
+ o src/Makefile.m32: add CURL_{LD,C}FLAGS_EXTRAS support [20]
+ o CURLOPT_DEBUGFUNCTION.3: Fix example
+ o runtests: Fixed usage of %PWD on MinGW64 [21]
+ o tests/sshserver.pl: use RSA instead of DSA for host auth [23]
+ o multi_remove_handle: keep the timeout list until after disconnect [24]
+ o Curl_read: check for activated HTTP/1 pipelining, not only requested
+ o configure: warn on invalid ca bundle or path [26]
+ o file: try reading from files with no size [27]
+ o getinfo: Add support for mbedTLS TLS session info
+ o formpost: fix memory leaks in AddFormData error branches [28]
+ o makefile.m32: allow to pass .dll/.exe-specific LDFLAGS [29]
+ o url: if Curl_done is premature then pipeline not in use [30]
+ o cookie: remove redundant check [31]
+ o cookie: Don't expire session cookies in remove_expired [32]
+ o makefile.m32: fix to allow -ssh2-winssl combination [33]
+ o checksrc.bat: Fixed cannot find perl if installed but not in path
+ o build-openssl.bat: Fixed cannot find perl if installed but not in path
+ o mbedtls: fix user-specified SSL protocol version
+ o makefile.m32: add missing libs for static -winssl-ssh2 builds [34]
+ o test46: change cookie expiry date [35]
+ o pipeline: Sanity check pipeline pointer before accessing it [36]
+ o openssl: use the correct OpenSSL/BoringSSL/LibreSSL in messages
+ o ftp_done: clear tunnel_state when secondary socket closes [37]
+ o opt-docs: fix heading macros [38]
+ o imap/pop3/smtp: Fixed connections upgraded with TLS are not reused [39]
+ o curl_multi_wait: never return -1 in 'numfds' [40]
+ o url.c: fix clang warning: no newline at end of file
+ o krb5: improved type handling to avoid clang compiler warnings
+ o cookies: first n/v pair in Set-Cookie: is the cookie, then parameters [41]
+ o multi: avoid blocking during CURLM_STATE_WAITPROXYCONNECT [42]
+ o multi hash: ensure modulo performed on curl_socket_t [43]
+ o curl: glob_range: no need to check unsigned variable for negative
+ o easy: add check to malloc() when running event-based
+ o CURLOPT_SSLENGINE.3: Only for OpenSSL built with engine support [44]
+ o version: thread safety
+ o openssl: verbose: show matching SAN pattern
+ o openssl: adapt to OpenSSL 1.1.0 API breakage in ERR_remove_thread_state()
+ o formdata.c: Fixed compilation warning
+ o configure: use cpp -P when needed [45]
+ o imap.c: Fixed compilation warning with /Wall enabled
+ o config-w32.h: Fixed compilation warning when /Wall enabled
+ o ftp/imap/pop3/smtp: Fixed compilation warning when /Wall enabled
+ o build: Added missing Visual Studio filter files for VC10 onwards
+ o easy: Remove poll failure check in easy_transfer
+ o mbedtls: fix compiler warning
+ o build-wolfssl: Update VS properties for wolfSSL v3.9.0
+ o Fixed various compilation warnings when verbose strings disabled
 
 This release includes the following known bugs:
 
- o see docs/KNOWN_BUGS (http://curl.haxx.se/docs/knownbugs.html)
+ 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:
 
- Nick Zitzmann, Colin Watson, Fabian Keil, Kamil Dudka, Lijo Antony,
- Linus Nielsen Feltzing, Marc Hoersken, Stanislav Ivochkin, Steve Holme,
- Yang Tse, Balaji Parasuram, Dan Fandrich, Bob Relyea, Gisle Vanem,
- Yves Arrouye, Kai Engert, Lluís Batlle i Rossell, Jirí Hruka,
- John E. Malmberg, Tor Arntsen, Matt Arsenault, Sergei Nikulov,
- Guenter Knauf, Craig Davison, Ulrich Doehner, Jiri Jaburek, Bruno de Carvalho
+  Anders Bakken, Brad Fitzpatrick, Clint Clayton, Dan Fandrich,
+  Daniel Stenberg, David Benjamin, David Byron, Emil Lerner, Eric S. Raymond,
+  Gisle Vanem, Jaime Fullaondo, Jeffrey Walton, Jesse Tan, Justin Ehlert,
+  Kamil Dudka, Kazuho Oku, Ludwig Nussel, Maksim Kuzevanov, Michael König,
+  Oliver Graute, Patrick Monnerat, Rafael Antonio, Ray Satiro, Seth Mos,
+  Shine Fan, Steve Holme, Tatsuhiro Tsujikawa, Timotej Lazar, Tim Rühsen,
+  Viktor Szakáts,
+  (30 contributors)
 
         Thanks! (and sorry if I forgot to mention someone)
 
 References to bug reports and discussions on issues:
 
- [1] = http://daniel.haxx.se/blog/2013/01/17/internally-were-all-multi-now/
- [2] = http://curl.haxx.se/mail/lib-2013-01/0191.html
- [3] = http://curl.haxx.se/mail/lib-2013-01/0130.html
- [4] = http://curl.haxx.se/bug/view.cgi?id=1180
- [5] = http://curl.haxx.se/mail/lib-2013-01/0045.html
- [6] = http://curl.haxx.se/mail/lib-2012-12/0246.html
- [7] = http://curl.haxx.se/bug/view.cgi?id=1173
- [8] = http://curl.haxx.se/mail/lib-2013-01/0250.html
- [9] = http://curl.haxx.se/mail/lib-2013-02/0004.html
- [10] = http://curl.haxx.se/mail/archive-2013-01/0017.html
- [11] = http://curl.haxx.se/bug/view.cgi?id=1171
- [12] = https://bugzilla.redhat.com/696783
- [13] = https://bugzilla.redhat.com/896544
- [14] = http://curl.haxx.se/mail/lib-2013-01/0295.html
- [15] = http://curl.haxx.se/bug/view.cgi?id=1186
- [16] = http://curl.haxx.se/bug/view.cgi?id=1187
+ [1] = https://curl.haxx.se/bug/?i=633
+ [2] = https://curl.haxx.se/bug/?i=569
+ [3] = https://curl.haxx.se/bug/?i=639
+ [4] = https://github.com/curl/curl/commit/4520534#commitcomment-15954863
+ [5] = https://curl.haxx.se/bug/?i=640
+ [6] = https://curl.haxx.se/bug/?i=642
+ [7] = https://curl.haxx.se/bug/?i=626
+ [8] = https://curl.haxx.se/bug/?i=646
+ [9] = https://bugzilla.redhat.com/1305970
+ [10] = https://curl.haxx.se/bug/?i=649
+ [11] = https://curl.haxx.se/bug/?i=651
+ [12] = https://curl.haxx.se/bug/?i=451
+ [13] = https://curl.haxx.se/bug/?i=653
+ [14] = https://curl.haxx.se/bug/?i=658
+ [15] = https://curl.haxx.se/bug/?i=650
+ [16] = https://curl.haxx.se/bug/?i=659
+ [17] = https://curl.haxx.se/bug/?i=661
+ [18] = https://curl.haxx.se/bug/?i=666
+ [19] = https://curl.haxx.se/bug/?i=667
+ [20] = https://curl.haxx.se/bug/?i=670
+ [21] = https://curl.haxx.se/bug/?i=672
+ [22] = https://curl.haxx.se/bug/?i=481
+ [23] = https://curl.haxx.se/bug/?i=676
+ [24] = https://curl.haxx.se/mail/lib-2016-02/0097.html
+ [25] = https://curl.haxx.se/libcurl/c/CURLINFO_TLS_SSL_PTR.html
+ [26] = https://curl.haxx.se/bug/?i=404
+ [27] = https://curl.haxx.se/bug/?i=681
+ [28] = https://curl.haxx.se/bug/?i=688
+ [29] = https://curl.haxx.se/bug/?i=689
+ [30] = https://curl.haxx.se/bug/?i=690
+ [31] = https://curl.haxx.se/bug/?i=695
+ [32] = https://curl.haxx.se/bug/?i=697
+ [33] = https://curl.haxx.se/bug/?i=692
+ [34] = https://curl.haxx.se/bug/?i=693
+ [35] = https://curl.haxx.se/bug/?i=697
+ [36] = https://curl.haxx.se/bug/?i=704
+ [37] = https://curl.haxx.se/bug/?i=701
+ [38] = https://curl.haxx.se/bug/?i=705
+ [39] = https://curl.haxx.se/bug/?i=422
+ [40] = https://curl.haxx.se/bug/?i=707
+ [41] = https://curl.haxx.se/bug/?i=709
+ [42] = https://curl.haxx.se/bug/?i=703
+ [43] = https://curl.haxx.se/bug/?i=712
+ [44] = https://curl.haxx.se/mail/lib-2016-03/0150.html
+ [45] = https://curl.haxx.se/bug/?i=719
+ [47] = https://curl.haxx.se/dev/code-style.html