Curl 7.40.0发布
jopen 10年前
curl是利用URL语法在命令行方式下工作的开源文件传输工具。相信有不少人使用。
新特性:
支持Kerberos V5
支持Windows下基于SSP的认证
支持SMB/CIFS协议,以及Socket和SSL等增强。
Fixed in 7.40.0 - January 8 2015
Changes:
- http_digest: Added support for Windows SSPI based authentication
- version info: Added Kerberos V5 to the supported features
- Makefile: Added VC targets for WinIDN
- config-win32: Introduce build targets for VS2012+
- SSL: Add PEM format support for public key pinning
- smtp: Added support for the conversion of Unix newlines during mail send
- smb: Added initial support for the SMB/CIFS protocol
- Added support for HTTP over unix domain sockets, via CURLOPT_UNIX_SOCKET_PATH and --unix-socket
- sasl: Added support for GSS-API based Kerberos V5 authentication
Bugfixes:
- darwinssl: fix session ID keys to only reuse identical sessions
- url-parsing: reject CRLFs within URLs
- OS400: Adjust specific support to last release
- THANKS: Remove duplicate names
- url.c: Fixed compilation warning
- ssh: Fixed build on platforms where R_OK is not defined
- tool_strdup.c: include the tool strdup.h
- build: Fixed Visual Studio project file generation of strdup.[c|h]
- curl_easy_setopt.3: add CURLOPT_PINNEDPUBLICKEY
- curl.1: show zone index use in a URL
- mk-ca-bundle.vbs: switch to new certdata.txt url
- Makefile.dist: Added some missing SSPI configurations
- build: Fixed no NTLM support for email when CURL_DISABLE_HTTP is defined
- SSH: use the port number as well for known_known checks
- libssh2: detect features based on version, not configure checks
- http2: Deal with HTTP/2 data inside Upgrade response header buffer
- multi: removed Curl_multi_set_easy_connection
- symbol-scan.pl: do not require autotools
- cmake: add ENABLE_THREADED_RESOLVER, rename ARES
- cmake: build libhostname for test suite
- cmake: fix HAVE_GETHOSTNAME definition
- tests: fix libhostname visibility
- tests: fix memleak in server/resolve.c
- vtls.h: Fixed compiler warning when compiled without SSL
- CMake: Restore order-dependent header checks
- CMake: Restore order-dependent library checks
- tool: Removed krb4 from the supported features
- http2: Don't send Upgrade headers when we already do HTTP/2
- examples: Don't call select() to sleep on windows
- win32: Updated some legacy APIs to use the newer extended versions
- easy.c: Fixed compilation warning when no verbose string support
- connect.c: Fixed compilation warning when no verbose string support
- build: in Makefile.m32 pass -F flag to windres
- build: in Makefile.m32 add -m32 flag for 32bit
- multi: when leaving for timeout, close accordingly
- CMake: Simplify if() conditions on check result variables
- build: in Makefile.m32 try to detect 64bit target
- multi: inform about closed sockets before they are closed
- multi-uv.c: close the file handle after download
- examples: Wait recommended 100ms when no file descriptors are ready
- ntlm: Split the SSPI based messaging code from the native messaging code
- cmake: fix NTLM detection when CURL_DISABLE_HTTP defined
- cmake: add Kerberos to the supported feature
- CURLOPT_POSTFIELDS.3: mention the COPYPOSTFIELDS option
- http: Disable pipelining for HTTP/2 and upgraded connections
- ntlm: Fixed static'ness of local decode function
- sasl: Reduced the need for two sets of NTLM messaging functions
- multi.c: Fixed compilation warnings when no verbose string support
- select.c: fix compilation for VxWorks
- multi-single.c: switch to use curl_multi_wait
- curl_multi_wait.3: clarify numfds being used if not NULL
- http.c: Fixed compilation warnings from features being disabled
- NSS: enable the CAPATH option
- docs: Fix FAILONERROR typos
- HTTP: don't abort connections with pending Negotiate authentication
- HTTP: Free (proxy)userpwd for NTLM/Negotiate after sending a request
- http_perhapsrewind: don't abort CONNECT requests
- build: updated dependencies in makefiles
- multi.c: Fixed compilation warning
- ftp.c: Fixed compilation warnings when proxy support disabled
- get_url_file_name: Fixed crash on OOM on debug build
- cookie.c: Refactored cleanup code to simplify
- OS400: enable NTLM authentication
- ntlm: Use Windows Crypt API
- http2: avoid logging neg "failure" if h2 was not requested
- schannel_recv: return the correct code
- VC build: added sspi define for winssl-zlib builds
- Curl_client_write(): chop long data, convert data only once
- openldap: do not ignore Curl_client_write() return code
- ldap: check Curl_client_write() return codes
- parsedate.c: Fixed compilation warning
- url.c: Fixed compilation warning when USE_NTLM is not defined
- ntlm_wb_response: fix "statement not reached"
- telnet: fix "cast increases required alignment of target type"
- smtp: Fixed dot stuffing when EOL characters at end of input buffers
- ntlm: Allow NTLM2Session messages when USE_NTRESPONSES manually defined
- ntlm: Disable NTLM v2 when 64-bit integers are not supported
- ntlm: Use short integer when decoding 16-bit values
- ftp.c: Fixed compilation warning when no verbose string support
- synctime.c: fixed timeserver URLs
- mk-ca-bundle.pl: restored forced run again
- ntlm: Fixed return code for bad type-2 Target Info
- curl_schannel.c: Data may be available before connection shutdown
- curl_schannel: Improvements to memory re-allocation strategy
- darwinssl: aprintf() to allocate the session key
- tool_util.c: Use GetTickCount64 if it is available
- lib: Fixed multiple code analysis warnings if SAL are available
- tool_binmode.c: Explicitly ignore the return code of setmode
- tool_urlglob.c: Silence warning C6293: Ill-defined for-loop
- opts: Warn CURLOPT_TIMEOUT overrides when set after CURLOPT_TIMEOUT_MS
- SFTP: work-around servers that return zero size on STAT
- connect: singleipconnect(): properly try other address families after failure
- IPV6: address scope != scope id
- parseurlandfillconn(): fix improper non-numeric scope_id stripping
- secureserver.pl: make OpenSSL CApath and cert absolute path values
- secureserver.pl: update Windows detection and fix path conversion
- secureserver.pl: clean up formatting of config and fix verbose output
- tests: Added Windows support using Cygwin-based OpenSSH
- sockfilt.c: use non-Ex functions that are available before WinXP
- VMS: Updates for 0740-0D1220
- openssl: warn for SRP set if SSLv3 is used, not for TLS version
- openssl: make it compile against openssl 1.1.0-DEV master branch
- openssl: fix SSL/TLS versions in verbose output
- curl: show size of inhibited data when using -v
- build: Removed WIN32 definition from the Visual Studio projects
- build: Removed WIN64 definition from the libcurl Visual Studio projects
- vtls: Use bool for Curl_ssl_getsessionid() return type
- sockfilt.c: Replace 100ms sleep with thread throttle
- sockfilt.c: Reduce the number of individual memory allocations
- vtls: Don't set cert info count until memory allocation is successful
- nss: Don't ignore Curl_ssl_init_certinfo() OOM failure
- nss: Don't ignore Curl_extract_certinfo() OOM failure
- vtls: Fixed compilation warning and an ignored return code
- sockfilt.c: Fixed compilation warnings
- darwinssl: Fixed compilation warning
- vtls: Use '(void) arg' for unused parameters
- sepheaders.c: Fixed resource leak on failure
- lib1900.c: Fixed cppcheck error
- ldap: Fixed Unicode connection details in Win32 initialsation / bind calls
- ldap: Fixed Unicode DN, attributes and filter in Win32 search calls