Curl and libcurl 7.40.0 Public curl releases: 143 Command line options: 162 curl_easy_setopt() options: 208 Public functions in libcurl: 58 Contributors: 1219 This release includes the following changes: 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 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 This release includes the following known bugs: o see docs/KNOWN_BUGS (http://curl.haxx.se/docs/knownbugs.html) This release would not have looked like this without help, code, reports and advice from friends like these: 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, Jon Spencer, Kamil Dudka, Lucas Pardue, Michael Osipov, Nobuhiro Ban, Patrick Monnerat, Peter Wu, Ray Satiro, Sam Hurst, Stefan Bühler, Stefan Neis, Steve Holme, Tae Hyoung Ahn, Tatsuhiro Tsujikawa, Tomasz Kojm, Waldek Kozba, Thanks! (and sorry if I forgot to mention someone) References to bug reports and discussions on issues: [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] =