Imported Upstream version 7.40.0
[platform/upstream/curl.git] / RELEASE-NOTES
index c796d8d..123088f 100644 (file)
-Curl and libcurl 7.32.0
+Curl and libcurl 7.40.0
 
- Public curl releases:         134
- Command line options:         152
- curl_easy_setopt() options:   199
+ Public curl releases:         143
+ Command line options:         162
+ curl_easy_setopt() options:   208
  Public functions in libcurl:  58
- Known libcurl bindings:       42
- Contributors:                 1049
-
-***
-  krb4 support is up for removal. If you care about it at all, speak up
-  on the curl-library list asap!
-***
+ Contributors:                 1219
 
 This release includes the following changes:
 
- o curl: allow timeouts to accept decimal values
- o OS400: add slist and certinfo EBCDIC support
- o OS400: new SSL backend GSKit
- o CURLOPT_XFERINFOFUNCTION: introducing a new progress callback
- o LIBCURL-STRUCTS: new document
+ o http_digest: Added support for Windows SSPI based authentication
+ o version info: Added Kerberos V5 to the supported features
+ o Makefile: Added VC targets for WinIDN
+ o config-win32: Introduce build targets for VS2012+
+ o SSL: Add PEM format support for public key pinning
+ o smtp: Added support for the conversion of Unix newlines during mail send [8]
+ o smb: Added initial support for the SMB/CIFS protocol
+ o Added support for HTTP over unix domain sockets, via
+   CURLOPT_UNIX_SOCKET_PATH and --unix-socket
+ o sasl: Added support for GSS-API based Kerberos V5 authentication
 
 This release includes the following bugfixes:
 
- o dotdot: introducing dot file path cleanup [1]
- o docs: fix typo in curl_easy_getinfo manpage
- o test1230: avoid using hard-wired port number
- o test1396: invoke the correct test tool
- o SIGPIPE: ignored while inside the library [2]
- o darwinssl: fix crash that started happening in Lion
- o OpenSSL: check for read errors, don't assume [3]
- o c-ares: improve error message on failed resolve [4]
- o printf: make sure %x are treated unsigned
- o formpost: better random boundaries [5]
- o url: restore the functionality of 'curl -u :' [6]
- o curl.1: fix typo in --xattr description [7]
- o digest: improve nonce generation
- o configure: automake 1.14 compatibility tweak
- o curl.1: document the --post303 option in the man page
- o curl.1: document the --sasl-ir option in the man page
- o setup-vms.h: sk_pop symbol tweak
- o tool_paramhlp: try harder to catch negatives
- o cmake: Fix for MSVC2010 project generation [8]
- o asyn-ares: Don't blank ares servers if none configured
- o curl_multi_wait: set revents for extra fds
- o Reinstate "WIN32 MemoryTracking: track wcsdup() _wcsdup() and _tcsdup()
- o ftp_do_more: consider DO_MORE complete when server connects back [9]
- o curl_easy_perform: gradually increase the delay time [10]
- o curl: fix symbolic names for CURLUSESSL_* enum in --libcurl output
- o curl: fix upload of a zip file in OpenVMS [11]
- o build: fix linking on Solaris 10 [12]
- o curl_formadd: CURLFORM_FILECONTENT wrongly rejected some option combos [13]
- o curl_formadd: fix file upload on VMS [14]
- o curl_easy_pause: on unpause, trigger mulit-socket handling [15]
- o md5 & metalink: use better build macros on Apple operating systems [16]
- o darwinssl: fix build error in crypto authentication under Snow Leopard [16]
- o curl: make --progress-bar update the line less frequently [17]
- o configure: don't error out on variable confusions (CFLAGS, LDFLAGS etc)
- o mk-ca-bundle: skip more untrusted certificates
- o formadd: wrong pointer for file name when CURLFORM_BUFFERPTR used [18]
- o FTP: when EPSV gets a 229 but fails to connect, retry with PASV
- o mk-ca-bundle.1: don't install on make install [19]
- o VMS: lots of updates and fixes of the build procedure
- o global dns cache: didn't work (regression)
- o global dns cache: fix memory leak
- o 
+ o darwinssl: fix session ID keys to only reuse identical sessions [18]
+ o url-parsing: reject CRLFs within URLs [19]
+ o OS400: Adjust specific support to last release
+ o THANKS: Remove duplicate names
+ o url.c: Fixed compilation warning
+ o ssh: Fixed build on platforms where R_OK is not defined [1]
+ o tool_strdup.c: include the tool strdup.h
+ o build: Fixed Visual Studio project file generation of strdup.[c|h]
+ o curl_easy_setopt.3: add CURLOPT_PINNEDPUBLICKEY [2]
+ o curl.1: show zone index use in a URL
+ o mk-ca-bundle.vbs: switch to new certdata.txt url
+ o Makefile.dist: Added some missing SSPI configurations
+ o build: Fixed no NTLM support for email when CURL_DISABLE_HTTP is defined
+ o SSH: use the port number as well for known_known checks [3]
+ o libssh2: detect features based on version, not configure checks
+ o http2: Deal with HTTP/2 data inside Upgrade response header buffer [4]
+ o multi: removed Curl_multi_set_easy_connection
+ o symbol-scan.pl: do not require autotools
+ o cmake: add ENABLE_THREADED_RESOLVER, rename ARES
+ o cmake: build libhostname for test suite
+ o cmake: fix HAVE_GETHOSTNAME definition
+ o tests: fix libhostname visibility
+ o tests: fix memleak in server/resolve.c
+ o vtls.h: Fixed compiler warning when compiled without SSL
+ o CMake: Restore order-dependent header checks
+ o CMake: Restore order-dependent library checks
+ o tool: Removed krb4 from the supported features
+ o http2: Don't send Upgrade headers when we already do HTTP/2
+ o examples: Don't call select() to sleep on windows [6]
+ o win32: Updated some legacy APIs to use the newer extended versions [5]
+ o easy.c: Fixed compilation warning when no verbose string support
+ o connect.c: Fixed compilation warning when no verbose string support
+ o build: in Makefile.m32 pass -F flag to windres
+ o build: in Makefile.m32 add -m32 flag for 32bit
+ o multi: when leaving for timeout, close accordingly
+ o CMake: Simplify if() conditions on check result variables
+ o build: in Makefile.m32 try to detect 64bit target
+ o multi: inform about closed sockets before they are closed
+ o multi-uv.c: close the file handle after download
+ o examples: Wait recommended 100ms when no file descriptors are ready
+ o ntlm: Split the SSPI based messaging code from the native messaging code
+ o cmake: fix NTLM detection when CURL_DISABLE_HTTP defined
+ o cmake: add Kerberos to the supported feature
+ o CURLOPT_POSTFIELDS.3: mention the COPYPOSTFIELDS option
+ o http: Disable pipelining for HTTP/2 and upgraded connections
+ o ntlm: Fixed static'ness of local decode function
+ o sasl: Reduced the need for two sets of NTLM messaging functions
+ o multi.c: Fixed compilation warnings when no verbose string support
+ o select.c: fix compilation for VxWorks [7]
+ o multi-single.c: switch to use curl_multi_wait
+ o curl_multi_wait.3: clarify numfds being used if not NULL
+ o http.c: Fixed compilation warnings from features being disabled
+ o NSS: enable the CAPATH option [9]
+ o docs: Fix FAILONERROR typos
+ o HTTP: don't abort connections with pending Negotiate authentication
+ o HTTP: Free (proxy)userpwd for NTLM/Negotiate after sending a request
+ o http_perhapsrewind: don't abort CONNECT requests
+ o build: updated dependencies in makefiles
+ o multi.c: Fixed compilation warning
+ o ftp.c: Fixed compilation warnings when proxy support disabled
+ o get_url_file_name: Fixed crash on OOM on debug build
+ o cookie.c: Refactored cleanup code to simplify
+ o OS400: enable NTLM authentication
+ o ntlm: Use Windows Crypt API
+ o http2: avoid logging neg "failure" if h2 was not requested
+ o schannel_recv: return the correct code [10]
+ o VC build: added sspi define for winssl-zlib builds
+ o Curl_client_write(): chop long data, convert data only once
+ o openldap: do not ignore Curl_client_write() return code
+ o ldap: check Curl_client_write() return codes
+ o parsedate.c: Fixed compilation warning
+ o url.c: Fixed compilation warning when USE_NTLM is not defined
+ o ntlm_wb_response: fix "statement not reached" [11]
+ o telnet: fix "cast increases required alignment of target type"
+ o smtp: Fixed dot stuffing when EOL characters at end of input buffers [12]
+ o ntlm: Allow NTLM2Session messages when USE_NTRESPONSES manually defined
+ o ntlm: Disable NTLM v2 when 64-bit integers are not supported
+ o ntlm: Use short integer when decoding 16-bit values
+ o ftp.c: Fixed compilation warning when no verbose string support
+ o synctime.c: fixed timeserver URLs
+ o mk-ca-bundle.pl: restored forced run again
+ o ntlm: Fixed return code for bad type-2 Target Info
+ o curl_schannel.c: Data may be available before connection shutdown
+ o curl_schannel: Improvements to memory re-allocation strategy [13]
+ o darwinssl: aprintf() to allocate the session key
+ o tool_util.c: Use GetTickCount64 if it is available
+ o lib: Fixed multiple code analysis warnings if SAL are available
+ o tool_binmode.c: Explicitly ignore the return code of setmode
+ o tool_urlglob.c: Silence warning C6293: Ill-defined for-loop
+ o opts: Warn CURLOPT_TIMEOUT overrides when set after CURLOPT_TIMEOUT_MS
+ o SFTP: work-around servers that return zero size on STAT [14]
+ o connect: singleipconnect(): properly try other address families after failure
+ o IPV6: address scope != scope id [15]
+ o parseurlandfillconn(): fix improper non-numeric scope_id stripping [16]
+ o secureserver.pl: make OpenSSL CApath and cert absolute path values
+ o secureserver.pl: update Windows detection and fix path conversion
+ o secureserver.pl: clean up formatting of config and fix verbose output
+ o tests: Added Windows support using Cygwin-based OpenSSH
+ o sockfilt.c: use non-Ex functions that are available before WinXP
+ o VMS: Updates for 0740-0D1220
+ o openssl: warn for SRP set if SSLv3 is used, not for TLS version
+ o openssl: make it compile against openssl 1.1.0-DEV master branch
+ o openssl: fix SSL/TLS versions in verbose output
+ o curl: show size of inhibited data when using -v
+ o build: Removed WIN32 definition from the Visual Studio projects
+ o build: Removed WIN64 definition from the libcurl Visual Studio projects
+ o vtls: Use bool for Curl_ssl_getsessionid() return type
+ o sockfilt.c: Replace 100ms sleep with thread throttle
+ o sockfilt.c: Reduce the number of individual memory allocations
+ o vtls: Don't set cert info count until memory allocation is successful
+ o nss: Don't ignore Curl_ssl_init_certinfo() OOM failure
+ o nss: Don't ignore Curl_extract_certinfo() OOM failure
+ o vtls: Fixed compilation warning and an ignored return code
+ o sockfilt.c: Fixed compilation warnings
+ o darwinssl: Fixed compilation warning
+ o vtls: Use '(void) arg' for unused parameters
+ o sepheaders.c: Fixed resource leak on failure
+ o lib1900.c: Fixed cppcheck error [17]
+ o ldap: Fixed Unicode connection details in Win32 initialsation / bind calls
+ o ldap: Fixed Unicode DN, attributes and filter in Win32 search calls
 
 This release includes the following known bugs:
 
@@ -72,34 +149,35 @@ This release includes the following known bugs:
 This release would not have looked like this without help, code, reports and
 advice from friends like these:
 
- Alex Vinnik, Alessandro Ghedini, Nick Zitzmann, Kamil Dudka,
- Lluis Batlle i Rossell, Nach M. S., Kim Vandry, Ben Greear, Dan Fandrich,
- Dave Reisner, Evgeny Turnaev, Guenter Knauf, John E. Malmberg, Marc Hoersken,
- Patrick Monnerat, Sergei Nikulov, Yang Tse, Andreas Malzahn, Clemens Gruber,
- Jean-Noel Rouvignac, Markus Moeller, Fabian Keil, Dagobert Michelsen,
- Byrial Jensen, Justin Karneges, Edward Rudd, Marc Doughty, Konstantin Isakov,
+  Andrey Labunets, Anthon Pang, Bill Nagel, Brad Harder, Brad King, Carlo Wood,
+  Christian Hägele, Dan Fandrich, Daniel Stenberg, Dave Reisner, Frank Gevaerts,
+  Gisle Vanem, Guenter Knauf, Jan Ehrhardt, Johan Lantz, John E. Malmberg,
+  Jon Spencer, Julien Nabet, Kamil Dudka, Kyle J. McKay, Lucas Pardue,
+  Marc Hesse, Marc Hoersken, Marc Renault, Michael Osipov, Nick Zitzmann,
+  Nobuhiro Ban, Patrick Monnerat, Peter Wu, Ray Satiro, Sam Hurst,
+  Stefan Bühler, Stefan Neis, Steve Holme, Tae Hyoung Ahn, Tatsuhiro Tsujikawa,
+  Tomasz Kojm, Tor Arntsen, Waldek Kozba, Warren Menzer
 
         Thanks! (and sorry if I forgot to mention someone)
 
 References to bug reports and discussions on issues:
 
- [1] = http://curl.haxx.se/bug/view.cgi?id=1200
- [2] = http://curl.haxx.se/bug/view.cgi?id=1180
- [3] = http://curl.haxx.se/bug/view.cgi?id=1249
- [4] = http://curl.haxx.se/bug/view.cgi?id=1191
- [5] = http://curl.haxx.se/bug/view.cgi?id=1251
- [6] = http://curl.haxx.se/mail/archive-2013-06/0052.html
- [7] = http://curl.haxx.se/bug/view.cgi?id=1252
- [8] = http://curl.haxx.se/mail/lib-2013-07/0046.html
- [9] = http://curl.haxx.se/mail/lib-2013-07/0115.html
- [10] = http://curl.haxx.se/mail/lib-2013-07/0103.html
- [11] = http://curl.haxx.se/bug/view.cgi?id=496
- [12] = http://curl.haxx.se/bug/view.cgi?id=1217
- [13] = http://curl.haxx.se/mail/lib-2013-07/0258.html
- [14] = http://curl.haxx.se/bug/view.cgi?id=758
- [15] = http://curl.haxx.se/mail/lib-2013-07/0239.html
- [16] = http://curl.haxx.se/bug/view.cgi?id=1255
- [17] = http://curl.haxx.se/mail/archive-2013-07/0031.html
- [18] = http://curl.haxx.se/bug/view.cgi?id=1262
- [19] = http://curl.haxx.se/mail/lib-2013-08/0057.html
+ [1] = http://curl.haxx.se/mail/lib-2014-11/0035.html
+ [2] = http://curl.haxx.se/mail/lib-2014-11/0078.html
+ [3] = http://curl.haxx.se/bug/view.cgi?id=1448
+ [4] = https://github.com/tatsuhiro-t/nghttp2/issues/103
+ [5] = http://sourceforge.net/p/curl/feature-requests/82/
+ [6] = http://curl.haxx.se/mail/lib-2014-11/0221.html
+ [7] = http://curl.haxx.se/bug/view.cgi?id=1455
+ [8] = http://curl.haxx.se/bug/view.cgi?id=1456
+ [9] = http://curl.haxx.se/bug/view.cgi?id=1457
+ [10] = http://curl.haxx.se/bug/view.cgi?id=1462
+ [11] = http://curl.haxx.se/mail/lib-2014-12/0089.html
+ [12] = http://curl.haxx.se/bug/view.cgi?id=1456
+ [13] = http://curl.haxx.se/bug/view.cgi?id=1450
+ [14] = http://curl.haxx.se/mail/lib-2014-12/0103.html
+ [15] = http://curl.haxx.se/bug/view.cgi?id=1451
+ [16] = http://curl.haxx.se/bug/view.cgi?id=1449
+ [17] = https://github.com/bagder/curl/pull/133
+ [18] = http://curl.haxx.se/docs/adv_20150108A.html
+ [19] = http://curl.haxx.se/docs/adv_20150108B.html