2a94293efd
Hauke Duden provided an example program that made the multi interface crash. His example simply used the multi interface and did first one FTP transfer and after completion it used a second easy handle and did another FTP transfer on the same FTP server. This triggered a bug in the "delayed easy handle kill" system that curl uses: when an FTP connection is left alive it must keep an easy handle around internally - only for the purpose of having an easy handle when it later disconnects it. The code assumed that when the easy handle was removed and an internal reference was made, that version could be killed later on when a new easy handle came using the same connection. This was wrong as Hauke's example showed that the removed handle wasn't killed for real until later. This caused a double close attempt => segfault.
54 lines
1.9 KiB
Plaintext
54 lines
1.9 KiB
Plaintext
Curl and libcurl 7.20.1
|
|
|
|
Public curl releases: 115
|
|
Command line options: 136
|
|
curl_easy_setopt() options: 174
|
|
Public functions in libcurl: 58
|
|
Known libcurl bindings: 39
|
|
Contributors: 761
|
|
|
|
This release includes the following changes:
|
|
|
|
o
|
|
|
|
This release includes the following bugfixes:
|
|
|
|
o VMS builder bad behavior when used in a batch job
|
|
o multiple recepients with SMTP
|
|
o fixed the CURL_FORMAT_* defines when building with cmake
|
|
o missing quote in libcurl.m4
|
|
o SMTP: now waits for 250 after the DATA transfer
|
|
o SMTP: use angle brackets in RCPT TO
|
|
o curl --trace-time not using local time
|
|
o off-by-one in the chunked encoding trailer parser
|
|
o superfluous blocking for OpenSSL-based SSL connects and multi interface
|
|
o TFTP upload
|
|
o FTP timeouts after file transferred completely
|
|
o skip poll() on Interix
|
|
o CURLOPT_CERTINFO memory leak
|
|
o sub-second timeouts improvements
|
|
o configure fixes for GSSAPI
|
|
o threaded resolver double free when closing curl handle
|
|
o configure fixes for building with the clang compiler
|
|
o easy interix rate limiting logic
|
|
o curl_multi_remove_handle() caused use after free
|
|
o TFTP improved error codes
|
|
o TFTP fixed TSIZE handling for uploads
|
|
o SSL possible double free when reusing curl handle
|
|
o alarm()-based DNS timeout bug
|
|
o re-used FTP connection multi interface crash
|
|
|
|
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:
|
|
|
|
Steven M. Schweda, Yang Tse, Jack Zhang, Tom Donovan, Martin Hager,
|
|
Daniel Fandrich, Patrick Monnerat, Pat Ray, Wesley Miaw, Ben Greear,
|
|
Ryan Chan, Markus Duft, Andrei Benea, Jacob Moshenko, Daniel Johnson,
|
|
Constantine Sapuntzakis, Douglas Steinwand, Thomas Lopatic, Hauke Duden
|
|
|
|
Thanks! (and sorry if I forgot to mention someone)
|