2004-05-17 12:39:44 +02:00
|
|
|
|
_ _ ____ _
|
|
|
|
|
___| | | | _ \| |
|
|
|
|
|
/ __| | | | |_) | |
|
|
|
|
|
| (__| |_| | _ <| |___
|
1999-12-29 15:20:26 +01:00
|
|
|
|
\___|\___/|_| \_\_____|
|
|
|
|
|
|
2002-06-26 09:16:11 +02:00
|
|
|
|
Changelog
|
2007-05-30 22:04:44 +02:00
|
|
|
|
Daniel S (30 May 2007)
|
|
|
|
|
- Added CURLMOPT_MAXCONNECTS which is a curl_multi_setopt() option for setting
|
|
|
|
|
the maximum size of the connection cache maximum size of the multi handle.
|
|
|
|
|
|
2007-05-27 00:09:08 +02:00
|
|
|
|
Daniel S (27 May 2007)
|
|
|
|
|
- When working with a problem Stefan Becker had, I found an off-by-one buffer
|
|
|
|
|
overwrite in Curl_select(). While fixing it, I also improved its performance
|
|
|
|
|
somewhat by changing calloc to malloc and breaking out of a loop earlier
|
|
|
|
|
(when possible).
|
|
|
|
|
|
2007-05-25 23:56:27 +02:00
|
|
|
|
Daniel S (25 May 2007)
|
|
|
|
|
- Rob Crittenden fixed bug #1705802
|
|
|
|
|
(http://curl.haxx.se/bug/view.cgi?id=1705802), which was filed by Daniel
|
|
|
|
|
Black identifying several FTP-SSL test cases fail when we build libcurl with
|
|
|
|
|
NSS for TLS/SSL. Listed as #42 in KNOWN_BUGS.
|
|
|
|
|
|
2007-05-24 22:58:25 +02:00
|
|
|
|
Daniel S (24 May 2007)
|
2007-05-24 23:11:18 +02:00
|
|
|
|
- Song Ma filed bug report #1724016
|
|
|
|
|
(http://curl.haxx.se/bug/view.cgi?id=1724016) noticing that downloading
|
|
|
|
|
glob-ranges for TFTP was broken in CVS. Fixed now.
|
|
|
|
|
|
2007-05-24 22:58:25 +02:00
|
|
|
|
- 'mytx' in bug report #1723194 (http://curl.haxx.se/bug/view.cgi?id=1723194)
|
|
|
|
|
pointed out that the warnf() function in the curl tool didn't properly deal
|
|
|
|
|
with the cases when excessively long words were used in the string to chop
|
|
|
|
|
up.
|
|
|
|
|
|
2007-05-22 21:51:44 +02:00
|
|
|
|
Daniel S (22 May 2007)
|
|
|
|
|
- Andre Guibert de Bruet fixed a memory leak in the function that verifies the
|
|
|
|
|
peer's name in the SSL certificate when built for OpenSSL. The leak happens
|
|
|
|
|
for libcurls with CURL_DOES_CONVERSIONS enabled that fail to convert the CN
|
2007-05-22 22:46:51 +02:00
|
|
|
|
name from UTF8. He also fixed a leak when PKCS #12 parsing failed.
|
2007-05-22 21:51:44 +02:00
|
|
|
|
|
2007-05-18 12:32:48 +02:00
|
|
|
|
Daniel S (18 May 2007)
|
2007-05-22 21:51:44 +02:00
|
|
|
|
- Feng Tu reported that curl -w did wrong on TFTP transfers in bug report
|
|
|
|
|
#1715394 (http://curl.haxx.se/bug/view.cgi?id=1715394), and the
|
|
|
|
|
transfer-related info "variables" were indeed overwritten with zeroes
|
|
|
|
|
wrongly and have now been adjusted. The upload size still isn't accurate.
|
2007-05-18 12:32:48 +02:00
|
|
|
|
|
2007-05-17 23:40:08 +02:00
|
|
|
|
Daniel S (17 May 2007)
|
|
|
|
|
- Feng Tu pointed out a division by zero error in the TFTP connect timeout
|
2007-05-17 23:41:02 +02:00
|
|
|
|
code for timeouts less than five seconds, and also provided a fix for it.
|
2007-05-18 12:32:48 +02:00
|
|
|
|
Bug report #1715392 (http://curl.haxx.se/bug/view.cgi?id=1715392)
|
2007-05-17 23:40:08 +02:00
|
|
|
|
|
2007-05-17 08:04:44 +02:00
|
|
|
|
Dan F (16 May 2007)
|
|
|
|
|
- Added support for compiling under Minix 3.1.3 using ACK.
|
|
|
|
|
|
2007-05-15 00:03:42 +02:00
|
|
|
|
Dan F (14 May 2007)
|
|
|
|
|
- Added SFTP directory listing test case 613.
|
|
|
|
|
|
2007-05-15 02:28:50 +02:00
|
|
|
|
- Added support for quote commands before a transfer using SFTP and test
|
|
|
|
|
case 614.
|
|
|
|
|
|
|
|
|
|
- Changed the post-quote commands to occur after the transferred file is
|
|
|
|
|
closed.
|
|
|
|
|
|
|
|
|
|
- Allow SFTP quote commands chmod, chown, chgrp to set a value of 0.
|
|
|
|
|
|
2007-05-09 20:24:27 +02:00
|
|
|
|
Dan F (9 May 2007)
|
|
|
|
|
- Kristian Gunstone fixed a problem where overwriting an uploaded file with
|
|
|
|
|
sftp didn't truncate it first, which would corrupt the file if the new
|
|
|
|
|
file was shorter than the old.
|
2007-04-25 22:20:15 +02:00
|
|
|
|
|
2007-05-09 00:14:30 +02:00
|
|
|
|
Dan F (8 May 2007)
|
|
|
|
|
- Added FTPS test cases 406 and 407
|
|
|
|
|
|
2007-05-08 13:34:31 +02:00
|
|
|
|
Daniel S (8 May 2007)
|
|
|
|
|
- CURLE_FTP_COULDNT_STOR_FILE is now known as CURLE_UPLOAD_FAILED. This is
|
|
|
|
|
because I just made SCP uploads return this value if the file size of
|
|
|
|
|
the upload file isn't given with CURLOPT_INFILESIZE*. Docs updated to
|
|
|
|
|
reflect this news, and a define for the old name was added to the public
|
|
|
|
|
header file.
|
|
|
|
|
|
2007-05-07 09:07:55 +02:00
|
|
|
|
Daniel S (7 May 2007)
|
|
|
|
|
- James Bursa fixed a bug in the multi handle code that made the connection
|
|
|
|
|
cache grow a bit too much, beyond the normal 4 * easy_handles.
|
|
|
|
|
|
2007-05-02 15:47:56 +02:00
|
|
|
|
Daniel S (2 May 2007)
|
2007-05-02 22:42:02 +02:00
|
|
|
|
- Anders Gustafsson remarked that requiring CURLOPT_HTTP_VERSION set to 1.0
|
|
|
|
|
when CURLOPT_HTTP200ALIASES is used to avoid the problem mentioned below is
|
|
|
|
|
not very nice if the client wants to be able to use _either_ a HTTP 1.1
|
|
|
|
|
server or one within the aliases list... so starting now, libcurl will
|
|
|
|
|
simply consider 200-alias matches the to be HTTP 1.0 compliant.
|
|
|
|
|
|
2007-05-02 19:35:47 +02:00
|
|
|
|
- Tobias Rundstr<74>m reported a problem they experienced with xmms2 and recent
|
|
|
|
|
libcurls, which turned out to be the 25-nov-2006 change which treats HTTP
|
|
|
|
|
responses without Content-Length or chunked encoding as without bodies. We
|
|
|
|
|
now added the conditional that the above mentioned response is only without
|
|
|
|
|
body if the response is HTTP 1.1.
|
|
|
|
|
|
2007-05-02 15:52:38 +02:00
|
|
|
|
- Jeff Pohlmeyer improved the hiperfifo.c example to use the
|
|
|
|
|
CURLMOPT_TIMERFUNCTION callback option.
|
|
|
|
|
|
2007-05-02 15:47:56 +02:00
|
|
|
|
- Set the timeout for easy handles to expire really soon after addition or
|
|
|
|
|
when CURLM_CALL_MULTI_PERFORM is returned from curl_multi_socket*/perform,
|
|
|
|
|
to make applications using only curl_multi_socket() to properly function
|
|
|
|
|
when adding easy handles "on the fly". Bug report and test app provided by
|
|
|
|
|
Michael Wallner.
|
|
|
|
|
|
2007-04-30 22:15:33 +02:00
|
|
|
|
Dan F (30 April 2007)
|
|
|
|
|
- Improved the test harness to allow running test servers on other than
|
|
|
|
|
the default port numbers, allowing more than one test suite to run
|
|
|
|
|
simultaneously on the same host.
|
|
|
|
|
|
2007-04-28 22:27:07 +02:00
|
|
|
|
Daniel S (28 April 2007)
|
2007-04-28 23:01:30 +02:00
|
|
|
|
- Peter O'Gorman fixed libcurl to not init GnuTLS as early as we did before,
|
|
|
|
|
since it then inits libgcrypt and libgcrypt is being evil and EXITS the
|
|
|
|
|
application if it fails to get a fine random seed. That's really not a nice
|
|
|
|
|
thing to do by a library.
|
|
|
|
|
|
2007-04-28 22:27:07 +02:00
|
|
|
|
- Frank Hempel fixed a curl_easy_duphandle() crash on a handle that had
|
|
|
|
|
been removed from a multi handle, and then fixed another flaw that prevented
|
|
|
|
|
curl_easy_duphandle() to work even after the first fix - the handle was
|
|
|
|
|
still marked as using the multi interface.
|
|
|
|
|
|
2007-04-26 23:30:29 +02:00
|
|
|
|
Daniel S (26 April 2007)
|
|
|
|
|
- Peter O'Gorman found a problem with SCP downloads when the downloaded file
|
|
|
|
|
was 16385 bytes (16K+1) and it turned out we didn't properly always "suck
|
|
|
|
|
out" all data from libssh2. The effect being that libcurl would hang on the
|
|
|
|
|
socket waiting for data when libssh2 had in fact already read it all...
|
|
|
|
|
|
2007-04-26 01:18:52 +02:00
|
|
|
|
Dan F (25 April 2007)
|
|
|
|
|
- Added support in runtests.pl for "!n" test numbers to disable individual
|
|
|
|
|
tests. Changed -t to only keep log files around when -k is specified,
|
|
|
|
|
to have the same behaviour as without -t.
|
|
|
|
|
|
2007-04-25 22:20:15 +02:00
|
|
|
|
Daniel S (25 April 2007)
|
|
|
|
|
- Sonia Subramanian brought our attention to a problem that happens if you set
|
|
|
|
|
the CURLOPT_RESUME_FROM or CURLOPT_RANGE options and an existing connection
|
|
|
|
|
in the connection cache is closed to make room for the new one when you call
|
|
|
|
|
curl_easy_perform(). It would then wrongly free range-related data in the
|
|
|
|
|
connection close funtion.
|
2002-06-26 09:16:11 +02:00
|
|
|
|
|
2007-04-25 05:00:10 +02:00
|
|
|
|
Yang Tse (25 April 2007)
|
|
|
|
|
- Steve Little fixed compilation on VMS 64-bit mode
|
|
|
|
|
|
2007-04-24 12:18:06 +02:00
|
|
|
|
Daniel S (24 April 2007)
|
|
|
|
|
- Robert Iakobashvili made the 'master_buffer' get allocated first once it is
|
|
|
|
|
can/will be used as it then makes the common cases save 16KB of data for each
|
|
|
|
|
easy handle that isn't used for pipelining.
|
|
|
|
|
|
2007-04-24 01:00:38 +02:00
|
|
|
|
Dan F (23 April 2007)
|
|
|
|
|
- Added <postcheck> support to the test harness.
|
|
|
|
|
|
|
|
|
|
- Added tests 610-612 to test more SFTP post-quote commands.
|
|
|
|
|
|
2007-04-22 11:31:27 +02:00
|
|
|
|
Daniel S (22 April 2007)
|
|
|
|
|
- Song Ma's warning if -r/--range is given with a "bad" range, also noted in
|
|
|
|
|
the man page now.
|
|
|
|
|
|
|
|
|
|
- Daniel Black filed bug #1705177
|
|
|
|
|
(http://curl.haxx.se/bug/view.cgi?id=1705177) where --without-ssl
|
|
|
|
|
--with-gnutl outputs a warning about SSL not being enabled even though GnuTLS
|
|
|
|
|
was found and used.
|
|
|
|
|
|
2007-04-21 23:32:31 +02:00
|
|
|
|
Daniel S (21 April 2007)
|
|
|
|
|
- Daniel Black filed bug #1704675
|
|
|
|
|
(http://curl.haxx.se/bug/view.cgi?id=1704675) identifying a double-free
|
|
|
|
|
problem in the SSL-dealing layer, telling GnuTLS to free NULL credentials on
|
|
|
|
|
closedown after a failure and a bad #ifdef for NSS when closing down SSL.
|
|
|
|
|
|
2007-04-20 02:07:19 +02:00
|
|
|
|
Yang Tse (20 April 2007)
|
|
|
|
|
- Save one call to curlx_tvnow(), which calls gettimeofday(), in each of
|
|
|
|
|
Curl_socket_ready(), Curl_poll() and Curl_select() when these are called
|
|
|
|
|
with a zero timeout or a timeout value indicating a blocking call should
|
|
|
|
|
be performed.
|
|
|
|
|
|
2007-04-18 22:02:41 +02:00
|
|
|
|
Daniel S (18 April 2007)
|
2007-04-18 22:11:47 +02:00
|
|
|
|
- James Housley made SFTP uploads use libssh2's non-blocking API
|
|
|
|
|
|
2007-04-18 22:02:41 +02:00
|
|
|
|
- Prevent the internal progress meter from updating more frequently than once
|
|
|
|
|
per second.
|
|
|
|
|
|
2007-04-18 08:30:28 +02:00
|
|
|
|
Dan F (17 April 2007)
|
|
|
|
|
- Added test cases 296, 297 and 298 to test --ftp-method handling
|
|
|
|
|
|
2007-04-16 18:34:08 +02:00
|
|
|
|
Daniel S (16 April 2007)
|
|
|
|
|
- Robert Iakobashvil added curl_multi_socket_action() to libcurl, which is a
|
|
|
|
|
function that deprecates the curl_multi_socket() function. Using the new
|
|
|
|
|
function the application tell libcurl what action that was found in the
|
|
|
|
|
socket that it passes in. This gives a significant performance boost as it
|
|
|
|
|
allows libcurl to avoid a call to poll()/select() for every call to
|
|
|
|
|
curl_multi_socket*().
|
|
|
|
|
|
2007-05-06 10:14:42 +02:00
|
|
|
|
I added a define in the public curl/multi.h header file that will make your
|
|
|
|
|
existing application automatically use curl_multi_socket_action() instead of
|
|
|
|
|
curl_multi_socket() when you recompile. But of course you'll get better
|
|
|
|
|
performance if you adjust your code manually and actually pass in the
|
|
|
|
|
correct action bitmask to this function.
|
|
|
|
|
|
2007-04-16 13:55:43 +02:00
|
|
|
|
Daniel S (14 April 2007)
|
|
|
|
|
- Jay Austin added "DH PARAMETERS" to the stunnel.pem certificate for the test
|
|
|
|
|
suite to make stunnel run better in some (most?) environments.
|
|
|
|
|
|
2007-04-13 22:59:15 +02:00
|
|
|
|
Dan F (13 April 2007)
|
|
|
|
|
- Added test cases 294 and 295 to test --ftp-account handling
|
|
|
|
|
|
|
|
|
|
- Improved handling of out of memory in ftp.
|
|
|
|
|
|
2007-04-13 13:35:19 +02:00
|
|
|
|
Yang Tse (13 April 2007)
|
|
|
|
|
- Fix test case 534 which started to fail 2007-04-13 due to the existance
|
|
|
|
|
of a new host on the net with the same silly domain the test was using
|
|
|
|
|
for a host which was supposed not to exist.
|
|
|
|
|
|
2007-04-12 22:09:19 +02:00
|
|
|
|
Daniel S (12 April 2007)
|
|
|
|
|
- Song Ma found a memory leak in the if2ip code if you pass in an interface
|
|
|
|
|
name longer than the name field of the ifreq struct (typically 6 bytes), as
|
|
|
|
|
then it wouldn't close the used dummy socket. Bug #1698974
|
|
|
|
|
(http://curl.haxx.se/bug/view.cgi?id=1698974)
|
|
|
|
|
|
2007-04-11 15:12:33 +02:00
|
|
|
|
Version 7.16.2 (11 April 2007)
|
|
|
|
|
|
2007-04-10 21:09:10 +02:00
|
|
|
|
Yang Tse (10 April 2007)
|
2007-04-10 22:46:40 +02:00
|
|
|
|
- Ravi Pratap provided some fixes for HTTP pipelining
|
|
|
|
|
|
2007-04-10 21:09:10 +02:00
|
|
|
|
- configure script will ignore --enable-sspi option for non-native Windows.
|
|
|
|
|
|
2007-04-09 00:44:21 +02:00
|
|
|
|
Daniel S (9 April 2007)
|
|
|
|
|
- Nick Zitzmann did ssh.c cleanups
|
|
|
|
|
|
2007-04-03 22:54:37 +02:00
|
|
|
|
Daniel S (3 April 2007)
|
|
|
|
|
- Rob Jones fixed better #ifdef'ing for a bunch of #include lines.
|
|
|
|
|
|
2007-04-02 23:24:05 +02:00
|
|
|
|
Daniel S (2 April 2007)
|
|
|
|
|
- Nick Zitzmann made the CURLOPT_POSTQUOTE option work for SFTP as well. The
|
|
|
|
|
accepted commands are as follows:
|
|
|
|
|
|
|
|
|
|
chgrp (gid) (path)
|
|
|
|
|
Changes the group ID of the file or directory at (path) to (gid). (gid)
|
|
|
|
|
must be a number.
|
|
|
|
|
|
|
|
|
|
chmod (perms) (path)
|
|
|
|
|
Changes the permissions of the file or directory at (path) to
|
|
|
|
|
(perms). (perms) must be a number in the format used by the chmod Unix
|
|
|
|
|
command.
|
|
|
|
|
|
|
|
|
|
chown (uid) (path)
|
|
|
|
|
Changes the user ID of the file or directory at (path) to (uid). (uid)
|
|
|
|
|
must be a number.
|
|
|
|
|
|
|
|
|
|
ln (source) (dest)
|
|
|
|
|
Creates a symbolic link at (dest) that points to the file located at
|
|
|
|
|
(source).
|
|
|
|
|
|
|
|
|
|
mkdir (path)
|
|
|
|
|
Creates a new directory at (path).
|
|
|
|
|
|
|
|
|
|
rename (source) (dest)
|
|
|
|
|
Moves the file or directory at (source) to (dest).
|
|
|
|
|
|
|
|
|
|
rm (path)
|
|
|
|
|
Deletes the file located at (path).
|
|
|
|
|
|
|
|
|
|
rmdir (path)
|
|
|
|
|
Deletes the directory located at (path). This command will raise an error
|
|
|
|
|
if the directory is not empty.
|
|
|
|
|
|
|
|
|
|
symlink (source) (dest)
|
|
|
|
|
Same as ln.
|
|
|
|
|
|
2007-04-01 09:51:30 +02:00
|
|
|
|
Daniel S (1 April 2007)
|
2007-04-01 10:24:23 +02:00
|
|
|
|
- Robert Iakobashvili made curl_multi_remove_handle() a lot faster when many
|
|
|
|
|
easy handles are added to a multi handle, by avoiding the looping over all
|
|
|
|
|
the handles to find which one to remove.
|
|
|
|
|
|
2007-04-01 09:51:30 +02:00
|
|
|
|
- Matt Kraai provided a patch that makes curl build on QNX 6 fine again.
|
|
|
|
|
|
2007-03-31 22:47:23 +02:00
|
|
|
|
Daniel S (31 March 2007)
|
|
|
|
|
- Fixed several minor issues detected by the coverity.com scanner.
|
|
|
|
|
|
|
|
|
|
- "Pixel" fixed a problem that appeared when you used -f with user+password
|
|
|
|
|
embedded in the URL.
|
|
|
|
|
|
2007-03-30 03:13:47 +02:00
|
|
|
|
Dan F (29 March 2007)
|
|
|
|
|
- Don't tear down the ftp connection if the maximum filesize was exceeded
|
|
|
|
|
and added tests 290 and 291 to check.
|
|
|
|
|
|
|
|
|
|
- Added ftps upload and SSL required tests 401 and 402.
|
|
|
|
|
|
|
|
|
|
- Send an EOF message before closing an SCP channel, as recommended by
|
|
|
|
|
RFC4254. Enable libssh2 tracing when ssh debugging is turned on.
|
|
|
|
|
|
2007-03-27 01:26:07 +02:00
|
|
|
|
Yang Tse (27 March 2007)
|
2007-03-27 01:23:46 +02:00
|
|
|
|
- Internal function Curl_select() renamed to Curl_socket_ready()
|
|
|
|
|
|
2007-03-27 20:15:26 +02:00
|
|
|
|
New Internal wrapper function Curl_select() around select (2), it
|
|
|
|
|
uses poll() when a fine poll() is available, so now libcurl can be
|
|
|
|
|
built without select() support at all if a fine poll() is available.
|
|
|
|
|
|
2007-03-25 10:16:16 +02:00
|
|
|
|
Daniel S (25 March 2007)
|
|
|
|
|
- Daniel Johnson fixed multi code to traverse the easy handle list properly.
|
|
|
|
|
A left-over bug from the February 21 fix.
|
|
|
|
|
|
2007-03-23 18:59:40 +01:00
|
|
|
|
Dan F (23 March 2007)
|
|
|
|
|
- Added --pubkey option to curl and made --key also work for SCP/SFTP,
|
|
|
|
|
plus made --pass work on an SSH private key as well.
|
|
|
|
|
|
2007-03-24 02:01:28 +01:00
|
|
|
|
- Changed the test harness to attempt to gracefully shut down servers
|
|
|
|
|
before resorting to the kill -9 hammer.
|
|
|
|
|
|
|
|
|
|
- Added test harness infrastructure to support scp/sftp tests, using
|
|
|
|
|
OpenSSH as the server.
|
|
|
|
|
|
2007-03-24 03:15:20 +01:00
|
|
|
|
- Fixed a memory leak when specifying a proxy with a file: URL.
|
|
|
|
|
|
2007-03-20 21:00:40 +01:00
|
|
|
|
Yang Tse (20 March 2007)
|
|
|
|
|
- Fixed: When a signal was caught awaiting for an event using Curl_select()
|
|
|
|
|
or Curl_poll() with a non-zero timeout both functions would restart the
|
|
|
|
|
specified timeout. This could even lead to the extreme case that if a
|
|
|
|
|
signal arrived with a frecuency lower to the specified timeout neither
|
|
|
|
|
function would ever exit.
|
|
|
|
|
|
|
|
|
|
Added experimental symbol definition check CURL_ACKNOWLEDGE_EINTR in
|
|
|
|
|
Curl_select() and Curl_poll(). When compiled with CURL_ACKNOWLEDGE_EINTR
|
|
|
|
|
defined both functions will return as soon as a signal is caught. Use it
|
|
|
|
|
at your own risk, all calls to these functions in the library should be
|
|
|
|
|
revisited and checked before fully supporting this feature.
|
|
|
|
|
|
2007-03-19 13:02:33 +01:00
|
|
|
|
Yang Tse (19 March 2007)
|
|
|
|
|
- Bryan Henderson fixed the progress function so that it can get called more
|
|
|
|
|
frequently allowing same calling frecuency for the client progress callback.
|
|
|
|
|
|
2007-03-15 23:29:10 +01:00
|
|
|
|
Dan F (15 March 2007)
|
|
|
|
|
- Various memory leaks plugged and NULL pointer fixes made in the ssh code.
|
|
|
|
|
|
2007-03-15 23:05:01 +01:00
|
|
|
|
Daniel (15 March 2007)
|
|
|
|
|
- Nick made the curl tool accept globbing ranges that only is one number, i.e
|
|
|
|
|
you can now use [1-1] without curl complaining.
|
|
|
|
|
|
2007-03-10 13:11:21 +01:00
|
|
|
|
Daniel (10 March 2007)
|
2007-03-10 23:51:20 +01:00
|
|
|
|
- Eygene Ryabinkin:
|
|
|
|
|
|
|
|
|
|
The problem is the following: when we're calling Curl_done and it decides to
|
|
|
|
|
keep the connection opened ('left intact'), then the caller is not notified
|
|
|
|
|
that the connection was done via the NULLifying of the pointer, so some easy
|
|
|
|
|
handle is keeping the pointer to this connection.
|
|
|
|
|
|
|
|
|
|
Later ConnectionExists can select such connection for reuse even if we're
|
|
|
|
|
not pipelining: pipeLen is zero, so the (pipeLen > 0 && !canPipeline) is
|
|
|
|
|
false and we can reuse this connection for another easy handle. But thus the
|
|
|
|
|
connection will be shared between two easy handles if the handle that wants
|
|
|
|
|
to take the ownership is not the same as was not notified of the connection
|
|
|
|
|
was done in Curl_done. And when some of these easy handles will get their
|
|
|
|
|
connection really freed the another one will still keep the pointer.
|
|
|
|
|
|
|
|
|
|
My fix was rather trivial: I just added the NULLification to the 'else'
|
|
|
|
|
branch in the Curl_done. My tests with Git and ElectricFence showed no
|
|
|
|
|
problems both for HTTP pulling and cloning. Repository size is about 250 Mb,
|
|
|
|
|
so it was a considerable amount of Curl's work.
|
|
|
|
|
|
2007-03-10 00:39:42 +01:00
|
|
|
|
Dan F (9 March 2007)
|
|
|
|
|
- Updated the test harness to add a new "crypto" feature check and updated the
|
|
|
|
|
appropriate test case to use it. For now, this is treated the same as the
|
|
|
|
|
"SSL" feature because curl doesn't list it separately.
|
|
|
|
|
|
2007-03-09 22:51:38 +01:00
|
|
|
|
Daniel (9 March 2007)
|
2007-03-09 23:48:07 +01:00
|
|
|
|
- Robert Iakobashvili fixed CURLOPT_INTERFACE for IPv6.
|
|
|
|
|
|
2007-03-09 23:26:59 +01:00
|
|
|
|
- Robert A. Monat improved the maketgz and VC6/8 generating to set the correct
|
|
|
|
|
machine type too.
|
|
|
|
|
|
2007-03-09 22:51:38 +01:00
|
|
|
|
- Justin Fletcher fixed a file descriptor leak in the curl tool when trying to
|
|
|
|
|
upload a file it couldn't open. Bug #1676581
|
|
|
|
|
(http://curl.haxx.se/bug/view.cgi?id=1676581)
|
|
|
|
|
|
2007-03-09 22:01:39 +01:00
|
|
|
|
Dan F (9 March 2007)
|
|
|
|
|
- Updated the test harness to check for protocol support before running each
|
|
|
|
|
test, fixing KNOWN_BUGS #11.
|
|
|
|
|
|
2007-03-08 20:50:32 +01:00
|
|
|
|
Dan F (7 March 2007)
|
|
|
|
|
- Reintroduced (after a 3 year hiatus) an FTPS test case (400) into the test
|
|
|
|
|
harness. It is very limited as it supports only ftps:// URLs with
|
|
|
|
|
--ftp-ssl-control specified, which implicitly encrypts the control
|
|
|
|
|
channel but not the data channels. That allows stunnel to be used with
|
|
|
|
|
an unmodified ftp server in exactly the same way that the test https
|
|
|
|
|
server is set up.
|
|
|
|
|
|
2007-03-07 23:42:05 +01:00
|
|
|
|
Dan F (7 March 2007)
|
|
|
|
|
- Honour --ftp-ssl-control on ftps:// URLs to allow encrypted control and
|
|
|
|
|
unencrypted data connections.
|
|
|
|
|
|
|
|
|
|
Dan F (6 March 2007)
|
|
|
|
|
- Fixed a couple of improper pointer uses detected by valgrind in test
|
|
|
|
|
cases 181 & 216.
|
|
|
|
|
|
2007-03-02 23:42:43 +01:00
|
|
|
|
Daniel (2 March 2007)
|
|
|
|
|
- Robert A. Monat and Shmulik Regev helped out to fix the new */Makefile.vc8
|
|
|
|
|
makefiles that are included in the source release archives, generated from
|
|
|
|
|
the Makefile.vc6 files by the maketgz script. I also modified the root
|
|
|
|
|
Makefile to have a VC variable that defaults to vc6 but can be overridden to
|
|
|
|
|
allow it to be used for vc8 as well. Like this:
|
|
|
|
|
|
|
|
|
|
nmake VC=vc8 vc
|
|
|
|
|
|
2007-02-27 23:12:15 +01:00
|
|
|
|
Daniel (27 February 2007)
|
|
|
|
|
- Hang Kin Lau found and fixed: When I use libcurl to connect to an https
|
|
|
|
|
server through a proxy and have the remote https server port set using the
|
|
|
|
|
CURLOPT_PORT option, protocol gets reset to http from https after the first
|
|
|
|
|
request.
|
|
|
|
|
|
|
|
|
|
User defined URL was modified internally by libcurl and subsequent reuse of
|
|
|
|
|
the easy handle may lead to connection using a different protocol (if not
|
|
|
|
|
originally http).
|
|
|
|
|
|
|
|
|
|
I found that libcurl hardcoded the protocol to "http" when it tries to
|
|
|
|
|
regenerate the URL if CURLOPT_PORT is set. I tried to fix the problem as
|
|
|
|
|
follows and it's working fine so far
|
|
|
|
|
|
2007-02-25 12:38:13 +01:00
|
|
|
|
Daniel (25 February 2007)
|
|
|
|
|
- Adam D. Moss made the HTTP CONNECT procedure less blocking when used from
|
|
|
|
|
the multi interface. Note that it still does a part of the connection in a
|
|
|
|
|
blocking manner.
|
|
|
|
|
|
2007-02-23 10:48:01 +01:00
|
|
|
|
Daniel (23 February 2007)
|
|
|
|
|
- Added warning outputs if the command line uses more than one of the options
|
|
|
|
|
-v, --trace and --trace-ascii, since it could really confuse the user.
|
|
|
|
|
Clarified this fact in the man page.
|
|
|
|
|
|
2007-02-21 22:59:40 +01:00
|
|
|
|
Daniel (21 February 2007)
|
|
|
|
|
- Ravi Pratap provided work on libcurl making pipelining more robust and
|
|
|
|
|
fixing some bugs:
|
|
|
|
|
o Don't mix GET and POST requests in a pipeline
|
|
|
|
|
o Fix the order in which requests are dispatched from the pipeline
|
|
|
|
|
o Fixed several curl bugs with pipelining when the server is returning
|
|
|
|
|
chunked encoding:
|
|
|
|
|
* Added states to chunked parsing for final CRLF
|
|
|
|
|
* Rewind buffer after parsing chunk with data remaining
|
|
|
|
|
* Moved chunked header initializing to a spot just before receiving
|
|
|
|
|
headers
|
|
|
|
|
|
|
|
|
|
Daniel (20 February 2007)
|
|
|
|
|
- Linus Nielsen Feltzing changed the CURLOPT_FTP_SSL_CCC option to handle
|
|
|
|
|
active and passive CCC shutdown and added the --ftp-ssl-ccc-mode command
|
|
|
|
|
line option.
|
|
|
|
|
|
2007-02-19 12:53:54 +01:00
|
|
|
|
Daniel (19 February 2007)
|
2007-02-19 13:37:04 +01:00
|
|
|
|
- Ian Turner fixed the libcurl.m4 macro's support for --with-libcurl.
|
|
|
|
|
|
2007-02-19 13:20:32 +01:00
|
|
|
|
- Shmulik Regev found a memory leak in re-used HTTPS connections, at least
|
|
|
|
|
when the multi interface was used.
|
|
|
|
|
|
2007-02-19 12:53:54 +01:00
|
|
|
|
- Robson Braga Araujo made passive FTP transfers work with SOCKS (both 4 and
|
|
|
|
|
5).
|
|
|
|
|
|
2007-02-19 00:02:42 +01:00
|
|
|
|
Daniel (18 February 2007)
|
|
|
|
|
- Jeff Pohlmeyer identified two problems: first a rather obscure problem with
|
|
|
|
|
the multi interface and connection re-use that could make a
|
|
|
|
|
curl_multi_remove_handle() ruin a pointer in another handle.
|
|
|
|
|
|
|
|
|
|
The second problem was less of an actual problem but more of minor quirk:
|
|
|
|
|
the re-using of connections wasn't properly checking if the connection was
|
|
|
|
|
marked for closure.
|
|
|
|
|
|
2007-02-16 16:37:05 +01:00
|
|
|
|
Daniel (16 February 2007)
|
|
|
|
|
- Duncan Mac-Vicar Prett and Michal Marek reported problems with resetting
|
|
|
|
|
CURLOPT_RANGE back to no range on an easy handle when using FTP.
|
|
|
|
|
|
2007-02-14 19:13:16 +01:00
|
|
|
|
Dan F (14 February 2007)
|
|
|
|
|
- Fixed curl-config --libs so it doesn't list unnecessary libraries (and
|
|
|
|
|
therefore introduce unnecessary dependencies) when it's not needed.
|
|
|
|
|
Also, don't bother adding a library path of /usr/lib
|
|
|
|
|
|
2007-02-13 22:21:44 +01:00
|
|
|
|
Daniel (13 February 2007)
|
2007-02-13 23:50:16 +01:00
|
|
|
|
- The default password for anonymous FTP connections is now changed to be
|
|
|
|
|
"ftp@example.com".
|
|
|
|
|
|
2007-02-13 22:21:44 +01:00
|
|
|
|
- Robert A. Monat made libcurl build fine with VC2005 - it doesn't have
|
|
|
|
|
gmtime_r() like the older VC versions. He also made use of some machine-
|
|
|
|
|
specific defines to differentiate the "OS" define.
|
|
|
|
|
|
2007-02-12 13:15:41 +01:00
|
|
|
|
Daniel (12 February 2007)
|
2007-02-12 23:32:37 +01:00
|
|
|
|
- Rob Crittenden added support for NSS (Network Security Service) for the
|
|
|
|
|
SSL/TLS layer. http://www.mozilla.org/projects/security/pki/nss/
|
|
|
|
|
|
|
|
|
|
This is the fourth supported library for TLS/SSL that libcurl supports!
|
|
|
|
|
|
2007-02-12 22:13:47 +01:00
|
|
|
|
- Shmulik Regev fixed so that the final CRLF of HTTP response headers are sent
|
|
|
|
|
to the debug callback.
|
|
|
|
|
|
|
|
|
|
- Shmulik Regev added CURLOPT_HTTP_CONTENT_DECODING and
|
|
|
|
|
CURLOPT_HTTP_TRANSFER_DECODING that if set to zero will disable libcurl's
|
|
|
|
|
internal decoding of content or transfer encoded content. This may be
|
|
|
|
|
preferable in cases where you use libcurl for proxy purposes or similar. The
|
|
|
|
|
command line tool got a --raw option to disable both at once.
|
2007-02-12 23:41:43 +01:00
|
|
|
|
|
|
|
|
|
- release tarballs made with maketgz will from now on have a LIBCURL_TIMESTAMP
|
|
|
|
|
define set to hold the exact date and time of when the tarball was built, as
|
|
|
|
|
a human readable string using the UTC time zone.
|
2007-02-12 22:13:47 +01:00
|
|
|
|
|
2007-02-12 13:15:41 +01:00
|
|
|
|
- Jeff Pohlmeyer fixed a flaw in curl_multi_add_handle() when adding a handle
|
|
|
|
|
that has an easy handle present in the "closure" list pending closure.
|
|
|
|
|
|
2007-02-06 17:07:15 +01:00
|
|
|
|
Daniel (6 February 2007)
|
|
|
|
|
- Regular file downloads wiht SFTP and SCP are now done using the non-blocking
|
|
|
|
|
API of libssh2, if the libssh2 headers seem to support them. This will make
|
|
|
|
|
SCP and SFTP much more responsive and better libcurl citizens when used with
|
|
|
|
|
the multi interface etc.
|
|
|
|
|
|
2007-02-05 23:51:32 +01:00
|
|
|
|
Daniel (5 February 2007)
|
|
|
|
|
- Michael Wallner added support for CURLOPT_TIMEOUT_MS and
|
|
|
|
|
CURLOPT_CONNECTTIMEOUT_MS that, as their names suggest, do the timeouts with
|
|
|
|
|
millisecond resolution. The only restriction to that is the alarm()
|
|
|
|
|
(sometimes) used to abort name resolves as that uses full seconds. I fixed
|
|
|
|
|
the FTP response timeout part of the patch.
|
|
|
|
|
|
|
|
|
|
Internally we now count and keep the timeouts in milliseconds but it also
|
|
|
|
|
means we multiply set timeouts with 1000. The effect of this is that no
|
|
|
|
|
timeout can be set to more than 2^31 milliseconds (on 32 bit systems), which
|
|
|
|
|
equals 24.86 days. We probably couldn't before either since the code did
|
|
|
|
|
*1000 on the timeout values on several places already.
|
|
|
|
|
|
2007-02-03 10:34:03 +01:00
|
|
|
|
Daniel (3 February 2007)
|
|
|
|
|
- Yang Tse fixed the cookie expiry date in several test cases that started to
|
|
|
|
|
fail since they used "1 feb 2007"...
|
|
|
|
|
|
|
|
|
|
- Manfred Schwarb reported that socks5 support was broken and help us pinpoint
|
|
|
|
|
the problem. The code now tries harder to use httproxy and proxy where
|
|
|
|
|
apppropriate, as not all proxies are HTTP...
|
|
|
|
|
|
2007-01-29 15:53:01 +01:00
|
|
|
|
Version 7.16.1 (29 January 2007)
|
|
|
|
|
|
2007-01-29 10:26:36 +01:00
|
|
|
|
Daniel (29 January 2007)
|
|
|
|
|
- Michael Wallner reported that when doing a CONNECT with a custom User-Agent
|
|
|
|
|
header, you got _two_ User-Agent headers in the CONNECT request...! Added
|
|
|
|
|
test case 287 to verify the fix.
|
|
|
|
|
|
2007-01-28 00:02:17 +01:00
|
|
|
|
Daniel (28 January 2007)
|
2007-01-28 13:58:13 +01:00
|
|
|
|
- curl_easy_reset() now resets the CA bundle path correctly.
|
|
|
|
|
|
2007-01-28 00:02:17 +01:00
|
|
|
|
- David McCreedy fixed the Curl command line tool for HTTP on non-ASCII
|
|
|
|
|
platforms.
|
|
|
|
|
|
2007-01-25 16:58:00 +01:00
|
|
|
|
Daniel (25 January 2007)
|
|
|
|
|
- Added the --libcurl [file] option to curl. Append this option to any
|
|
|
|
|
ordinary curl command line, and you will get a libcurl-using source code
|
|
|
|
|
written to the file that does the equivalent operation of what your command
|
|
|
|
|
line operation does!
|
|
|
|
|
|
2007-01-25 02:35:43 +01:00
|
|
|
|
Dan F (24 January 2007)
|
|
|
|
|
- Fixed a dangling pointer problem that prevented the http_proxy environment
|
|
|
|
|
variable from being properly used in many cases (and caused test case 63
|
|
|
|
|
to fail).
|
|
|
|
|
|
2007-01-23 23:57:42 +01:00
|
|
|
|
Daniel (23 January 2007)
|
|
|
|
|
- David McCreedy did NTLM changes mainly for non-ASCII platforms:
|
|
|
|
|
|
|
|
|
|
#1
|
|
|
|
|
There's a compilation error in http_ntlm.c if USE_NTLM2SESSION is NOT
|
|
|
|
|
defined. I noticed this while testing various configurations. Line 867 of
|
|
|
|
|
the current http_ntlm.c is a closing bracket for an if/else pair that only
|
|
|
|
|
gets compiled in if USE_NTLM2SESSION is defined. But this closing bracket
|
|
|
|
|
wasn't in an #ifdef so the code fails to compile unless USE_NTLM2SESSION was
|
|
|
|
|
defined. Lines 198 and 140 of my patch wraps that closing bracket in an
|
|
|
|
|
#ifdef USE_NTLM2SESSION.
|
|
|
|
|
|
|
|
|
|
#2
|
|
|
|
|
I noticed several picky compiler warnings when DEBUG_ME is defined. I've
|
|
|
|
|
fixed them with casting. By the way, DEBUG_ME was a huge help in
|
|
|
|
|
understanding this code.
|
|
|
|
|
|
|
|
|
|
#3
|
|
|
|
|
Hopefully the last non-ASCII conversion patch for libcurl in a while. I
|
|
|
|
|
changed the "NTLMSSP" literal to hex since this signature must always be in
|
|
|
|
|
ASCII.
|
|
|
|
|
|
|
|
|
|
Conversion code was strategically added where necessary. And the
|
|
|
|
|
Curl_base64_encode calls were changed so the binary "blobs" http_ntlm.c
|
|
|
|
|
creates are NOT translated on non-ASCII platforms.
|
|
|
|
|
|
2007-01-23 03:25:56 +01:00
|
|
|
|
Dan F (22 January 2007)
|
|
|
|
|
- Converted (most of) the test data files into genuine XML. A handful still
|
|
|
|
|
are not, due mainly to the lack of support for XML character entities
|
|
|
|
|
(e.g. & => & ). This will make it easier to validate test files using
|
|
|
|
|
tools like xmllint, as well as to edit and view them using XML tools.
|
|
|
|
|
|
2007-01-16 23:22:10 +01:00
|
|
|
|
Daniel (16 January 2007)
|
|
|
|
|
- Armel Asselin improved libcurl to behave a lot better when an easy handle
|
|
|
|
|
doing an FTP transfer is removed from a multi handle before completion. The
|
|
|
|
|
fix also fixed the "alive counter" to be correct on "premature removal" for
|
|
|
|
|
all protocols.
|
|
|
|
|
|
2007-01-16 19:33:25 +01:00
|
|
|
|
Dan F (16 January 2007)
|
|
|
|
|
- Fixed a small memory leak in tftp uploads discovered by curl's memory leak
|
|
|
|
|
detector. Also changed tftp downloads to URL-unescape the downloaded
|
|
|
|
|
file name.
|
|
|
|
|
|
2007-01-14 00:33:50 +01:00
|
|
|
|
Daniel (14 January 2007)
|
2007-01-14 15:57:51 +01:00
|
|
|
|
- David McCreedy provided libcurl changes for doing HTTP communication on
|
|
|
|
|
non-ASCII platforms. It does add some complexity, most notably with more
|
|
|
|
|
#ifdefs, but I want to see this supported added and I can't see how we can
|
|
|
|
|
add it without the extra stuff added.
|
|
|
|
|
|
2007-01-14 00:33:50 +01:00
|
|
|
|
- Setting CURLOPT_COOKIELIST to "ALL" when no cookies at all was present,
|
|
|
|
|
libcurl would crash when trying to read a NULL pointer.
|
|
|
|
|
|
|
|
|
|
Daniel (12 January 2007)
|
|
|
|
|
- Toby Peterson found a nasty bug that prevented (lib)curl from properly
|
|
|
|
|
downloading (most) things that were larger than 4GB on 32 bit systems. Matt
|
|
|
|
|
Witherspoon helped as narrow down the problem.
|
|
|
|
|
|
2007-01-06 00:11:14 +01:00
|
|
|
|
Daniel (5 January 2007)
|
|
|
|
|
- Linus Nielsen Feltzing introduced the --ftp-ssl-ccc command line option to
|
|
|
|
|
curl that uses the new CURLOPT_FTP_SSL_CCC option in libcurl. If enabled, it
|
|
|
|
|
will make libcurl shutdown SSL/TLS after the authentication is done on a
|
|
|
|
|
FTP-SSL operation.
|
|
|
|
|
|
2007-01-04 00:04:38 +01:00
|
|
|
|
Daniel (4 January 2007)
|
|
|
|
|
- David McCreedy made changes to allow base64 encoding/decoding to work on
|
|
|
|
|
non-ASCII platforms.
|
|
|
|
|
|
2007-01-03 23:18:38 +01:00
|
|
|
|
Daniel (3 January 2007)
|
|
|
|
|
- Matt Witherspoon fixed the flaw which made libcurl 7.16.0 always store
|
|
|
|
|
downloaded data in two buffers, just to be able to deal with a special HTTP
|
|
|
|
|
pipelining case. That is now only activated for pipelined transfers. In
|
|
|
|
|
Matt's case, it showed as a considerable performance difference,
|
|
|
|
|
|
2007-01-02 13:14:21 +01:00
|
|
|
|
Daniel (2 January 2007)
|
2007-01-02 23:34:56 +01:00
|
|
|
|
- Victor Snezhko helped us fix bug report #1603712
|
|
|
|
|
(http://curl.haxx.se/bug/view.cgi?id=1603712) (known bug #36) --limit-rate
|
|
|
|
|
(CURLOPT_MAX_SEND_SPEED_LARGE and CURLOPT_MAX_RECV_SPEED_LARGE) are broken
|
|
|
|
|
on Windows (since 7.16.0, but that's when they were introduced as previous
|
|
|
|
|
to that the limiting logic was made in the application only and not in the
|
|
|
|
|
library). It was actually also broken on select()-based systems (as apposed
|
|
|
|
|
to poll()) but we haven't had any such reports. We now use select(), Sleep()
|
|
|
|
|
or delay() properly to sleep a while without waiting for anything input or
|
|
|
|
|
output when the rate limiting is activated with the easy interface.
|
|
|
|
|
|
2007-01-02 13:14:21 +01:00
|
|
|
|
- Modified libcurl.pc.in to use Libs.private for the libs libcurl itself needs
|
|
|
|
|
to get built static. It has been mentioned before and was again brought to
|
|
|
|
|
our attention by Nathanael Nerode who filed debian bug report #405226
|
|
|
|
|
(http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=405226).
|
|
|
|
|
|