I’m happy to announce the 103rd curl release: curl and libcurl 7.18.0.
No less than 35 persons beside myself contributed with info, reports and/or code to make the release as it turned out. We’ve added a bunch of new features and we’ve solved well over 30 different bugs. This is the news:
Changes:
- data-urlencode
- CURLOPT_PROXY_TRANSFER_MODE
- no-keepalive – now curl does connections with keep-alive enabled by default
- socks4a added (proxy type CURLPROXY_SOCKS4A for libcurl)
- socks5-hostname added (CURLPROXY_SOCKS5_HOSTNAME for libcurl)
- curl_easy_pause()
- CURLOPT_SEEKFUNCTION and CURLOPT_SEEKDATA
- keepalive-time
- curl help output was re-ordered
Bugfixes:
- curl-config –features and –protocols show the correct output when built with NSS, and also when SCP, SFTP and libz are not available
- free problem in the curl tool for users with empty home dir
- curl.h version 7.17.1 problem when building C++ apps with MSVC
- SFTP and SCP use persistent connections
- segfault on bad URL
- variable wrapping when using absolutely huge send buffer sizes
- variable wrapping when using debug callback and the HTTP request wasn’t sent in one go
- SSL connections with NSS done with the multi-interface
- setting a share no longer activates cookies
- Negotiate now works on auth and proxy simultaneously
- support HTTP Digest nonces up to 1023 letters
- resumed ftp upload no longer requires the read callback to return full buffers
- no longer default-appends ;type= on FTP URLs thru proxies
- SSL session id caching
- POST with callback over proxy requiring NTLM or Digest
- Expect: 100-continue flaw on re-used connection with POSTs
- build fix for MSVC 9.0 (VS2008)
- Windows curl builds failed file truncation when retry downloading
- SSL session ID cache memory leak
- bad connection re-use check with environment variable-activated proxy use
- –libcurl now generates a return statement as well
- socklen_t is no longer used in the public includes
- time zone offsets from -1400 to +1400 are now accepted by the date parser
- allows more spaces in WWW/Proxy-Authenticate: headers
- curl-config –libs skips /usr/lib64
- range support for file:// transfers
- libcurl hang with huge POST request and request-body read from callback
- removed extra newlines from many error messages
- improved pipelining
- improved OOM handling for data url encoded HTTP POSTs when read from a file
- test suite could pick wrong tool(s) if more than one existed in the PATH
- curl_multi_fdset() failed to return socket while doing CONNECT over proxy
- curl_multi_remove_handle() on a handle that is in used for a pipeline now break that pipeline
- CURLOPT_COOKIELIST memory leaks
- progress meter/callback during http proxy CONNECT requests
- auth for http proxy when the proxy closes connection after first response





File good bug reports for bugs. Make an effort to really double-check the details, write up repeat recipes, try to repeat others’ reported bugs, fill in more details on the sparsely reported ones. Tell us when you can’t repeat already reported ones. We have so 