mirror of
https://github.com/ENSL/NS.git
synced 2024-11-24 05:21:16 +00:00
2061 lines
82 KiB
Text
2061 lines
82 KiB
Text
|
_ _ ____ _
|
|||
|
___| | | | _ \| |
|
|||
|
/ __| | | | |_) | |
|
|||
|
| (__| |_| | _ <| |___
|
|||
|
\___|\___/|_| \_\_____|
|
|||
|
|
|||
|
Changelog
|
|||
|
|
|||
|
Version 7.10.5 (19 May 2003)
|
|||
|
|
|||
|
Daniel (15 May)
|
|||
|
- Changed the order for the in_addr_t testing, as 'unsigned long' seems to be
|
|||
|
a very common type inet_addr() returns.
|
|||
|
|
|||
|
Daniel (14 May)
|
|||
|
- George Comninos provided a fix that calls the progress meter when waiting
|
|||
|
for FTP command responses take >1 second. It'll make applications more
|
|||
|
"responsive" even when dealing with very slow ftp servers.
|
|||
|
|
|||
|
Daniel (12 May)
|
|||
|
- George Comninos pointed out that libcurl uploads had two quirks:
|
|||
|
o when using FTP PORT command, it used blocking sockets!
|
|||
|
o it could loop a long time without doing progress meter updates
|
|||
|
Both items are fixed now.
|
|||
|
|
|||
|
Daniel (9 May)
|
|||
|
- Dan Fandrich changed CURLOPT_ENCODING to select all supported encodings if
|
|||
|
set to "". This frees the application from having to know which encodings
|
|||
|
the library supports.
|
|||
|
|
|||
|
- Dan Fandrich pointed out we had three unnecessary files in CVS that is
|
|||
|
generated with libtoolize, so they're now removed and libtoolize is invoked
|
|||
|
accordingly in the buildconf script.
|
|||
|
|
|||
|
- Avery Fay found out that the CURLOPT_INTERFACE way of first checking if the
|
|||
|
given name is a network interface gave a real performance penalty on Linux,
|
|||
|
so now we more appropriately first check if it is an IP number and if so
|
|||
|
we don't check for a network interface with that name.
|
|||
|
|
|||
|
- CURLOPT_FTP_USE_EPRT added. Set this to FALSE to disable libcurl's attempts
|
|||
|
to use EPRT and LPRT before the traditional PORT command. The command line
|
|||
|
tool sets this option with '--disable-eprt'.
|
|||
|
|
|||
|
Version 7.10.5-pre2 (6 May 2003)
|
|||
|
|
|||
|
Daniel (6 May)
|
|||
|
- Kevin Delafield reported another case where we didn't correctly check for
|
|||
|
EAGAIN but only EWOULDBLOCK, which caused badness on HPUX.
|
|||
|
|
|||
|
Daniel (4 May)
|
|||
|
- Ben Greear noticed that the check for 'writable argv' exited the configure
|
|||
|
script when run for cross-compiling, which wasn't nice. Now it'll default to
|
|||
|
no and output a warning about the fact that it was not checked for.
|
|||
|
|
|||
|
Daniel (2 May)
|
|||
|
- Added test case 62 and fixed some more on the cookie sending with a custom
|
|||
|
Host: header set.
|
|||
|
|
|||
|
Daniel (1 May)
|
|||
|
- Andy Cedilnik fixed a few compiler warnings.
|
|||
|
|
|||
|
- Made the "SSL read error: 5" error message more verbose, by adding code that
|
|||
|
queries the OpenSSL library to fill in the error buffer.
|
|||
|
|
|||
|
Daniel (30 Apr)
|
|||
|
- Added sys/select.h include in the curl/multi.h file, after having been
|
|||
|
reminded about this by Rich Gray.
|
|||
|
|
|||
|
- I made each test set its own server requirements, thus abandoning the
|
|||
|
previous system where the test number implied what server(s) to use for a
|
|||
|
specific test.
|
|||
|
|
|||
|
- David Balazic made curl more RFC1738-compliant for FTP URLs, by fixing so
|
|||
|
that libcurl now uses one CWD command for each path part. A bunch of test
|
|||
|
cases were fixed to work accordingly.
|
|||
|
|
|||
|
- Cookie fixes:
|
|||
|
|
|||
|
A. Save domains in jars like Mozilla does. It means all domains set in
|
|||
|
Set-Cookie: headers are dot-prefixed.
|
|||
|
B. Save and use the 'tailmatch' field in the Mozilla/Netscape cookie jars
|
|||
|
(the second column).
|
|||
|
C. Reject cookies using illegal domains in the Set-Cookie: line. Concerns
|
|||
|
both domains with too few dots or domains that are outside the currently
|
|||
|
operating server host's domain.
|
|||
|
D. Set the path part by default to the one used in the request, if none was
|
|||
|
set in the Set-Cookie line.
|
|||
|
|
|||
|
To make item C really good, I also made libcurl notice custom Host: headers
|
|||
|
and extract the host name set in there and use that as the host name for the
|
|||
|
site we're getting the cookies from. This allows user to specify a site's
|
|||
|
IP-address, but still be able to receive and send its cookies properly if
|
|||
|
you provide a valid Host: name for the site.
|
|||
|
|
|||
|
Daniel (29 Apr)
|
|||
|
- Peter Kovacs provided a patch that makes the CURLINFO_CONNECT_TIME work fine
|
|||
|
when using the multi interface (too).
|
|||
|
|
|||
|
Version 7.10.5-pre1 (23 Apr 2003)
|
|||
|
|
|||
|
Daniel (23 Apr)
|
|||
|
- Upgraded to libtool 1.5.
|
|||
|
|
|||
|
Daniel (22 Apr)
|
|||
|
- Peter Sylvester pointed out that curl_easy_setopt() will always (wrongly)
|
|||
|
return CURLE_OK no matter what happens.
|
|||
|
|
|||
|
- Dan Fandrich fixed some gzip decompression bugs and flaws.
|
|||
|
|
|||
|
Daniel (16 Apr)
|
|||
|
- Fixed minor typo in man page, reported in the Debian bug tracker.
|
|||
|
|
|||
|
Daniel (15 Apr)
|
|||
|
- Fixed some FTP tests in the test suite that failed on my Solaris host, due
|
|||
|
to the config.h not being included before the system headers. When done that
|
|||
|
way, it did get a mixed sense of if big files are supported or not and then
|
|||
|
stat() and fstat() (as used in test case 505) got confused and failed to
|
|||
|
return a proper file size.
|
|||
|
|
|||
|
- Formposting a file using a .html suffix is now properly set to Content-Type: text/html.
|
|||
|
|
|||
|
Daniel (14 Apr)
|
|||
|
- Fixed the SSL error handling to return proper SSL error messages again, they
|
|||
|
broke in 7.10.4. I also attempt to track down CA cert problems and then
|
|||
|
return the CURLE_SSL_CACERT error code.
|
|||
|
|
|||
|
- The curl tool now intercepts the CURLE_SSL_CACERT error code and displays
|
|||
|
a fairly big and explanatory error message. Kevin Roth helped me out with
|
|||
|
the wording.
|
|||
|
|
|||
|
Daniel (11 Apr)
|
|||
|
- Nic Hines provided a second patch for gzip decompression, and fixed a bug
|
|||
|
when deflate or gzip contents were downloaded using chunked encoding.
|
|||
|
|
|||
|
- Dan Fandrich made libcurl support automatic decompression of gzip contents
|
|||
|
(as an addition to the previous deflate support).
|
|||
|
|
|||
|
- I made the CWD command during FTP session consider all 2xy codes to be OK
|
|||
|
responses.
|
|||
|
|
|||
|
Daniel (10 Apr)
|
|||
|
- Vlad Krupin fixed a URL parsing issue. URLs that were not using a slash
|
|||
|
after the host name, but still had "?" and parameters appended, as in
|
|||
|
"http://hostname.com?foobar=moo", were not properly parsed by libcurl.
|
|||
|
|
|||
|
Daniel (9 Apr)
|
|||
|
- Made CURLOPT_TIMECONDITION work for FTP transfers, using the same syntax as
|
|||
|
for HTTP. This then made -z work for ftp transfers too. Added test case 139
|
|||
|
and 140 for verifying this.
|
|||
|
|
|||
|
- Getting the file date of an ftp file used the wrong time zone when
|
|||
|
displayed. It is supposedly always GMT. Added test case 141 for this.
|
|||
|
|
|||
|
- Made the test suite's FTP server support MDTM.
|
|||
|
|
|||
|
- The default DEBUGFUNCTION, as enabled with CURLOPT_VERBOSE now outputs
|
|||
|
CURLINFO_HEADER_IN data as well. The most notable effect from this is that
|
|||
|
using curl -v, you get to see the incoming "headers" as well. This is
|
|||
|
perhaps most useful when doing ftp.
|
|||
|
|
|||
|
Daniel (8 Apr)
|
|||
|
- James Bursa fixed a flaw in the Content-Type extraction code, which missed
|
|||
|
the first letter if no space followed the colon.
|
|||
|
|
|||
|
- Magnus Nilsson pointed out that share.c was missing in the MSVC project
|
|||
|
file.
|
|||
|
|
|||
|
Daniel (6 Apr)
|
|||
|
- Ryan Weaver provided a patch that makes the CA cert bundle not get installed
|
|||
|
anymore when 'configure --without-ssl' has been used.
|
|||
|
|
|||
|
Daniel (4 Apr)
|
|||
|
- Martijn Broenland found another cases where a server application didn't
|
|||
|
like the boundary string used by curl when foing a multi-part/formpost. We
|
|||
|
modified the boundary string to look like the one IE uses, as this is
|
|||
|
probably gonna make curl work with more applications.
|
|||
|
|
|||
|
Daniel (3 Apr)
|
|||
|
- Kevin Roth reported that a bunch of tests fails on cygwin. One set fails
|
|||
|
when using perl 5.8 (and they run fine with perl 5.6), and another set
|
|||
|
failed because of an artifact in the test suite's FTP server that I
|
|||
|
corrected. It turned out the FTP server code was still having a file opened
|
|||
|
while the main test script removed it and invoked the HTTP server that
|
|||
|
attempted to create the same file name of the file the FTP server kept open.
|
|||
|
This operation works fine on unix, but not on cygwin.
|
|||
|
|
|||
|
Version 7.10.4 (2 Apr 2003)
|
|||
|
|
|||
|
Daniel (1 Apr)
|
|||
|
- Added test case 505 to exercise FTP upload with rename done with libcurl,
|
|||
|
and for that I had to extend the test suite's FTP server to deal with the
|
|||
|
RNFR and RNTO commands.
|
|||
|
|
|||
|
Daniel (31 Mar)
|
|||
|
- Even more SSL config check modifications after Richard's testing.
|
|||
|
|
|||
|
Version 7.10.4-pre6 (31 Mar 2003)
|
|||
|
|
|||
|
Daniel (31 Mar)
|
|||
|
- More fixes for the SSL session ID cache checks when SSL configs are changed
|
|||
|
between connections. Based on tests and talks with Richard Bramante.
|
|||
|
|
|||
|
- Guillaume Cottenceau provided a patch that added CURLOPT_UNRESTRICTED_AUTH.
|
|||
|
When enabled, it will prevent libcurl from limiting to which host it sends
|
|||
|
user+password to when following locations. By default, libcurl only sends
|
|||
|
name and password to the original host used in the first URL, but with this
|
|||
|
option set it will send the auth info to all hosts it follows location
|
|||
|
headers to. The new tool command line option for this is named
|
|||
|
"--location-trusted".
|
|||
|
|
|||
|
- Frankie Fong reported a problem with libcurl if you re-used an easy handle
|
|||
|
with a proxy, and you first made a https:// connction to a host and then
|
|||
|
switched to a http:// one to the same host. libcurl would then wrongly re-use
|
|||
|
the same connection for it and fail to get the second URL properly
|
|||
|
|
|||
|
Daniel (29 Mar)
|
|||
|
- Dan Shearer's fix that makes curl complain if invoked with nothing but "curl
|
|||
|
-O" was applied.
|
|||
|
|
|||
|
Daniel (26 Mar)
|
|||
|
- Bryan Kemp was friendly enough to lend me an account on his Redhat 9 box and
|
|||
|
I could fix the configure problems on redhat 8.1 and 9 in no time thanks to
|
|||
|
this. Thanks a bunch Bryan!
|
|||
|
|
|||
|
Daniel (25 Mar)
|
|||
|
- Renamed configure.in to configure.ac
|
|||
|
|
|||
|
Version 7.10.4-pre5 (25 Mar 2003)
|
|||
|
|
|||
|
Daniel (25 Mar)
|
|||
|
- Richard Bramante provided a fix for a handle re-use problem seen when you
|
|||
|
change options on an SSL-enabled connection between requests. Previously,
|
|||
|
changing peer verification or host verification and similar things was not
|
|||
|
taken into account when a connection were checked for re-use and thus
|
|||
|
enabling stricter check between requests on a re-used connection made no
|
|||
|
difference and the connection would thus be used erroneously.
|
|||
|
|
|||
|
Daniel (24 Mar)
|
|||
|
- G<>tz Babin-Ebell pointed out that the ca-bundle.crt file contained a
|
|||
|
certificate from Trustcenter that was a demo certificate only that was never
|
|||
|
indended to be part of a CA bundle.
|
|||
|
|
|||
|
Daniel (21 Mar)
|
|||
|
- Life is a mystery. Within a time period of 17 hours, Tim Pope and Michael
|
|||
|
Churchill filed one bug report each, both identifying problems with a second
|
|||
|
transfer when doing persistant transfers re-using a connection. Tim's one is
|
|||
|
#706624, labeled "Multiple uploads per handle fail" and Michael's #707003
|
|||
|
"Does not send Authorization: header when reusing connection". I could track
|
|||
|
both down to the same piece of logic and it turned out libcurl was not using
|
|||
|
new settings properly when re-using an existing connection. This concerned
|
|||
|
both uploading and downloading and involved exactly those pieces these two
|
|||
|
reports identified. This code has been this faulty since the day I
|
|||
|
introduced persistant connection support in libcurl, more than 2 years ago.
|
|||
|
|
|||
|
Daniel (20 Mar 2003)
|
|||
|
- Five year anniversary. Today five years ago, the first ever curl release saw
|
|||
|
the light of day.
|
|||
|
|
|||
|
Daniel (17 Mar)
|
|||
|
- Andy Cedilnik corrected flaws in some libcurl example-usage sources.
|
|||
|
|
|||
|
Daniel (16 Mar)
|
|||
|
- Juan F. Codagnone reported that the fix from March 2nd was incomplete.
|
|||
|
|
|||
|
- Added code to the configure.in to check for select() argument types. I've
|
|||
|
not made any code use the results just yet though.
|
|||
|
|
|||
|
Daniel (15 Mar)
|
|||
|
- Gisle Vanem provided two patches to build better on Windows.
|
|||
|
|
|||
|
- Adjusted the test suite code to better make sure that the server(s) required
|
|||
|
for a specific test is properly started before the test case is attempted.
|
|||
|
Many tests now run a lot faster than before.
|
|||
|
|
|||
|
Daniel (14 Mar)
|
|||
|
- Another configure.in adjustment made the configure detect functions properly
|
|||
|
on HPUX now.
|
|||
|
|
|||
|
Daniel (13 Mar)
|
|||
|
- Philippe Raoult fixed pre4-compile quirks for FreeBSD.
|
|||
|
|
|||
|
Version 7.10.4-pre4 (13 Mar 2003)
|
|||
|
|
|||
|
Daniel (13 Mar)
|
|||
|
- Added a backup-check for functions that aren't found by AC_CHECK_FUNCS()
|
|||
|
as I believe some checks on HPUX need this. At least some of the info given
|
|||
|
to us by Rick Jones seemed to indicate this.
|
|||
|
|
|||
|
Daniel (12 Mar)
|
|||
|
- Thomas Tonino found out that if you used the curl tool to do PUT operations
|
|||
|
as in 'curl www.foo.com/dir/ -T file' and the file name included for example
|
|||
|
space or other characters that don't belong in URLs, curl did not properly
|
|||
|
URL encode them before using them in the URL.
|
|||
|
|
|||
|
- Added an option to configure called --enable-libgcc that simply adds -lgcc
|
|||
|
to the LIBS variable, as this seems to be a common problem.
|
|||
|
|
|||
|
- I modified the configure.in file, so that the headers are now checked in an
|
|||
|
order of "viality". We must also make sure to use the "default headers"
|
|||
|
parameter to AC_CHECK_HEADERS() so that headers are checked with the proper
|
|||
|
prerequisites included (i.e all the major and generally important header
|
|||
|
files are included there by default). This might be what we need for various
|
|||
|
Sun, HP, AIX and Tru64 systems to behave good again on the header check
|
|||
|
front.
|
|||
|
|
|||
|
- Rick Jones pointed out a few compiler warnings on HP-UX that I addressed.
|
|||
|
|
|||
|
- I made the configure --help output nicer by using AC_HELP_STRING() a lot
|
|||
|
more.
|
|||
|
|
|||
|
Daniel (11 Mar)
|
|||
|
- Christophe Demory fixed the socket sending code to work better on HP-UX
|
|||
|
when sending data to a socket that would block. It then returns EAGAIN, not
|
|||
|
EWOULDBLOCK.
|
|||
|
|
|||
|
- Richard Gorton improved the seeding function for systems without a good
|
|||
|
and reliable random source.
|
|||
|
|
|||
|
- Richard Gorton fixed a few warnings that popped up when you built curl
|
|||
|
using the Sun compiler on a 64bit SPARC platform.
|
|||
|
|
|||
|
- Martin C. Martin fixed a case where a connect failure using the multi
|
|||
|
interface didn't produce a human readable error string.
|
|||
|
|
|||
|
Daniel (10 Mar)
|
|||
|
- Reverted ltmain.sh back to libtool 1.4.2 status again, as the 1.4.3 version
|
|||
|
broke the build on numerous platforms. It seems that libtool 1.4.3 puts some
|
|||
|
requirements on what versions of the other tools (autoconf + automake) that
|
|||
|
I am not familiar with and thus I couldn't fulfill at this point.
|
|||
|
|
|||
|
Yes, this is more than mildly frustrating.
|
|||
|
|
|||
|
Daniel (7 Mar)
|
|||
|
- Run libtoolize version 1.4.3.
|
|||
|
|
|||
|
Version 7.10.4-pre3 (4 Mar 2003)
|
|||
|
|
|||
|
Daniel (3 Mar)
|
|||
|
- Added share.obj to the VC6 and Borland libcurl makefiles.
|
|||
|
|
|||
|
- Troels Walsted Hansen found and investigated a problem with libcurl on AIX,
|
|||
|
presumably only on 4.3 or later. gethostbyname_r() is not returning data
|
|||
|
that is possible to "keep" and cache the way libcurl does. But instead these
|
|||
|
versions of AIX uses a gethostbyname() that works thread-safely we can
|
|||
|
instead use the ordinary gethostbyname() and our pack_hostent() approach to
|
|||
|
achieve what we want. The configure script now attempts to detect AIX 4.3 or
|
|||
|
later to adjust for this.
|
|||
|
|
|||
|
Daniel (2 Mar)
|
|||
|
- Juan F. Codagnone found a problem introduced in 7.10.3 when you first did a
|
|||
|
POST and then back to a GET using the same easy handle.
|
|||
|
|
|||
|
Daniel (28 Feb)
|
|||
|
- Removed the strequal and strnequal defines from curl/curl.h header. They
|
|||
|
were never meant for the public header anyway. Philippe Raoult brought it
|
|||
|
up.
|
|||
|
|
|||
|
- James Bursa fixed the RISC OS build.
|
|||
|
|
|||
|
Daniel (27 Feb)
|
|||
|
- Avery Fay pointed out the very misleading curl_multi_info_read man page, and
|
|||
|
I updated it to become more accurate.
|
|||
|
|
|||
|
- Salvatore Sorrentino found a problem with FTP downloading that turned out to
|
|||
|
be his FTP server returning size zero (0 bytes) when SIZE was used on a file
|
|||
|
while being in BINARY mode. We now make a second check for the actual size
|
|||
|
by scanning the RETR reply anyway, even if the SIZE command returned 0.
|
|||
|
|
|||
|
Daniel (26 Feb)
|
|||
|
- Kyle Sallee reported a case where he would do a transfer that didn't update
|
|||
|
the progress meter properly. It turned out to be a case where libcurl would
|
|||
|
loop a little too eagerly in the tranfer loop, which isn't really good for
|
|||
|
the APIs, especially not the multi API.
|
|||
|
|
|||
|
Version 7.10.4-pre2 (24 Feb 2003)
|
|||
|
|
|||
|
Daniel (24 Feb)
|
|||
|
- Kjetil Jacobsen found out that setting CURLOPT_MAXCONNECTS to a value higher
|
|||
|
than 5 could cause a segfault.
|
|||
|
|
|||
|
- I believe I fixed the 'Expect: 100-continue' behavior that has been broken
|
|||
|
for a while (I think since my change dated Dec 10 2002). When this header is
|
|||
|
used, libcurl should wait for a HTTP 100 (or timeout) before sending the
|
|||
|
post/put data.
|
|||
|
|
|||
|
Daniel (14 Feb)
|
|||
|
- Matthew Clarke provided some info what to modify to make curl build
|
|||
|
flawlessly on AIX 3.2.5.
|
|||
|
|
|||
|
- Martin C. Martin found and fixed a problem in the multi interface when
|
|||
|
running on Windows and trying to connect to a port without a listener.
|
|||
|
|
|||
|
Daniel (13 Feb)
|
|||
|
- Christopher R. Palmer fixed Curl_base64_encode() to deal with zeroes in the
|
|||
|
data to encode.
|
|||
|
|
|||
|
Daniel (4 Feb)
|
|||
|
- Jean-Philippe added the first code that enables the 'share' system. This
|
|||
|
should now enable sharing of DNS data between two curl easy handles.
|
|||
|
|
|||
|
- Incorporated Nico Baggus' fixes to again compile flawlessly on VMS.
|
|||
|
|
|||
|
- James Bursa corrected a bad comment in the public include file curl/multi.h
|
|||
|
|
|||
|
- Peter Forret reported one of those error:00000000 cases in libcurl again
|
|||
|
when connecting to a HTTPS site, and this time I did discover some oddities
|
|||
|
in how curl reports SSL errors back. It could miss showing the actual error.
|
|||
|
|
|||
|
Version 7.10.4-pre1 (3 Feb 2003)
|
|||
|
|
|||
|
Daniel (3 Feb)
|
|||
|
- Removed things in the docs saying capath doesn't work on Windows, as Julian
|
|||
|
Noble told us it works fine.
|
|||
|
|
|||
|
Daniel (31 Jan)
|
|||
|
- Kevin Roth fixed the zlib build stuff in the Mingw32 makefile.
|
|||
|
|
|||
|
Daniel (30 Jan)
|
|||
|
- Kevin Roth found out that curl on Windows always checked for the CA cert
|
|||
|
bundle using the environment variable and the path scan, even though
|
|||
|
-k/--insecure was used.
|
|||
|
|
|||
|
- Hamish Mackenzie pointed out that curl only did strict host name verifying
|
|||
|
if capath or cainfo was used. Now it'll always do it unless -k / --insecure
|
|||
|
is used!
|
|||
|
|
|||
|
- Pavel Cenek pointed out that the Content-Type extraction was done wrongly
|
|||
|
as the full string was not fetched. Added test case 57 to verify that curl
|
|||
|
does it right now.
|
|||
|
|
|||
|
Daniel (29 Jan)
|
|||
|
- Jamie Wilkinson provided a patch that now makes curl attempt to clear out
|
|||
|
"sensitive" command line arguments so that they don't appear in ps outputs
|
|||
|
(only on platforms that allow writing to argv[]).
|
|||
|
|
|||
|
- John McGowan found out that the DEBUGFUNCTION could be called with bad
|
|||
|
arguments and thus cause the --trace outputs to go wrong.
|
|||
|
|
|||
|
- Removed all the emacs local variables from all files. Mats Lidell provided
|
|||
|
the new sample.emacs file (for a sample of what to include in your .emacs)
|
|||
|
and the curl-style.el that sets a better c-style for editing curl sources.
|
|||
|
|
|||
|
- Dave Halbakken found a problem with FTP downloads that could accidently
|
|||
|
return CURLE_PARTIAL_FILE when curl_easy_perform() was called with NOBODY
|
|||
|
set TRUE.
|
|||
|
|
|||
|
Daniel (27 Jan)
|
|||
|
- The fopen.c example was flawed as Nick Humfrey noticed, and I fixed it to
|
|||
|
work again.
|
|||
|
|
|||
|
Daniel (24 Jan)
|
|||
|
- Bertrand Demiddelaer found and fixed a memory leak (the content-type string)
|
|||
|
when following locations.
|
|||
|
|
|||
|
Daniel (22 Jan 2003)
|
|||
|
- Ian Wilkes and Legoff Vincent both independently provided fixes for making
|
|||
|
curl/multi.h work properly when compiled with a C++ compiler.
|
|||
|
|
|||
|
Daniel (20 Jan 2003)
|
|||
|
- Fixed 'buildconf' to check version number of the required tools before
|
|||
|
they're actually used.
|
|||
|
|
|||
|
- Wrote 'testcurl.sh', a script targeted for automatic and distributed curl
|
|||
|
tests on various platforms.
|
|||
|
|
|||
|
- David Thiel pointed out that the .netrc file was not being dealt with
|
|||
|
properly anymore. I broke this in the password prompting "fix".
|
|||
|
|
|||
|
- Markus F.X.J. Oberhumer patched libcurl to allocate the scratch buffer only
|
|||
|
on demand and thus we save 32KB in each curl handle that don't use that
|
|||
|
buffer. This need appeared when some people started using thousands of
|
|||
|
simultaneous curl handles... :-)
|
|||
|
|
|||
|
Daniel (16 Jan 2003)
|
|||
|
- Markus Oberhumer fixed curl-config --cflags when the includedir was not
|
|||
|
/usr/include.
|
|||
|
|
|||
|
- Markus Oberhumer fixed CURLINFO_PRIVATE to properly return NULL if it was
|
|||
|
set to NULL!
|
|||
|
|
|||
|
Version 7.10.3 (14 Jan 2003)
|
|||
|
|
|||
|
Daniel (10 Jan 2003)
|
|||
|
- Steve Oliphant pointed out that test case 105 did not work anymore and this
|
|||
|
was due to a missing fix for the password prompting.
|
|||
|
|
|||
|
Version 7.10.3-pre6 (10 Jan 2003)
|
|||
|
|
|||
|
Daniel (9 Jan 2003)
|
|||
|
- Bryan Kemp pointed out that curl -u could not provide a blank password
|
|||
|
without prompting the user. It can now. -u username: makes the password
|
|||
|
empty, while -u username makes curl prompt the user for a password.
|
|||
|
|
|||
|
- Kjetil Jacobsen found a remaining connect problem in the multi interface on
|
|||
|
ipv4 systems (Linux only?), that I fixed and Kjetil verified that it fixed
|
|||
|
his problems.
|
|||
|
|
|||
|
- memanalyze.pl now reads a file name from the command line, and no longer
|
|||
|
takes the data on stdin as before.
|
|||
|
|
|||
|
Version 7.10.3-pre5 (9 Jan 2003)
|
|||
|
|
|||
|
Daniel (9 Jan 2003)
|
|||
|
- Fixed tests/memanalyze.pl to work with file names that contain colons (as on
|
|||
|
Windows).
|
|||
|
|
|||
|
- Kjetil Jacobsen quickly pointed out that lib/share.h was missing...
|
|||
|
|
|||
|
Version 7.10.3-pre4 (9 Jan 2003)
|
|||
|
|
|||
|
Daniel (9 Jan 2003)
|
|||
|
- Updated lib/share.c quite a bit to match the design document at
|
|||
|
http://curl.haxx.se/dev/sharing.txt a lot more.
|
|||
|
|
|||
|
I'll try to update the document soonish. share.c is still not actually used
|
|||
|
by libcurl, but the API is slowly getting there and we can start
|
|||
|
implementing code that takes advantage of this system.
|
|||
|
|
|||
|
Daniel (8 Jan 2003)
|
|||
|
- Updated share stuff in curl/curl.h, including data types, structs and
|
|||
|
function prototypes. The corresponding files in lib/ were also modified
|
|||
|
of course to remain compilable. Based on input from Jean-Philippe and also
|
|||
|
to make it more in line with the design document.
|
|||
|
|
|||
|
- Jean-Philippe Barrette-LaPierre patched a very trivial memory leak in
|
|||
|
curl_escape() that would happen when realloc() returns NULL...
|
|||
|
|
|||
|
- Matthew Blain provided feedback to make the --create-dirs stuff build
|
|||
|
properly on Windows.
|
|||
|
|
|||
|
- Fixed the #include in tests/libtest/first.c as Legoff Vincent pointed out.
|
|||
|
|
|||
|
Daniel (7 Jan 2003)
|
|||
|
- Philippe Raoult provided a patch that now makes libcurl properly support
|
|||
|
wildcard checks for certificate names.
|
|||
|
|
|||
|
- Simon Liu added CURLOPT_HTTP200ALIASES, to let an application set other
|
|||
|
strings recognized as "HTTP 200" to allow http-like protocols to get
|
|||
|
downloaded fine by curl.
|
|||
|
|
|||
|
- Now using autoconf 2.57 and automake 1.7.2
|
|||
|
|
|||
|
- Doing "curl -I ftp://domain/non-existing-file" still outputed a date!
|
|||
|
Wayne Haigh reported.
|
|||
|
|
|||
|
- The error message is now written properly with a newline in the --trace
|
|||
|
file.
|
|||
|
|
|||
|
Daniel (6 Jan 2003)
|
|||
|
- Sterling Hughes fixed a possible bug: previously, if you called
|
|||
|
curl_easy_perform and then set the global dns cache, the global cache
|
|||
|
wouldn't be used. Pointed out by Jean-Philippe Barrette-LaPierre.
|
|||
|
|
|||
|
- Matthew Blain's fixed the VC6 libcurl makefile to include better debug data
|
|||
|
on debug builds.
|
|||
|
|
|||
|
Daniel (27 Dec 2002)
|
|||
|
- Philippe Raoult reported a bug with HTTPS connections which I evidently
|
|||
|
added in my 19 dec fix. I corrected it.
|
|||
|
|
|||
|
Daniel (20 Dec)
|
|||
|
- Idea from the Debian latest patch: use AM_MAINTAINER_MODE in the configure
|
|||
|
script to make the default makefile less confusing "to the casual
|
|||
|
installer".
|
|||
|
|
|||
|
Version 7.10.3-pre3 (20 Dec)
|
|||
|
|
|||
|
Daniel (19 Dec)
|
|||
|
- Matthew Blain patched the Curl_base64_decode() function.
|
|||
|
|
|||
|
- Evan Jordan reported in bug report #653022 that the SSL_read() usage was
|
|||
|
wrong, and it certainly was. It could lead to curl using too much CPU due to
|
|||
|
a stupid loop.
|
|||
|
|
|||
|
Daniel (18 Dec)
|
|||
|
- As suggested by Margus Freudenthal, CURLE_HTTP_NOT_FOUND was renamed to
|
|||
|
CURLE_HTTP_RETURNED_ERROR since it is returned on any >= 400 code when
|
|||
|
CURLOPT_FAILONERROR is set.
|
|||
|
|
|||
|
Daniel (17 Dec)
|
|||
|
- Bug reported #651464, reported by Christopher Palmer, provided an example
|
|||
|
source code using the multi interface that hang when trying to connect to a
|
|||
|
proxy on a localhost port where no proxy was listening. This bug was not
|
|||
|
repeatable on libcurls that were IPv6-enabled.
|
|||
|
|
|||
|
Daniel (16 Dec)
|
|||
|
- Christopher Palmer also noticed what Vojtech Janota already was
|
|||
|
experiencing: The attempted name resolve fix for glibc 2.2.93 caused libcurl
|
|||
|
to crash when used on some older glibc versions. The problem is of course
|
|||
|
the silliness of the 2.2.93. I committed a fix that hopefully should make
|
|||
|
the binary run fine on either one of the versions, even though the solution
|
|||
|
is not as nice as I'd like it to be.
|
|||
|
|
|||
|
Daniel (13 Dec)
|
|||
|
- Bug report #651460 by Christopher R. Palmer showed that when using libcurl
|
|||
|
to for example go over a proxy on localhost, it would attempt to connect
|
|||
|
through the proxy TWICE.
|
|||
|
|
|||
|
I added test case 503 with which I managed to repeat this problem and I
|
|||
|
fixed the code to not re-attempt any connects (which also made it a nicer
|
|||
|
fix for the #650941 bug mentioned below).
|
|||
|
|
|||
|
The sws server was extended to deal with CONNECT in order to make test
|
|||
|
case 503 do good.
|
|||
|
|
|||
|
- Evan Jordan posted bug report #650989 about a memory leak in the public key
|
|||
|
retrieving code. He provided a suggested fix and I merely applied it!
|
|||
|
|
|||
|
- Bug report #650941, posted by Christopher R. Palmer identified a problem
|
|||
|
with the multi interface and getting file:// URLs. This was now fixed and
|
|||
|
test case 502 was added to verify this.
|
|||
|
|
|||
|
Daniel (12 Dec)
|
|||
|
- Test case 500 and 501 are the first ever libcurl test cases that run.
|
|||
|
|
|||
|
- Made "configure --enable-debug" cut off all -O* options to the compiler
|
|||
|
|
|||
|
- Finally fixed the test suite's ftp server so that test case 402 doesn't
|
|||
|
cause the following test case to fail anymore!
|
|||
|
|
|||
|
Daniel (11 Dec)
|
|||
|
- CURL_MAX_WRITE_SIZE is now decreased to 16KB since it makes the Windows
|
|||
|
version perform uploads much faster!!! RBramante did lots of research on
|
|||
|
this topic.
|
|||
|
|
|||
|
- Fixed the #include in curl/curl.h to include the other files outside the
|
|||
|
extern "C" scope.
|
|||
|
|
|||
|
Daniel (10 Dec)
|
|||
|
- Moved around and added more logic:
|
|||
|
|
|||
|
First, POST data is never sent as part of the request headers in the http.c
|
|||
|
code. It is always sent the "normal" read callback then send() way. This now
|
|||
|
enables a plain HTTP POST to be sent chunked if we want to. This also
|
|||
|
reduces the risk of having very big POSTs causing problems.
|
|||
|
|
|||
|
Further, sending off the initial HTTP request is not done using a loop
|
|||
|
anymore. If it wasn't all sent off in the first send(), the rest of the
|
|||
|
request is sent off in the normal transfer select() loop. This makes several
|
|||
|
things possible, but mainly it makes libcurl block less when used from the
|
|||
|
multi interface and it also reduces the risk of problems with issuing very
|
|||
|
large requests.
|
|||
|
|
|||
|
Daniel (9 Dec)
|
|||
|
- Moved the read callback pointer and data within the structs to a more
|
|||
|
suitable place. This in preparation for a better HTTP-request sending code
|
|||
|
without (a silly) loop.
|
|||
|
|
|||
|
- The Dodds fix seems not to work.
|
|||
|
|
|||
|
- Vojtech Janota tests proved that the resolve fix from oct 21st is not good
|
|||
|
enough since obviously older glibcs might return EAGAIN without this meaning
|
|||
|
that the buffer was too small.
|
|||
|
|
|||
|
- [the other day] Made libcurl loop on recv() and send() now until done, and
|
|||
|
then get back to select(). Previously it went back to select() more often
|
|||
|
which really was a slight overhead. This was due to the reported performance
|
|||
|
problems on HTTP PUT on Windows. I couldn't see any notable difference on
|
|||
|
Linux...
|
|||
|
|
|||
|
Version 7.10.3-pre2 (4 Dec 2002)
|
|||
|
|
|||
|
Daniel (4 Dec 2002)
|
|||
|
- Lots of work with Malcolm Dodds made me add a temporary code fix that now
|
|||
|
shortens the timeout waiting for the 226 or 250 line after a completed
|
|||
|
FTP transfer.
|
|||
|
|
|||
|
If no data is received within 60 seconds, this is taken as a sign of a dead
|
|||
|
control connection and we bail out.
|
|||
|
|
|||
|
Daniel (3 Dec 2002)
|
|||
|
- Ralph's bug report #644841 identified a problem in which curl returned a
|
|||
|
timeout error code when in fact the problem was not a timeout. The proper
|
|||
|
error should now be propagated better when they're detected in the FTP
|
|||
|
response reading function.
|
|||
|
|
|||
|
- Updated the Borland Makefiles.
|
|||
|
|
|||
|
Daniel (2 Dec 2002)
|
|||
|
- Nicolas Berloquin provided a patch that introduced --create-dirs to the
|
|||
|
command line tool. When used in combination with -o, it lets curl create
|
|||
|
[non-existing] directories used in -o, suitably used with #-combinations
|
|||
|
such as:
|
|||
|
|
|||
|
curl "www.images.com/{flowers,cities,parks,mountains}/pic_[1-100].jpg \
|
|||
|
-o "dir_#1/pic#2.jpg" --create-dirs
|
|||
|
|
|||
|
Version 7.10.3-pre1
|
|||
|
|
|||
|
Daniel (28 Nov 2002)
|
|||
|
- I visited Lars Nordgren and had a go with his problem, which lead me to
|
|||
|
implement this fix. If libcurl detects the added custom header
|
|||
|
"Transfer-Encoding: chunked", it will now enable a chunked transfer.
|
|||
|
|
|||
|
Also, chunked transfer didn't quite work before but seems to do so now.
|
|||
|
|
|||
|
- Kjetil Jacobsen pointed out that ./configure --disable-ipv6 --without-zlib
|
|||
|
didn't work on any platform...
|
|||
|
|
|||
|
Daniel (26 Nov 2002)
|
|||
|
- Fixed a bad addrinfo free in the hostip.c code, hardly exposed anywhere
|
|||
|
|
|||
|
- Dan Becker found and fixed a minor memory leak on persistent connnections
|
|||
|
using CURLOPT_USERPWD.
|
|||
|
|
|||
|
Daniel (22 Nov 2002)
|
|||
|
- Based on Ralph Mitchell's excellent analysis I found a bug in the test suite
|
|||
|
web server (sws) which now lets test case 306 run fine even in combination
|
|||
|
with the other test cases.
|
|||
|
|
|||
|
- Juan Ignacio Herv<72>s found a crash in the verbose connect message that is
|
|||
|
used on persistent connections. This bug was added in 7.10.2 due to the
|
|||
|
rearranged name resolve code.
|
|||
|
|
|||
|
Daniel (20 Nov 2002)
|
|||
|
- Kjetil Jacobsen provided a patch that introduces:
|
|||
|
|
|||
|
CURLOPT_PRIVATE stores a private pointer in the curl handle.
|
|||
|
|
|||
|
CURLINFO_PRIVATE retrieves the private pointer from the curl handle.
|
|||
|
|
|||
|
- Karol Pietrzak pointed out how curl-config --cflags didn't output a good
|
|||
|
include dir so I've removed that for now.
|
|||
|
|
|||
|
Version 7.10.2 (18 Nov 2002)
|
|||
|
|
|||
|
Daniel (11 Nov 2002)
|
|||
|
- Dave Halbakken added curl_version_info to lib/libcurl.def to make libcurl
|
|||
|
properly build with MSVC on Windows.
|
|||
|
|
|||
|
Daniel (8 Nov 2002)
|
|||
|
- Doing HTTP PUT without a specified file size now makes libcurl use
|
|||
|
Transfer-Encoding: chunked.
|
|||
|
|
|||
|
Daniel (7 Nov 2002)
|
|||
|
- Bug report #634625 identified how curl returned timeout immediately when
|
|||
|
CURLOPT_CONNECTTIMEOUT was used and provided a fix.
|
|||
|
|
|||
|
Version 7.10.2-pre4 (6 Nov 2002)
|
|||
|
|
|||
|
Daniel (5 Nov 2002)
|
|||
|
- Lehel Bernadt found out and fixed. libcurl sent error message to the debug
|
|||
|
output when it stored the error message.
|
|||
|
|
|||
|
- Avery Fay found some problems with the DNS cache (when the cache time was
|
|||
|
set to 0 we got a memory leak, but when the leak was fixed he got a crash
|
|||
|
when he used the CURLOPT_INTERFACE with that) that had me do some real
|
|||
|
restructuring so that we now have a reference counter in the dns cache
|
|||
|
entries to prevent an entry to get flushed while still actually in use.
|
|||
|
|
|||
|
I also detected that we previously didn't update the time stamp when we
|
|||
|
extracted an entry from the cache so that must've been a reason for some
|
|||
|
very weird dns cache bugs.
|
|||
|
|
|||
|
Version 7.10.2-pre3
|
|||
|
|
|||
|
Daniel (31 Oct 2002)
|
|||
|
- Downgraded automake to 1.6.3 in an attempt to fix cygwin problems. (It
|
|||
|
turned out this didn't help though.)
|
|||
|
|
|||
|
- Disable the DNS cache (by setting the timeout to 0) made libcurl leak
|
|||
|
memory. Avery Fay brought the example code that proved this.
|
|||
|
|
|||
|
Version 7.10.2-pre2
|
|||
|
|
|||
|
Daniel (28 Oct 2002)
|
|||
|
- Upgraded to autoconf 2.54 and automake 1.7 on the release-build host.
|
|||
|
|
|||
|
- Kevin Roth made the command line tool check for a CURL_CA_BUNDLE environment
|
|||
|
variable (if --cacert isn't used) and if not set, the Windows version will
|
|||
|
check for a file named "curl-ca-bundle.crt" in the current directory or the
|
|||
|
directory where curl is located. That file is then used as CA root cert
|
|||
|
bundle.
|
|||
|
|
|||
|
- Avery Fay pointed out that curl's configure scrip didn't get right if you
|
|||
|
used autoconf newer than 2.52. This was due to some badly quoted code.
|
|||
|
|
|||
|
Version 7.10.2-pre1
|
|||
|
|
|||
|
Daniel (23 Oct 2002)
|
|||
|
- Emiliano Ida confirmed that we now build properly with the Borland C++
|
|||
|
compiler too. We needed yet another fix for the ISO cpp check in the curl.h
|
|||
|
header file.
|
|||
|
|
|||
|
- Yet another fix was needed to get the HTTP download without headers to work.
|
|||
|
This time it was needed if the first "believed header" was read all in the
|
|||
|
first read. Test 306 has not run properly since the 11th october fix.
|
|||
|
|
|||
|
Daniel (21 Oct 2002)
|
|||
|
- Zvi Har'El pointed out a problem with curl's name resolving on Redhat 8
|
|||
|
machines (running IPv6 disabled). Mats Lidell let me use an account on his
|
|||
|
machine and I could verify that gethostbyname_r() has been changed to return
|
|||
|
EAGAIN instead of ERANGE when the given buffer size is too small. This is
|
|||
|
glibc 2.2.93.
|
|||
|
|
|||
|
- Albert Chin helped me get the -no-undefined option corrected in
|
|||
|
lib/Makefile.am since Cygwin builds want it there while Solaris builds don't
|
|||
|
want it present. Kevin Roth helped me try it out on cygwin.
|
|||
|
|
|||
|
- Nikita Schmidt provided a bug fix for a FOLLOWLOCATION bug introduced when
|
|||
|
the ../ support got in (7.10.1).
|
|||
|
|
|||
|
Daniel (18 Oct 2002)
|
|||
|
- Fabrizio Ammollo pointed out a remaining problem with FOLLOWLOCATION in
|
|||
|
the multi interface.
|
|||
|
|
|||
|
Daniel (17 Oct 2002)
|
|||
|
- Richard Cooper's experimenting proved that -j (CURLOPT_COOKIESESSION) didn't
|
|||
|
work quite as supposed. You needed to set it *before* you use
|
|||
|
CURLOPT_COOKIEFILE, and we dont' want that kind of dependencies.
|
|||
|
|
|||
|
Daniel (15 Oct 2002)
|
|||
|
- Andr<64>s Garc<72>a provided corrections for erratas in four libcurl man pages.
|
|||
|
|
|||
|
Daniel (13 Oct 2002)
|
|||
|
- Starting now, we generate and include PDF versions of all the docs in the
|
|||
|
release archives.
|
|||
|
|
|||
|
Daniel (12 Oct 2002)
|
|||
|
- Trying to connect to a host on a bad port number caused the multi interface
|
|||
|
to never return failure and it appeared to keep on trying forever (it just
|
|||
|
didn't do anything).
|
|||
|
|
|||
|
Daniel (11 Oct 2002)
|
|||
|
- Downloading HTTP without headers didn't work 100%, some of the initial data
|
|||
|
got written twice. Kevin Roth reported.
|
|||
|
|
|||
|
- Kevin Roth found out the "config file" parser in the client code could
|
|||
|
segfault, like if DOS newlines were used.
|
|||
|
|
|||
|
Version 7.10.1 (11 Oct 2002)
|
|||
|
|
|||
|
Daniel (10 Oct 2002)
|
|||
|
- Jeff Lawson fixed a few problems with connection re-use that remained when
|
|||
|
you set CURLOPT_PROXY to "".
|
|||
|
|
|||
|
Daniel (9 Oct 2002)
|
|||
|
- Craig Davison found a terrible flaw and Cris Bailiff helped out in the
|
|||
|
search. Getting HTTP data from servers when the headers are split up in
|
|||
|
multiple reads, could cause junk data to get inserted among the saved
|
|||
|
headers. This only concerns HTTP(S) headers.
|
|||
|
|
|||
|
Daniel (8 Oct 2002)
|
|||
|
- Vincent Penquerc'h gave us the good suggestion that when the ERRRORBUFFER
|
|||
|
is set internally, the error text is sent to the debug function as well.
|
|||
|
|
|||
|
- I fixed the telnet code to timeout properly as the option tells it to. On
|
|||
|
non-windows platforms.
|
|||
|
|
|||
|
Daniel (7 Oct 2002)
|
|||
|
- John Crow pointed out that libcurl-the-guide wasn't included in the release
|
|||
|
tarball!
|
|||
|
|
|||
|
- Kevin Roth pointed out that make install didn't do right if build outside
|
|||
|
the source tree (ca-bundle wise).
|
|||
|
|
|||
|
- FOLLOWLOCATION bugfix for the multi interface
|
|||
|
|
|||
|
Daniel (4 Oct 2002)
|
|||
|
- Kevin Roth got problems with his cygwin build with -no-undefined was not
|
|||
|
present in lib/Makefile.am so I put it back in there again. The poor one who
|
|||
|
needs to remove it again must write a configure script to detect that need.
|
|||
|
|
|||
|
- Ralph Mitchell pointed out that curl was a bit naive and didn't deal with ./
|
|||
|
or ../ stuff in the string passed back in a Location: header when following
|
|||
|
locations.
|
|||
|
|
|||
|
- Albert Chin helped me to work out a better configure.in check for zlib, and
|
|||
|
both --without-zlib and -with-zlib seem to work rather well right now.
|
|||
|
|
|||
|
- Zvi Har'El improvied the OpenSSL ENGINE check in the configure script to
|
|||
|
become more accurate.
|
|||
|
|
|||
|
Daniel (1 Oct 2002)
|
|||
|
- Detlef Schmier pointed out the lack of a --without-libz option to configure,
|
|||
|
so I added one.
|
|||
|
|
|||
|
Version 7.10 (1 Oct 2002)
|
|||
|
|
|||
|
Daniel (30 Sep 2002)
|
|||
|
- Modified the curl_version_info() proto and returned struct once again, and
|
|||
|
updated the man page accordingly.
|
|||
|
|
|||
|
- Cris Bailiff found out that the pre-releases crashed on name lookups on
|
|||
|
names such as "a:" or "baz:" (on Linux versions not being ipv6-enabled) due
|
|||
|
to some weird return codes from gethostbyname_r(). I'll blame the complete
|
|||
|
lack of docs in that department. Cris provided a fix, which I modified only
|
|||
|
slightly.
|
|||
|
|
|||
|
Daniel (27 Sep 2002)
|
|||
|
- After a suggestion from Christian Kurz to Debian curl package maintainer
|
|||
|
Domenico Andreoli, I made it possible to override the proxy environment
|
|||
|
variables better. Now, by setting -x "" you can explicitly tell libcurl to
|
|||
|
not use a proxy, no matter whan the environment variables say.
|
|||
|
|
|||
|
Version 7.10-pre4
|
|||
|
|
|||
|
Daniel (26 Sep 2002)
|
|||
|
- Extended curl_version_info() more and wrote a man page for it.
|
|||
|
|
|||
|
Daniel (25 Sep 2002)
|
|||
|
- libcurl could leak memory when downloading multiple files using http ranges,
|
|||
|
reported and fixed by Jean-Luc Guevel.
|
|||
|
|
|||
|
- Walter J. Mack provided code and docs for the new curl_free() function that
|
|||
|
shall be used to free memory that is allocated by libcurl and returned back
|
|||
|
to the application, as curl_escape() and curl_unescape() do.
|
|||
|
|
|||
|
- Yarram Sunil pointed out a flaw in the multi interface where a failed
|
|||
|
connection didn't close down properly and thus a second transfer using the
|
|||
|
same handle failed.
|
|||
|
|
|||
|
- Andr<64>s Garc<72>a fixed a flaw that made (among other things) dict-fetches
|
|||
|
return a random value.
|
|||
|
|
|||
|
Daniel (24 Sep 2002)
|
|||
|
- Wez Furlong brought his initial patch that introduced curl_version_info().
|
|||
|
We might need to tweak it somewhat before release.
|
|||
|
|
|||
|
Daniel (20 Sep 2002)
|
|||
|
- Craig Markwardt fixed another Tru64 IP resolve problem.
|
|||
|
|
|||
|
Daniel (19 Sep 2002)
|
|||
|
- Dolbneff A.V and Spiridonoff A.V made the file:// code work with resumes
|
|||
|
in the same style other code does.
|
|||
|
|
|||
|
- Ilguiz Latypov fixed a flaw in the client code when fetching multiple URLs
|
|||
|
and -C - was used. The first file's resume position was then accidentally
|
|||
|
reused on all the other files too.
|
|||
|
|
|||
|
Daniel (18 Sep 2002)
|
|||
|
- The curl_easy_setopt.3 man page was greatly modified and the options have
|
|||
|
now been grouped in logical groups so that it should be somewhat easier to
|
|||
|
read it and find things you search for.
|
|||
|
|
|||
|
Daniel (13 Sep 2002)
|
|||
|
- Kevin Roth pinpointed a scary flaw in libcurl, when the HTTP server doesn't
|
|||
|
send any headers back, only raw content. Right, that is a violation of the
|
|||
|
standard but still happens at times and we need to deal with it. Test case
|
|||
|
306 was added to verify that we do right now.
|
|||
|
|
|||
|
Version 7.10-pre3
|
|||
|
|
|||
|
Daniel (11 Sep 2002)
|
|||
|
- Lukasz Czekierda found out that curl didn't send a correct HTTP Host: header
|
|||
|
when you specified the URL with an IPv6 IP-address.
|
|||
|
|
|||
|
Daniel (4 Sep 2002)
|
|||
|
- Sven Neuhaus made --silent being acknowledged even when multiple URLs
|
|||
|
were used. It used to output "[1/2]: http://host/a.html.de --> a.html.d" etc
|
|||
|
even when told to shut up.
|
|||
|
|
|||
|
Daniel (3 Sep 2002)
|
|||
|
- Updated all source code headers to use MIT-license references only, and
|
|||
|
point to the COPYING file and the http://curl.haxx.se/docs/copyright.html
|
|||
|
URL. I've cut out all references to MPL that I could find.
|
|||
|
|
|||
|
- Corected the makefiles to not always use -lz when linking
|
|||
|
|
|||
|
Version 7.10-pre2
|
|||
|
|
|||
|
Daniel (2 Sep 2002)
|
|||
|
- James Gallagher added Content-Encoding support to libcurl so now curl and
|
|||
|
libcurl-using apps can request compressed contents using the 'deflate'
|
|||
|
method. See the special file lib/README.encoding for details.
|
|||
|
|
|||
|
curl --compressed is now used to request compressed contents.
|
|||
|
|
|||
|
curl-config --feature will include 'libz' if this feature was around when
|
|||
|
the library was built.
|
|||
|
|
|||
|
Daniel (30 Aug 2002)
|
|||
|
- Applied an anonymous SOCKS5-proxy patch. Not properly working in all
|
|||
|
situations though, as all getaddrinfo()-using libcurls will fail on this.
|
|||
|
This is because of the somewhat naive way the current code tries to extract
|
|||
|
the IP address of the proxy.
|
|||
|
|
|||
|
- Fixed up the SSL cert fixes from the other day even more after more inputs
|
|||
|
from Cris. Added three new SSL error codes to make the
|
|||
|
CURLE_SSL_CONNECT_ERROR slightly less overloaded.
|
|||
|
|
|||
|
Daniel (27 Aug 2002)
|
|||
|
- After lots of talk with Tom Zerucha, Nick Gimbrone and Cris Bailiff I
|
|||
|
decided to talk the bold path and I now made libcurl do CA certificate
|
|||
|
verification by default. Thus library users need to explicitly turn this off
|
|||
|
if you want to connect to sites without proper checking. We also install a
|
|||
|
CA cert bundle on 'make install' now.
|
|||
|
|
|||
|
The curl tool now requires the -k/--insecure option in order to allow
|
|||
|
connections and operations on SSL sites that aren't properly verified with
|
|||
|
-cafile or --capath.
|
|||
|
|
|||
|
curl-config --ca displays the built-in path to the CA cert bundle.
|
|||
|
|
|||
|
Daniel (26 Aug 2002)
|
|||
|
- Andrew Francis cleaned up some code that now compiles fine without the need
|
|||
|
for ugly MSVC pragmas.
|
|||
|
|
|||
|
- Keith MacDonald found a minor bug in src/main.c that made it close stdin
|
|||
|
instead of the actual file handle. It shouldn't have resulted in much
|
|||
|
trouble as most operating systems close all file handles on process exit
|
|||
|
anyway.
|
|||
|
|
|||
|
Daniel (22 Aug 2002)
|
|||
|
- Markus Oberhumer provided some documentation for his previously provided
|
|||
|
CURLOPT_NOSIGNAL fix.
|
|||
|
|
|||
|
- Patched the lib/Makefile.am to hopefully no longer complain on undefined
|
|||
|
symbols that seemed to occur on builds with shared OpenSSL libraries on
|
|||
|
Solaris lately...
|
|||
|
|
|||
|
Daniel (20 Aug 2002)
|
|||
|
- Fixed compiler warnings on MSCV++ compiles. We're looking for help here:
|
|||
|
remove the pragmas from lib/config-win32.h and adjust the sources where
|
|||
|
the warnings occur. Hiding them with pragmas like this is not the correct
|
|||
|
way of dealing with compiler warnings.
|
|||
|
|
|||
|
Daniel (13 Aug 2002)
|
|||
|
- Ulrich Zadow made the global include files in curl/* include themselves
|
|||
|
using "curl.h" instead of <curl/curl.h> which thus allows people to more
|
|||
|
freely decide how to include curl and how to setup their include paths.
|
|||
|
|
|||
|
- Sterling Hughes added the curl_share* interface, somewhat as discussed
|
|||
|
previously.
|
|||
|
|
|||
|
- J<>rn Hartroth pointed out that poll() was used in the pre1 source code and
|
|||
|
it isn't very portable, so now I check for it in the configure script and
|
|||
|
work around it.
|
|||
|
|
|||
|
Version 7.9.9-pre1
|
|||
|
|
|||
|
Daniel (12 Aug 2002)
|
|||
|
- Applied my initial take on making the multi stuff more asynchronous. Connects
|
|||
|
should now return back without "hanging" until it has connected for real.
|
|||
|
This should also be the case for FTP-PASV connects.
|
|||
|
|
|||
|
Daniel (9 Aug 2002)
|
|||
|
- Applied Markus F.X.J. Oberhumer's patch that introduces CURLOPT_NOSIGNAL,
|
|||
|
which effectively prevents libcurl from doing anything that may cause
|
|||
|
signals to get sent. This is basicly for multi-threaded applications that
|
|||
|
now can use timeouts properly, without risking any signals to burst in and
|
|||
|
ruin the party.
|
|||
|
|
|||
|
Daniel (5 Aug 2002)
|
|||
|
- Lukasz Czekierda reported that RFC2732-style literal IPv6 addresses didn't
|
|||
|
work. When did that code vanish? Anyway, it's back again now and seems to
|
|||
|
work!
|
|||
|
|
|||
|
- Jonatan Lander found out that POSTing an empty string didn't work with the
|
|||
|
command line tool.
|
|||
|
|
|||
|
Daniel (3 Aug 2002)
|
|||
|
- J<>rn Hartroth fixed the libcurl.def file to build the windows DLL with
|
|||
|
the multi interface enabled.
|
|||
|
|
|||
|
Daniel (1 Aug 2002)
|
|||
|
- The ftp PORT command now uses a better default IP address, as it will
|
|||
|
extract and use the local IP address used by the control connection.
|
|||
|
|
|||
|
- Modified the #include lines in curl/multi.h to work better on more
|
|||
|
platforms.
|
|||
|
|
|||
|
Daniel (31 Jul 2002)
|
|||
|
- Attempted a fix for Ray DeGennaro's reported HP-UX host name resolve
|
|||
|
problems.
|
|||
|
|
|||
|
Daniel (30 Jul 2002)
|
|||
|
- Priya Ramakrishnan and Ryan Jones compiles curl/curl.h with a C++ compiler
|
|||
|
and don't get __STDC__ defined, which required us to extend the preprocessor
|
|||
|
check for the ## operator usage.
|
|||
|
|
|||
|
- Correct the description for CURLOPT_PASSWDFUNCTION, if set to NULL the
|
|||
|
internal default function will be put back.
|
|||
|
|
|||
|
- danfuzz at milk.com found out that libcurl badly assumed a space after
|
|||
|
'Set-Cookie:' so if it wasn't present, it caused the first letter of the
|
|||
|
cookie name to fall off!
|
|||
|
|
|||
|
Daniel (29 Jul 2002)
|
|||
|
- The password prompt asking for user password used stdout and now uses
|
|||
|
stderr instead to better allow redirecting. It also leaked a fopen() file
|
|||
|
handle that is now fixed.
|
|||
|
|
|||
|
Daniel (28 Jul 2002)
|
|||
|
- HAVE_SETVBUF was left out from src/main.c which made -N not work. Found out
|
|||
|
by M T.
|
|||
|
|
|||
|
Daniel (26 Jun 2002)
|
|||
|
- Glen Nakamura solved a crash in the name resolving function for IP-only
|
|||
|
addresses on Alpha Linux (at least).
|
|||
|
|
|||
|
- T. Bharath corrected the high resolution timer introduced in 7.9.8.
|
|||
|
|
|||
|
Daniel (22 Jun 2002)
|
|||
|
- Andr<64>s Garc<72>a pointed out man page errors in curl_formadd.3. I fixed.
|
|||
|
|
|||
|
Daniel (19 Jun 2002)
|
|||
|
- Chris Combes pointed out a flaw in curl_escape(). I fixed. We no longer
|
|||
|
tries to generate nor parse '+' in URLs. Spaces become %20, and only %-codes
|
|||
|
are translated by curl_unescape().
|
|||
|
|
|||
|
Daniel (15 Jun 2002)
|
|||
|
- Added --limit-rate to the curl tool. Allows the user to set a maxmimum
|
|||
|
upper limit to how much bandwidth to use for transfers.
|
|||
|
|
|||
|
- CURLOPT_BUFFERSIZE was added to libcurl. This sets a prefered size for the
|
|||
|
receive buffer in libcurl. The main point of this would be that the write
|
|||
|
callback gets called more often and with smaller chunks.
|
|||
|
|
|||
|
Daniel (14 Jun 2002)
|
|||
|
- Yarram Sunil found out that the SocketIsDead() function performed a lot
|
|||
|
faster on Windows when removing the 1 microsecond timeout.
|
|||
|
|
|||
|
- Hanno L. Kranzhoff fixed the VC++ project files.
|
|||
|
|
|||
|
- Tom Mattison found out that ftp transfers closed the connection a little
|
|||
|
too often.
|
|||
|
|
|||
|
- Miklos Nemeth posted a VC++ makefile fix and some INSTALL comments on how
|
|||
|
to disable specific protocols when building for Windows.
|
|||
|
|
|||
|
Version 7.9.8
|
|||
|
|
|||
|
Daniel (13 Jun 2002)
|
|||
|
- Time to let this baby go.
|
|||
|
|
|||
|
Daniel (12 Jun 2002)
|
|||
|
- Chris Combes added three new options for curl_formadd(): CURLFORM_BUFFER,
|
|||
|
CURLFORM_BUFFERPTR, CURLFORM_BUFFERLENGTH. They are used to create a
|
|||
|
multipart that appears as a regular file upload, but the data is provided
|
|||
|
with a pointer and length.
|
|||
|
|
|||
|
- Nico Baggus made the VMS version use sigsetjmp() too.
|
|||
|
|
|||
|
- J<>rn Hartroth fixed the mingw32 build using the mm lib.
|
|||
|
|
|||
|
- Applied patches by Kris Kennaway that correct format string problems in
|
|||
|
lib/ftp.c and lib/ldap.c.
|
|||
|
|
|||
|
Version 7.9.8-pre3
|
|||
|
|
|||
|
Daniel (11 Jun 2002)
|
|||
|
- James Cone brought the idea of using sigsetjmp() in the signal handler to
|
|||
|
make the time-out of name lookups to work, even when the underlying name
|
|||
|
resolver library traps EINTR. The use of sigsetjmp() and siglongjmp() for
|
|||
|
this may be a bit drastic, and also not likely to exist on all platforms. I
|
|||
|
added careful checking for this in the configure script, even checks for it
|
|||
|
being a macro (which seems to be the case in for example Linux).
|
|||
|
|
|||
|
sigsetjmp() seems to be mentioned in the Single Unix specification.
|
|||
|
|
|||
|
- Miklos Nemeth brought a patch that allows libcurl to get built with specific
|
|||
|
protocols disabled. This is done by running ./configure
|
|||
|
--disable-[protocol].
|
|||
|
|
|||
|
- FTP range downloads could make CURLE_FTP_WRITE_ERROR get returned. We now
|
|||
|
make precautions to not return this for range downloads.
|
|||
|
|
|||
|
Added test case 135 that makes an ftp range download. Had to tweak the
|
|||
|
runtests.pl script a bit too.
|
|||
|
|
|||
|
- Bug report #566835 identified a strlen() on a NULL pointer. Added additional
|
|||
|
check to prevent this.
|
|||
|
|
|||
|
Daniel (10 Jun 2002)
|
|||
|
- Found and corrected a connect failure problem that didn't create a human
|
|||
|
error text.
|
|||
|
|
|||
|
- Added code to compile with OpenSSL 0.9.7. Based on patch from Jacob Meuser
|
|||
|
and comments from G<>tz Babin-Ebell.
|
|||
|
|
|||
|
- Gautam Mani found a socket descriptor leak that happened when FTP transfers
|
|||
|
failed and you reinvoked curl_easy_perform().
|
|||
|
|
|||
|
Daniel (5 Jun 2002)
|
|||
|
- Gustaf Hui corrected curl_multi_remove_handle() so that it won't crash no
|
|||
|
matter when you decide to remove the CURL handle.
|
|||
|
|
|||
|
- HAVE_RAND_STATUS was added to lib/config-win32.h by Andreas Olsson, as it
|
|||
|
makes windows builds stop complaining about "weak seeding" when it in fact
|
|||
|
isn't.
|
|||
|
|
|||
|
- Another 64bit architecture crash that was introduced in 7.9.7 was now
|
|||
|
removed, as bug report #564585 clarified. This happened due to our attempts
|
|||
|
to only allocate only as much memory as is actually needed for name
|
|||
|
resolving (using realloc) which called for a function that could 'move' a
|
|||
|
hostent struct in memory.
|
|||
|
|
|||
|
Version 7.9.8-pre2
|
|||
|
|
|||
|
Daniel (3 Jun 2002)
|
|||
|
- T. Bharath fixed the CURLINFO_REDIRECT_TIME to return a correct time and
|
|||
|
made the CURLINFO_REQUEST_SIZE return the correct total request size. He
|
|||
|
also made the win32 timers use higher resolution than before.
|
|||
|
|
|||
|
Daniel (29 May 2002)
|
|||
|
- Renaud Chaillat made me aware of the fact that libcurl returned an error if
|
|||
|
you tried to get an empty FTP file. This seemed like a wrong thing to do, so
|
|||
|
now it no longer does that! I just hope that no one built anything fancy
|
|||
|
upon this unexpected behavior...
|
|||
|
|
|||
|
Daniel (28 May 2002)
|
|||
|
- Cris Bailiff brought CURLOPT_CAPATH that works like CURLOPT_CAINFO but
|
|||
|
specifies a path to a directory with certificates rather than a single file
|
|||
|
with them all concatenated. --capath was added to the command line tool
|
|||
|
for the same function.
|
|||
|
|
|||
|
Windows users need to pay attention that the directory should be setup with
|
|||
|
the c_rehash tool of the OpenSSL package, and that creates symlinks by
|
|||
|
default that need to be replaced with actual copies to work on Windows.
|
|||
|
|
|||
|
- Gustaf Hui provided new code that changes how curl_multi_info_read()
|
|||
|
messages are stored, so that they don't have to be kept around for the multi
|
|||
|
handle's entire life time. He also made it return failure codes properly
|
|||
|
which it didn't do before.
|
|||
|
|
|||
|
Daniel (27 May 2002)
|
|||
|
- Gustaf Hui pointed out that running curl_multi_perform() without doing
|
|||
|
curl_multi_fdset() first was not really a working combo. I added an internal
|
|||
|
check for this and have some extra select() code without timeout to make the
|
|||
|
library internals work identically nevertheless. We might need to somehow
|
|||
|
either document that once you've used the *_fdset() you should remain using
|
|||
|
them in select() or you should blank them somehow so that libcurl won't go
|
|||
|
crazy.
|
|||
|
|
|||
|
Version 7.9.8-pre1
|
|||
|
|
|||
|
Daniel (22 May 2002)
|
|||
|
- James Cone brought an excellent patch, including several tests and docs!
|
|||
|
CURLOPT_NETRC now takes an enum as argument instead of the previous boolean.
|
|||
|
--netrc-optional was introduced as an addition to --netrc to allow the
|
|||
|
command line client to take use of all that new netrc stuff.
|
|||
|
|
|||
|
- Bug report #558888 showed a case where libcurl re-used the previous host
|
|||
|
name when a connection over a proxy was re-used but to a different target
|
|||
|
host.
|
|||
|
|
|||
|
Daniel (21 May 2002)
|
|||
|
- Edin Kadribasic helped me sort out a problem to made libcurl crash when
|
|||
|
trying to HTTP POST an empty string.
|
|||
|
|
|||
|
- Clarified that Juergen Wilke donated the original tests/server/sws.c code.
|
|||
|
|
|||
|
- Jean-Philippe Barrette-LaPierre made curl_formadd() return a typedef named
|
|||
|
CURLFORMcode instead of the previous 'int', and the various return codes are
|
|||
|
now globally exported. It allows applications to better figure out what goes
|
|||
|
wrong when curl_formadd() returns errors.
|
|||
|
|
|||
|
Daniel (20 May 2002)
|
|||
|
- Roland Zimmermann pointed out that SSL_CTX_use_certificate_chain_file()
|
|||
|
is prefered to SSL_CTX_use_certificate_file().
|
|||
|
|
|||
|
Daniel (17 May 2002)
|
|||
|
- Bug report #556869 pointed out that src/writeout.c didn't compile on freebsd
|
|||
|
after my AIX fixes the other week.
|
|||
|
|
|||
|
- Bug report #556930 pointed out a FreeBSD core dump introduced in 7.9.7 in
|
|||
|
the DNS struct realloc stuff. Actually, this crash could happen on all
|
|||
|
systems that made the pack_hostent() function get invoked.
|
|||
|
|
|||
|
- I removed several compiler warnings in the test suite's HTTP server.
|
|||
|
|
|||
|
Version 7.9.7
|
|||
|
|
|||
|
Daniel (10 May 2002)
|
|||
|
- Kevin Roth adjusted the --trace-ascii output slightly.
|
|||
|
|
|||
|
- Paul Harrington found out that src/writeout.c needed an additional header
|
|||
|
file included for AIX builds
|
|||
|
|
|||
|
Version 7.9.7-pre2
|
|||
|
|
|||
|
Daniel (7 May 2002)
|
|||
|
- Updated the man page with --trace-ascii and -j/--junk-session-cookies.
|
|||
|
|
|||
|
- Made --trace-ascii do pretty much the same as --trace but without the hex
|
|||
|
part in the output.
|
|||
|
|
|||
|
- Added CURLOPT_COOKIESESSION that when enabled makes libcurl ignore session
|
|||
|
cookies read from a file. This option is enforced by the curl command line
|
|||
|
tool using the new -j/--junk-session-cookies option. After discussions with
|
|||
|
Kevin Roth. This makes it easier to use curl to fully emulate a browser's
|
|||
|
behavior, even when it comes to "session cookies". Session cookies are
|
|||
|
cookies that a normal browser discards when the browser is shut
|
|||
|
down. They're identified by not having any expire date/time.
|
|||
|
|
|||
|
- When CURLOPT_DEBUGDATA was set, it ruined the CURLOPT_STDERR setting and
|
|||
|
this was discovered when --trace was made to crash.
|
|||
|
|
|||
|
- Using -v and --trace at the same time confused matters. -v is now pretty
|
|||
|
much ignored when --trace or --trace-ascii is used.
|
|||
|
|
|||
|
- Made --trace (and --trace-ascii) support - as file name to pass output to
|
|||
|
stdout instead. It makes it consistent with how other options work.
|
|||
|
|
|||
|
Version 7.9.7-pre1
|
|||
|
|
|||
|
Daniel (6 May 2002)
|
|||
|
- Added multi-post.c to the examples directory. I got the basic source for
|
|||
|
this from Gustaf Hui.
|
|||
|
|
|||
|
Daniel (3 May 2002)
|
|||
|
- CURL_MAX_WRITE_SIZE is now an exported #define in the curl/curl.h header and
|
|||
|
can be used to figure out the maximum buffer size your write callback can
|
|||
|
get.
|
|||
|
|
|||
|
- CURLOPT_READDATA is now an alias for CURLOPT_INFILE and CURLOPT_WRITEDATE is
|
|||
|
an alias for CURLOPT_FILE. These two were added for conformity. Most other
|
|||
|
callback function's userdata are provided with options using a similar name-
|
|||
|
scheme.
|
|||
|
|
|||
|
- Added "--trace [file]" to the command line tool. It makes a very detailed
|
|||
|
trace dump get stored, with a full protocol dump that includes all received
|
|||
|
and transmitted data. This could be a very effective tool for debugging what
|
|||
|
goes wrong. This dump includes every byte the way it is sent to/received
|
|||
|
from the server. The dump is the plain-text version, so SSL transfers will
|
|||
|
still be readable.
|
|||
|
|
|||
|
- I found out that the DEBUGFUNCTION was not called properly everywhere as we
|
|||
|
wanted it to. I fixed it.
|
|||
|
|
|||
|
- -D now stores all headers to the same file if multiple URLs are given on the
|
|||
|
command line! Kevin Roth made me aware of that it didn't already do this!
|
|||
|
|
|||
|
- Gustaf Hui wrote an excellent formpost example that used the multi
|
|||
|
interface. Unfortunately, it didn't work due to several bugs in how
|
|||
|
transfers were made when the multi interface was used.
|
|||
|
|
|||
|
Daniel (2 May 2002)
|
|||
|
- Hanno Kranzhoff found out that when doing multiple transfers on the same
|
|||
|
easy handle, the progress meter would show a bad "currently downloaded
|
|||
|
value" when the transfer starts.
|
|||
|
|
|||
|
Daniel (1 May 2002)
|
|||
|
- Applied another patch by Jacky Lam to make the name resolve info realloc()
|
|||
|
stuff work properly.
|
|||
|
|
|||
|
Daniel (28 April 2002)
|
|||
|
- curl_multi_info_read() is now implemented!
|
|||
|
|
|||
|
Daniel (27 April 2002)
|
|||
|
- Updated BUGS, TODO, FAQ, INSTALL and added BINDINGS.
|
|||
|
|
|||
|
- I think I fixed the DNS cache prune crach Jacky Lam found and reported.
|
|||
|
|
|||
|
- I cleaned up the name prefix stuff in the hash and llist modules.
|
|||
|
|
|||
|
- FTP responses should now be better on timing out properly. The timeout value
|
|||
|
is maximum timeout for the entire request operation, but before this, the
|
|||
|
timeout was used as a maximum allowed time between two reads...
|
|||
|
|
|||
|
Daniel (26 April 2002)
|
|||
|
- Fixed the test suite http server to not use snprintf() anymore due to better
|
|||
|
portability.
|
|||
|
|
|||
|
Daniel (25 April 2002)
|
|||
|
- With Sterling Hughes' new DNS pruning, Jacky Lam asked if this wouldn't
|
|||
|
cause problems since the pruning is only checking the entry time, and it
|
|||
|
sure could cause problems. Therefor, I've now added and changed code so that
|
|||
|
this should not be a problem. Nowhere in the code will be store name
|
|||
|
resolved information around so that a sunsequent DNS cache prune should
|
|||
|
cause a problem. This of course called for some mild internal changes.
|
|||
|
|
|||
|
Daniel (23 April 2002)
|
|||
|
- Improved the 'no_proxy' check, as using port numbers in the URL confused it
|
|||
|
previously. Reported by Erwan Legrand in bug report #547484.
|
|||
|
|
|||
|
- The --interface option now works even on IPv6 enabled builds. Reported by
|
|||
|
'thor'.
|
|||
|
|
|||
|
Daniel (22 April 2002)
|
|||
|
- The #defines names starting with TIMECOND now has CURL_ prefixes. (The old
|
|||
|
names are still #defined too.) Pointed out by Robert Olson.
|
|||
|
|
|||
|
- Jacky Lam brought code that lets the name resolve function only use as much
|
|||
|
memory as it actually needs. This only works on certain operating systems,
|
|||
|
but is totally transparant to all users.
|
|||
|
|
|||
|
Daniel (19 April 2002)
|
|||
|
- Bjorn Reese fixed pack_hostent to work properly with 64 bit pointers.
|
|||
|
|
|||
|
Daniel (18 April 2002)
|
|||
|
- Sterling Hughes added code to prune old DNS cache entries, since Jacky Lam
|
|||
|
experienced very big caches.
|
|||
|
|
|||
|
Daniel (17 April 2002)
|
|||
|
- Dirk Manske patched the 301 response to work against the RFC but more like
|
|||
|
common browsers do. If a POST get a 301 back, it'll switch to GET in the
|
|||
|
next request (if location-following is enabled).
|
|||
|
|
|||
|
Daniel (16 April 2002)
|
|||
|
- Dirk Manske posted a patch originally written by Ingo Wilken that introduced
|
|||
|
two new CURLINFO_* values: CURLINFO_REDIRECT_TIME and
|
|||
|
CURLINFO_REDIRECT_COUNT.
|
|||
|
|
|||
|
Daniel (15 April 2002)
|
|||
|
- Jonatan Lander patched the verbose text 'Disables POST, goes with GET' to
|
|||
|
reflect reality better, like when the first request isn't POST and when
|
|||
|
the second isn't GET... :-)
|
|||
|
|
|||
|
- Craig Davison pointed out that when curl_formadd()ing a file that doesn't
|
|||
|
exist, libcurl doesn't return error. Now, curl_easy_perform() will return
|
|||
|
CURLE_READ_ERROR if that is the case. Test 41 was added to verify this.
|
|||
|
|
|||
|
Version 7.9.6
|
|||
|
|
|||
|
Daniel (14 April 2002)
|
|||
|
- Dirk Manske brought a fix that makes libcurl strip off white spaces from the
|
|||
|
beginning of cookie contents.
|
|||
|
|
|||
|
- Had to patch include/curl/curl.h since MSVC doesn't set the __STDC__ define.
|
|||
|
Moonesamy pointed out the problem, Bjorn Reese the solution.
|
|||
|
|
|||
|
Version 7.9.6-pre5
|
|||
|
|
|||
|
Daniel (12 April 2002)
|
|||
|
- Fixed the TIMER_CONNECT to be more accurate for FTP transfers. Previously
|
|||
|
FTP transfers got the "connect done" time set after the initial FTP commands
|
|||
|
and not directly after the TCP/IP connect as it should.
|
|||
|
|
|||
|
I also made the time stamp get set even if the connect itself fails, which
|
|||
|
it didn't do previously.
|
|||
|
|
|||
|
- Jean-Philippe Barrette-LaPierre provided his patch that introduces
|
|||
|
CURLOPT_DEBUGFUNCTION and CURLOPT_DEBUGDATA. They allow a program to a set a
|
|||
|
callback to receive debug/information data. That includes headers and data
|
|||
|
that is received and sent. CURLOPT_VERBOSE still controls it.
|
|||
|
|
|||
|
By default, there is an internal debugfunction that will make things look
|
|||
|
and work as before if not changed.
|
|||
|
|
|||
|
Daniel (10 April 2002)
|
|||
|
- Sebastien Willemijns found out that -x didn't use the default port number as
|
|||
|
is documented. It does now.
|
|||
|
|
|||
|
- libcurl-errors.3 is a new man page attempting to document all libcurl error
|
|||
|
codes
|
|||
|
|
|||
|
- Added two new error codes and changed the behaviour of two old ones
|
|||
|
slightly:
|
|||
|
|
|||
|
CURLE_WRITE_ERROR
|
|||
|
This error was returned *both* for errors that occured when writing
|
|||
|
received data to a local file, as well as when we get problems writing data
|
|||
|
to a remote server. CURLE_SEND_ERROR has now been added for the latter
|
|||
|
error.
|
|||
|
|
|||
|
CURLE_READ_ERROR
|
|||
|
This error was similarly returned *both* for errors when reading a local
|
|||
|
file, as well as when getting problems when reading network data.
|
|||
|
CURLE_RECV_ERROR has now been added for the latter error.
|
|||
|
|
|||
|
(Two test cases were adjusted accordingly.)
|
|||
|
|
|||
|
Daniel (9 April 2002)
|
|||
|
- runtests.pl now sets the HOME variable before running curl, to prevent any
|
|||
|
actual ~/.curlrc file to fool the tests!
|
|||
|
|
|||
|
Version 7.9.6-pre4
|
|||
|
|
|||
|
Daniel (8 April 2002)
|
|||
|
- Michael Curtis provided new functionality for curl on some platforms. Using
|
|||
|
the --environment option, curl will *set* a bunch of environment variables
|
|||
|
to values. The names are the same ones as for the -w/--writeout option.
|
|||
|
|
|||
|
For now, this only works on the RISC OS version, as this feature relies on
|
|||
|
both OS support and that it matches OS paradigms.
|
|||
|
|
|||
|
- Jacky Lam provided a fix for getting headers-only when the reply is HTTP/1.0
|
|||
|
and 304, I edited it slightly.
|
|||
|
|
|||
|
Daniel (5 April 2002)
|
|||
|
- As requested by Jay Graves, the '.curlrc' file (or _curlrc as it is called
|
|||
|
when used in windows), is now loaded from the current directory if the HOME
|
|||
|
environment variable isn't set (or if it is too long). I also enlarged the
|
|||
|
array used to store the full file path in, to 512 bytes.
|
|||
|
|
|||
|
- Kevin Roth pointed out to me why the "19 March" change regarding -G and -I
|
|||
|
was stupid and the change was reverted. Added test case 48 to verify the
|
|||
|
functionality.
|
|||
|
|
|||
|
Version 7.9.6-pre3
|
|||
|
|
|||
|
Daniel (4 April 2002)
|
|||
|
- Jonatan Lander brought a patch that makes curl/curl.h compile nicely on
|
|||
|
pre-ISO compilers, like when using gcc -traditional.
|
|||
|
|
|||
|
Daniel (3 April 2002)
|
|||
|
- Jacky Lam identified a glitch when getting headers-only, where libcurl would
|
|||
|
"hang" 1 second in vain in the select() loop before returning back.
|
|||
|
|
|||
|
- Tor Arntsen brought a patch for multipart formposts. It turned out that the
|
|||
|
"CGI_Lite Perl package" makes some bad assumptions on what letters that may
|
|||
|
be used in boundary strings and thus curl could confuse it by including '+'
|
|||
|
and '/'. While this is standards-compliant, we change the behavior to work
|
|||
|
smoothly with existing software based on that package.
|
|||
|
|
|||
|
Daniel (2 April 2002)
|
|||
|
- Gerhard Herre filed bug report #536238 where he pointed out a crash in
|
|||
|
verbose FTP passive transfers for AIX.
|
|||
|
|
|||
|
- Clarence Gardner pointed out a minor flaw in how libcurl didn't properly
|
|||
|
take care of all errors that SSL_read() could return.
|
|||
|
|
|||
|
- Jacky Lam fixed a MALLOCDEBUG problem in lib/getinfo.c
|
|||
|
|
|||
|
Daniel (27 March 2002)
|
|||
|
- T. Bharath pointed out a flaw in the connection re-use function that didn't
|
|||
|
check proxy connections properly for "deadness" before they were re-used.
|
|||
|
|
|||
|
- Pedro Neves found out that HTTP POSTing with --data-binary did not properly
|
|||
|
work under Windows as the file specified wasn't read fully binary!
|
|||
|
|
|||
|
Daniel (25 March 2002)
|
|||
|
- Jacky Lam brought a fix that improves treatment of cookies using identical
|
|||
|
domains but with leading dots properly.
|
|||
|
|
|||
|
Daniel (22 March 2002)
|
|||
|
- Miklos Nemeth updated the windows section of the docs/INSTALL file and the
|
|||
|
windows makefiles.
|
|||
|
|
|||
|
- Jon Dillon provided us with several good-looking curl images for
|
|||
|
promotion. View them here http://curl.haxx.se/icons.html
|
|||
|
|
|||
|
Daniel (20 March 2002)
|
|||
|
- Peter Verhas found out that CRLF replacement in uploads was not working. I
|
|||
|
fixed it, and added test case 128 that verifies the functionality.
|
|||
|
|
|||
|
- The list formerly known as curl-main is now named curl-users and is hosted
|
|||
|
by sourceforge. Susbcribe to the new list, get off the old one.
|
|||
|
|
|||
|
Version 7.9.6-pre2
|
|||
|
|
|||
|
Daniel (19 March 2002)
|
|||
|
- Made -G and -I on the same command line cause an error.
|
|||
|
|
|||
|
- Moved the multi.h file to the "public" include directory and made it get
|
|||
|
included by curl.h so that no extra include files will be necessary to use
|
|||
|
it.
|
|||
|
|
|||
|
Added docs and man pages for the multi interface to the release archive.
|
|||
|
Added the three example source codes too.
|
|||
|
|
|||
|
Necessary steps in my campaign to sneak in the multi interface... ;-)
|
|||
|
|
|||
|
- Updated the year in all copyright notices in all C and H files.
|
|||
|
|
|||
|
Daniel (18 March 2002)
|
|||
|
- Tomas Szepe found out that -d and -G didn't mix as they should. I broke this
|
|||
|
in 7.9.5... Added test case 32 for this.
|
|||
|
|
|||
|
Version 7.9.6-pre1
|
|||
|
|
|||
|
Daniel (16 March 2002)
|
|||
|
- Peter Verhas pointed out that the curl_escape and curl_unscape man pages
|
|||
|
contained factual errors.
|
|||
|
|
|||
|
- Albert Choy found and corrected a problem with the verbose output when doing
|
|||
|
PASV ftp transfers. It could make libcurl crash.
|
|||
|
|
|||
|
Details in bug report #530562:
|
|||
|
http://sourceforge.net/tracker/?func=detail&atid=100976&aid=530562&group_id=976
|
|||
|
|
|||
|
Daniel (15 March 2002)
|
|||
|
- Jun-ichiro itojun Hagino filed bug report #530204 that clearly pointed out
|
|||
|
the PF_INET fix from February 19 as a not-very-good fix as it broke IPv6
|
|||
|
capability! That patch is now reverted.
|
|||
|
|
|||
|
The problem with slow name lookups with getaddrinfo() on non-IPv6 enabled
|
|||
|
hosts are instead made by first checking if the stack is IPv6-enabled and if
|
|||
|
not, the PF_INET is used and otherwise we go with the full PF_UNSPEC.
|
|||
|
|
|||
|
- T. Bharath pointed out that when we return an "error" from a WRITEFUNCTION
|
|||
|
as described in the man page, libcurl did not return the documented error
|
|||
|
code (CURLE_WRITE_ERROR) but would instead return CURLE_READ_ERROR. This is
|
|||
|
now corrected.
|
|||
|
|
|||
|
Daniel (14 March 2002)
|
|||
|
- Setting CURLOPT_POST without setting CURLOPT_POSTFIELDS now read the POST-
|
|||
|
data from the callback.
|
|||
|
|
|||
|
- The GOPHER support seems to be broken. I don't think I'll even start fixing
|
|||
|
it until someone else finds out... :-)
|
|||
|
|
|||
|
Daniel (13 March 2002)
|
|||
|
- Trying 'curl -I ftp.sunet.se' or similar did a SIZE on a silly "(nil)"
|
|||
|
string. If such a file would be present, curl returned the size of it! Now
|
|||
|
we prevent this.
|
|||
|
|
|||
|
- Curl_sendf() was fixed to deal with situation where Curl_write() would've
|
|||
|
blocked and thus return -1.
|
|||
|
|
|||
|
- Setting CURLOPT_PROGRESSFUNCTION to NULL now restores the internal function.
|
|||
|
|
|||
|
- All CURLFORM_* options can now be used in a CURLFORM_ARRAY except the
|
|||
|
CURLFORM_ARRAY itself. This was necessary since we couldn't expand the
|
|||
|
CURLFORM_* list proprely and unrestricted until this was the case. It was
|
|||
|
also a bit peculiar to users why some options could be used in an array
|
|||
|
while others couldn't.
|
|||
|
|
|||
|
- Removed some silly CRLF lines that had accidentally slipped into src/main.c
|
|||
|
Nico Baggus pointed them out to me.
|
|||
|
|
|||
|
Daniel (11 March 2002)
|
|||
|
- CURLFORM_FILENAME was added. This can be set when creating a file upload
|
|||
|
part, to set the 'filename' field to a custom value. If this isn't used,
|
|||
|
the actually used filename will be included instead (as libcurl always has
|
|||
|
done). curl was adjusted accordingly, and now -F accepts a 'filename=' field
|
|||
|
too, and allows constructs such as:
|
|||
|
|
|||
|
-F 'name=@filename;filename=/dev/null'
|
|||
|
|
|||
|
and this can be combined with type= too, in a manner similar to:
|
|||
|
|
|||
|
-F "file=@log/test39.txt;filename=fakerfile;type=moo/foobar"
|
|||
|
|
|||
|
Test case 39 was added to verify this functionality.
|
|||
|
|
|||
|
- The struct formerly known as HttpPost is now named curl_httppost to properly
|
|||
|
use the curl name space. I added a #define for the old name to make existing
|
|||
|
programs compile even when this new include file is used.
|
|||
|
|
|||
|
Daniel (8 March 2002)
|
|||
|
- Clifford also discovered that if the client code failed early, as when doing
|
|||
|
"curl -O" only, it would do fclose(NULL) which caused a segmentation fault
|
|||
|
on some systems.
|
|||
|
|
|||
|
- Clifford Wolf provided a patch that made --progress-bar work again.
|
|||
|
|
|||
|
- I closed bug report #527032 by making sure that we add a newline after a
|
|||
|
transfer when --progress-bar has been used. Before, without the newline, it
|
|||
|
made the subsequent text come out wrong.
|
|||
|
|
|||
|
Version 7.9.5
|
|||
|
|
|||
|
Daniel (7 March 2002)
|
|||
|
- Added docs/KNOWN_BUGS to the release archive.
|
|||
|
|
|||
|
Daniel (6 March 2002)
|
|||
|
- Kevin Roth corrected a flaw in the curl client globbing code that made it
|
|||
|
mess up backslashes. This was most notable on windows (cygwin) machines when
|
|||
|
using file://.
|
|||
|
|
|||
|
- Brad provided another fix for building outside the source-tree.
|
|||
|
|
|||
|
- Ralph Mitchell patched away a few compiler warnings in tests/server/sws.c
|
|||
|
|
|||
|
Daniel (5 March 2002)
|
|||
|
- I noticed that the typedef in curl.h for the progress callback prototype was
|
|||
|
wrong and thus applications that used it would not get the proper input
|
|||
|
data. It used size_t where the implementation actually uses doubles!
|
|||
|
|
|||
|
I wish I could blame someone else, but this was my fault. Again.
|
|||
|
|
|||
|
Version 7.9.5-pre6
|
|||
|
|
|||
|
Daniel (4 March 2002)
|
|||
|
- Cut off the changes done during 2001 from this changelog file and put them
|
|||
|
in a separate file (CHANGES.2001), available from CVS of course.
|
|||
|
|
|||
|
- I removed the multi directory. The example sources were moved to the
|
|||
|
docs/examples directory where they belong.
|
|||
|
|
|||
|
- Wrote 7 new man pages for the current functions in the new multi interface.
|
|||
|
They're all still pretty basic, but we can use them as a start and add more
|
|||
|
contents to them when we figure out what to write. The large amount of man
|
|||
|
pages for libcurl now present made me decide to put them in a new separate
|
|||
|
subdirectory in the docs directory. Named libcurl.
|
|||
|
|
|||
|
- Giuseppe Corbelli provided a template file for the EPM package manager, it
|
|||
|
gets generated nicely by the configure script now.
|
|||
|
|
|||
|
Version 7.9.5-pre5
|
|||
|
|
|||
|
Daniel (1 March 2002)
|
|||
|
- Moved the memanalyze.pl script into the tests/ dir and added it to the
|
|||
|
release archives. It was previously only present in the CVS tree.
|
|||
|
|
|||
|
- Modified the February 17th Host: fix, as bug report #523718 pointed out that
|
|||
|
it caused crashes!
|
|||
|
|
|||
|
- Nico Baggus added more error codes to the VMS stuff.
|
|||
|
|
|||
|
- Wesley Laxton brought the code that introduced the new CURLOPT_PREQUOTE
|
|||
|
option. It is just another FTP quote option that allows the user to specify
|
|||
|
a list of FTP commands to issue *just before* the transfer command (RETR or
|
|||
|
STOR etc). It has turned up a few systems that really need this.
|
|||
|
|
|||
|
The curl command line tool can also take advantage of this by prefixing the
|
|||
|
quote commands with a plus (+) in similar style that post transfer quote
|
|||
|
commands are specified.
|
|||
|
|
|||
|
This is not yet documented. There is no test case for this yet.
|
|||
|
|
|||
|
Daniel (28 February 2002)
|
|||
|
- Ralph Mitchell made some serious efforts and put a lot of sweat in setting
|
|||
|
up scripts and things for me to be able to repeat his problems, and I
|
|||
|
finally could. I found a problem with the header byte counter that wasn't
|
|||
|
increased properly and thus we could return CURLE_GOT_NOTHING when we in
|
|||
|
fact had received data.
|
|||
|
|
|||
|
Daniel (27 February 2002)
|
|||
|
- I had to revert the non-space parsing cookie fix I posted to the mailing
|
|||
|
list. Expire dates do have spaces and still need to get parsed properly!
|
|||
|
Instead we just ignore trailing white space and it seems to work...
|
|||
|
|
|||
|
Daniel (26 February 2002)
|
|||
|
- Made the cookie property 'Max-Age' work, just since we already tried to
|
|||
|
support it, it is better to do it right. No one uses this anyway.
|
|||
|
|
|||
|
- The cookie parser could crash if a really weird (illegal) cookie line was
|
|||
|
received. I also made it better discard really oddly formatted lines better.
|
|||
|
|
|||
|
Made the cookie jar store the second field from the left using the syntax
|
|||
|
that Netscape and Mozilla probably like. Curl itself ignores it.
|
|||
|
|
|||
|
Added test case 31 for these cases.
|
|||
|
|
|||
|
Clay Loveless' email regarding some cookie issues started my cleanup.
|
|||
|
|
|||
|
- Kevin Roth pointed out that my automake fiddles broke the ability to build
|
|||
|
outside the source-tree and I posted a patch to the mailing list that brings
|
|||
|
this ability back.
|
|||
|
|
|||
|
Version 7.9.5-pre4
|
|||
|
|
|||
|
Daniel (25 February 2002)
|
|||
|
- Fiddled with the automake files to make all source files in the lib
|
|||
|
directory not have ../src in the include path, and the src sources shouldn't
|
|||
|
have ../lib!
|
|||
|
|
|||
|
- All 79 test cases ran OK under Linux and Solaris using the new HTTP server
|
|||
|
in the test suite. The new HTTP server was first donated by Georg Horn and
|
|||
|
subsequently modified to work with the test suite. It is currently still not
|
|||
|
portable enough to run on "all over" but this is a start and I can run all
|
|||
|
curl tests on my machines. This is an important requirement for the upcoming
|
|||
|
public release.
|
|||
|
|
|||
|
- Using -d and -I on the same command line now reports an error, as it implies
|
|||
|
two different HTTP requests that can't be mixed.
|
|||
|
|
|||
|
- Jeffrey Pohlmeyer provided a patch that made the -w/--write-out option
|
|||
|
support %{content_type} to get the content type of the recent download.
|
|||
|
|
|||
|
- Kevin Roth reported that pre2 and pre3 didn't compile properly on cygwin,
|
|||
|
and this was because I used #ifdef HAVE_WINSOCK_H in lib/multi.h to figure
|
|||
|
out if we could include winsock.h which turns out not to be a wise choice to
|
|||
|
do on cygwin since it has the file but can't include it!
|
|||
|
|
|||
|
Daniel (22 February 2002)
|
|||
|
- Added src/config-vms.h to the release archive.
|
|||
|
|
|||
|
- Fixed the connection timeout value again, the change from February 18 wasn't
|
|||
|
complete.
|
|||
|
|
|||
|
Version 7.9.5-pre3
|
|||
|
|
|||
|
Daniel (21 February 2002)
|
|||
|
- Kevin Roth and Andr<64>s Garc<72>a both found out that lib/config.h.in was missing
|
|||
|
in the pre-release archive and thus the configure script failed.
|
|||
|
|
|||
|
Version 7.9.5-pre2
|
|||
|
|
|||
|
Daniel (20 February 2002)
|
|||
|
- Andr<64>s Garc<72>a provided a solution to bug report #515228. the total time
|
|||
|
counter was not set correctly when -I was used during some conditions (all
|
|||
|
headers were read in one single read).
|
|||
|
|
|||
|
- Nico Baggus provided a huge patch with minor tweaks all over to make curl
|
|||
|
compile nicely on VMS.
|
|||
|
|
|||
|
Daniel (19 February 2002)
|
|||
|
- Rick Richardson found out that by replacing PF_UNSPEC with PF_INET in the
|
|||
|
getaddrinfo() calls, he could speed up some name resolving calls with an
|
|||
|
order of magnitudes on his Redhat Linux 7.2.
|
|||
|
|
|||
|
- Philip Gladstone found a second INADDR_NONE problem where we used long
|
|||
|
intead of in_addr_t which caused 64bit problemos. We really shouldn't define
|
|||
|
that on two different places.
|
|||
|
|
|||
|
Daniel (18 February 2002)
|
|||
|
- Philip Gladstone found a problem in how HTTP requests were sent if the
|
|||
|
request couldn't be sent all at once.
|
|||
|
|
|||
|
- Emil found and corrected a bad connection timeout comparison that made curl
|
|||
|
use the longest of connect-timeout and timout as a timeout value, instead of
|
|||
|
the shortest as it was supposed to!
|
|||
|
|
|||
|
- Aron Roberts provided updated information about LDAP URL syntax to go into
|
|||
|
the manual as a replacement for the old references.
|
|||
|
|
|||
|
Daniel (17 February 2002)
|
|||
|
- Philip Gladstone pointed out two missing include files that made curl core
|
|||
|
dump on 64bit architectures. We need to pay more attention on these details.
|
|||
|
It is *lethal* to for example forget the malloc() prototype, as 'int' is
|
|||
|
32bit and malloc() must return a 64bit pointer on these platforms.
|
|||
|
|
|||
|
- Giaslas Georgios fixed a problem with Host: headers on repeated requests on
|
|||
|
the same handle using a proxy.
|
|||
|
|
|||
|
Daniel (8 February 2002)
|
|||
|
- Hanno L. Kranzhoff accurately found out that disabling the Expect: header
|
|||
|
when doing multipart formposts didn't work very well. It disabled other
|
|||
|
parts of the request header too, resulting in a broken header. When I fixed
|
|||
|
this, I also noticed that the Content-Type wasn't possible to disable. It is
|
|||
|
now, even though it probably is really stupid to try to do this (because of
|
|||
|
the boundary string that is included in the internally generated header,
|
|||
|
used as form part separator.)
|
|||
|
|
|||
|
Daniel (7 February 2002)
|
|||
|
- I moved the config*.h files from the root directory to the lib/ directory.
|
|||
|
|
|||
|
- I've added the new test suite HTTP server to the CVS repository, It seems to
|
|||
|
work pretty good now, but we must make it get used by the test scripts
|
|||
|
properly and then we need to make sure that it compiles, builds and runs on
|
|||
|
most operating systems.
|
|||
|
|
|||
|
Version 7.9.5-pre1
|
|||
|
|
|||
|
Daniel (6 February 2002)
|
|||
|
- Miklos Nemeth provided updated windows makefiles and INSTALL docs.
|
|||
|
|
|||
|
- Mr Larry Fahnoe found a problem with formposts and I managed to track down
|
|||
|
and patch this bug. This was actually two bugs, as the posted size was also
|
|||
|
said to be two bytes too large.
|
|||
|
|
|||
|
- Brent Beardsley found out and brought a correction for the
|
|||
|
CURLINFO_CONTENT_TYPE parser that was off one byte. This was my fault, I
|
|||
|
accidentaly broke Giaslas Georgios' patch.
|
|||
|
|
|||
|
Daniel (5 February 2002)
|
|||
|
- Kevin Roth found yet another SSL download problem.
|
|||
|
|
|||
|
Version 7.9.4
|
|||
|
|
|||
|
- no changes since pre-release
|
|||
|
|
|||
|
Version 7.9.4-pre2
|
|||
|
|
|||
|
Daniel (3 February 2002)
|
|||
|
- Eric Melville provided a few spelling corrections in the curl man page.
|
|||
|
|
|||
|
Daniel (1 February 2002)
|
|||
|
- Andreas Damm corrected the unconditional use of gmtime() in getdate, it now
|
|||
|
uses gmtime_r() on all hosts that have it.
|
|||
|
|
|||
|
Daniel (31 January 2002)
|
|||
|
- An anonymous bug report identified a problem in the DNS caching which made it
|
|||
|
sometimes allocate one byte too little to store the cache entry in. This
|
|||
|
happened when the port number started with 1!
|
|||
|
|
|||
|
- Albert Chin provided a patch that improves the gethostbyname_r() configure
|
|||
|
check on HP-UX 11.00.
|
|||
|
|
|||
|
Version 7.9.4-pre1
|
|||
|
|
|||
|
Daniel (30 January 2002)
|
|||
|
- Georg Horn found another way the SSL reading failed due to the non-blocking
|
|||
|
state of the sockets! I fixed.
|
|||
|
|
|||
|
Daniel (29 January 2002)
|
|||
|
- Multipart formposts now send the full request properly, including the CRLF.
|
|||
|
They were previously treated as part of the post data.
|
|||
|
|
|||
|
- The upload byte counter bugged.
|
|||
|
|
|||
|
- T. Bharath pointed out that we seed SSL on every connect, which is a time-
|
|||
|
consuming operation that should only be needed to do once. We patched
|
|||
|
libcurl to now only seed on the first connect when unseeded. The seeded
|
|||
|
status is global so it'll now only happen once during a program's life time.
|
|||
|
|
|||
|
If the random_file or egdsocket is set, the seed will be re-made though.
|
|||
|
|
|||
|
- Giaslas Georgios introduced CURLINFO_CONTENT_TYPE that lets
|
|||
|
curl_easy_getinfo() read the content-type from the previous request.
|
|||
|
|
|||
|
Daniel (28 January 2002)
|
|||
|
- Kjetil Jacobsen found a way to crash curl and after much debugging, it
|
|||
|
turned out it was a IPv4-linux only problem introduced in 7.9.3 related to
|
|||
|
name resolving.
|
|||
|
|
|||
|
- Andreas Damm posted a huge patch that made the curl_getdate() function fully
|
|||
|
reentrant!
|
|||
|
|
|||
|
- Steve Marx pointed out that you couldn't mix CURLOPT_CUSTOMREQUEST with
|
|||
|
CURLOPT_POSTFIELDS. You can now!
|
|||
|
|
|||
|
Daniel (25 January 2002)
|
|||
|
- Krishnendu Majumdar pointed out that the header length counter was not reset
|
|||
|
between multiple requests on the same handle.
|
|||
|
|
|||
|
- Pedro Neves rightfully questioned why curl always append \r\n to the data
|
|||
|
that is sent in HTTP POST requests. Unfortunately, this broke the test suite
|
|||
|
as the test HTTP server is lame enough not to deal with this... :-O
|
|||
|
|
|||
|
- Following Location: headers when the connection didn't close didn't work as
|
|||
|
libcurl didn't properly stop reading. This problem was added in 7.9.3 due to
|
|||
|
the restructured internals. 'Frank' posted a bug report about this.
|
|||
|
|
|||
|
Daniel (24 January 2002)
|
|||
|
- Kevin Roth very quickly spotted that we wrongly installed the example
|
|||
|
programs that were built in the multi directory, when 'make install' was
|
|||
|
used. :-/
|
|||
|
|
|||
|
Version 7.9.3
|
|||
|
|
|||
|
Daniel (23 January 2002)
|
|||
|
- Andr<64>s Garc<72>a found a persistancy problem when doing HTTP HEAD, that made
|
|||
|
curl "hang" until the connection was closed by the server. This problem has
|
|||
|
been introduced in 7.9.3 due to internal rewrites, this was not present in
|
|||
|
7.9.2.
|
|||
|
|
|||
|
Version 7.9.3-pre4
|
|||
|
|
|||
|
Daniel (19 January 2002)
|
|||
|
- Antonio filed bug report #505514 and provided a fix! When doing multipart
|
|||
|
formposts, libcurl would include an error text in the actual post if a
|
|||
|
specified file wasn't found. This is not libcurl's job. Instead we add an
|
|||
|
empty part.
|
|||
|
|
|||
|
Daniel (18 January 2002)
|
|||
|
- Played around with stricter compiler warnings for gcc (when ./configure
|
|||
|
--enable-debug is used) and changed some minor things to stop the warnings.
|
|||
|
|
|||
|
- Commented out the 'long long' and 'long double' checks in configure.in, as
|
|||
|
we don't currently use them anyway and the code in lib/mprintf.c that use
|
|||
|
them causes warnings.
|
|||
|
|
|||
|
- Saul Good and jonatan pointed out Mac OS X build problems with pre3 and how
|
|||
|
to correct them. Two compiler warnings were removed as well.
|
|||
|
|
|||
|
- Andr<64>s Garc<72>a fixed two minor mingw32 building problems.
|
|||
|
|
|||
|
Version 7.9.3-pre3
|
|||
|
|
|||
|
Daniel (17 January 2002)
|
|||
|
- docs/libcurl-the-guide is a new tutorial for our libcurl programming
|
|||
|
friends.
|
|||
|
|
|||
|
- Richard Archer brought back the ability to compile and build with OpenSSL
|
|||
|
versions before 0.9.5.
|
|||
|
[http://sourceforge.net/tracker/?func=detail&atid=100976&aid=504163&group_id=976]
|
|||
|
|
|||
|
- The DNS cache code didn't take the port number into account, which made it
|
|||
|
work rather bad on IPv6-enabled hosts (especially when doing passive
|
|||
|
FTP). Sterling fixed it.
|
|||
|
|
|||
|
Daniel (16 January 2002)
|
|||
|
- Georg Horn could make a transfer time-out without error text. I found it and
|
|||
|
corrected it.
|
|||
|
|
|||
|
- SSL writes didn't work, they return an uninitialized value that caused
|
|||
|
havoc all over. Georg Horn experienced this.
|
|||
|
|
|||
|
- Kevin Roth patched the curl_version() function to use the proper OpenSSL
|
|||
|
function for version information. This way, curl will report the version of
|
|||
|
the SSL library actually running right now, not the one that had its headers
|
|||
|
installed when libcurl was built. Mainly intersting when running with shared
|
|||
|
OpenSSL libraries.
|
|||
|
|
|||
|
Version 7.9.3-pre2
|
|||
|
|
|||
|
Daniel (16 January 2002)
|
|||
|
- Mofied the main transfer loop and related stuff to deal with non-blocking
|
|||
|
sockets in the upload section. While doing this, I've now separated the
|
|||
|
connection oriented buffers to have one for downloads and one for uploads
|
|||
|
(as two can happen simultaneously). I also shrunk the buffers to 20K
|
|||
|
each. As we have a scratch buffer twice the size of the upload buffer, we
|
|||
|
arrived at 80K for buffers compared with the previous 150K.
|
|||
|
|
|||
|
- Added the --cc option to curl-config command as it enables so very cool
|
|||
|
one-liners. Have a go a this one, building the simple.c example:
|
|||
|
|
|||
|
$ `curl-config --cc --cflags --libs` -o example simple.c
|
|||
|
|
|||
|
Daniel (14 January 2002)
|
|||
|
- I made all socket reads (recv) handle EWOULDBLOCK. I hope nicely. Now we
|
|||
|
only need to address all writes (send) too and then I'm ready for another
|
|||
|
pre-release...
|
|||
|
|
|||
|
- Stoned Elipot patched the in_addr_t configure test to make it work better on
|
|||
|
more platforms.
|
|||
|
|
|||
|
Daniel (9 January 2002)
|
|||
|
- Cris Bailiff found out that filling up curl's SSL session cache caused a
|
|||
|
crash!
|
|||
|
|
|||
|
- Posted the curl questionnaire on the web site. If you haven't posted your
|
|||
|
opinions there yet, go there and do it now while it is still there:
|
|||
|
|
|||
|
http://curl.haxx.se/q/
|
|||
|
|
|||
|
- Georg Horn quickly found out that the SSL reading no longer worked as
|
|||
|
supposed since the switch to non-blocking sockets. I've made a quick patch
|
|||
|
(for reading only) but we should improve it even further.
|
|||
|
|
|||
|
Version 7.9.3-pre1
|
|||
|
|
|||
|
Daniel (7 January 2002)
|
|||
|
- I made the 'bool' typedef use an "unsigned char". It makes it the same on
|
|||
|
all platforms, no matter what the platform thinks the default format for
|
|||
|
char is. This was noticed since we made a silly comparison involving such a
|
|||
|
bool variable, and only one compiler/platform combination (on Debian Linux)
|
|||
|
complained about it (that happened to have its char unsigned by default).
|
|||
|
|
|||
|
- Bug report #495290 identified a cookie parsing problem that was corrected.
|
|||
|
When a Set-Cookie: line is received without a trailing semicolon, libcurl
|
|||
|
didn't read the last "name=value" pair of the line, leading to confusions...
|
|||
|
|
|||
|
- Sterling committed his updated DNS cache code.
|
|||
|
|
|||
|
- I worked with Georg Horn and comments from G<>tz Babin-Ebell and switched
|
|||
|
curl's socket operations completely over to non-blocking for the entire
|
|||
|
operation (previously we used non-blocking only for the connection phase).
|
|||
|
We had to do this to make the SSL connection phase timeout properly without
|
|||
|
the use of signals. A little extra code to deal with this was added.
|
|||
|
|
|||
|
- T. Bharath pointed out a slightly obscure cookie engine flaw.
|
|||
|
|
|||
|
- Pete Su pointed out that libcurl didn't treat HTTP code 204 as it should.
|
|||
|
204-replies never provides a response-body. This resulted in bad persistant
|
|||
|
behavior when 204 was received.
|
|||
|
|
|||
|
Daniel (5 January 2002)
|
|||
|
- SM updated the VC++ library Makefiles for the new source files.
|
|||
|
|
|||
|
Daniel (4 January 2002)
|
|||
|
- I discovered that we wrongly used inet_ntoa() (instead of inet_ntoa_r() in
|
|||
|
two places in the source code). One happened with VERBOSE set on connects,
|
|||
|
and the other when VERBOSE was on and krb4 over nat was used... I honestly
|
|||
|
don't think anyone has suffered from these mistakes.
|
|||
|
|
|||
|
- I replaced a lot of silly occurances of printf() to instead use the more
|
|||
|
appropriate Curl_infof() or Curl_failf(). The krb4 and telnet code were
|
|||
|
affected.
|
|||
|
|
|||
|
- Philip Gladstone found a few more problems with 64-bit archs (the 64-bit
|
|||
|
sparc on solaris 8).
|
|||
|
|
|||
|
- After discussions on the libcurl list with Raoul Cridlig, I just made FTP
|
|||
|
response lines get passed to the header callback if such a one is
|
|||
|
registered. It'll make it possible for any application to get all the
|
|||
|
responses an FTP server sends to libcurl.
|
|||
|
|
|||
|
Daniel (3 January 2002)
|
|||
|
- Sterling Hughes brought a few buckets of code. Now, libcurl will
|
|||
|
automatically cache DNS lookups and re-use the previous results first if any
|
|||
|
such is available. It greatly improves speed when doing many repeated
|
|||
|
operations to the same host.
|
|||
|
|
|||
|
- As the test case uses --include and then --head, I had to modify src/main.c
|
|||
|
to deal with this situation slightly better than previously. When done, we
|
|||
|
have 100% good tests again in the main branch.
|
|||
|
|
|||
|
Daniel (2 January 2002)
|
|||
|
- Made test case 25 run again in the multi-dev branch. But it seems that the
|
|||
|
changes done on dec-20 made test case 104 cease to work (in both branches).
|
|||
|
|
|||
|
- Philip Gladstone pointed out a few portability problems in the source code
|
|||
|
that didn't compile on 64-bit sparcs using Sun's native compiler.
|