Newer
Older
Daniel (4 March 2004)
- I corrected a problem with the multi interface when following a Location:
header or when doing multiple-request authentications. A subsequent request
could erroneously re-use a previous connection that was sent with
Connection: close. Christopher R. Palmer reported.
- Andrés García patched curl to prevent warnings while compiling with mingw,
mainly because it is now possible to have both WIN32 and HAVE_CONFIG_H
defined.
- When transferring files from a file: URL, the progress meter and other
transfer metrics were not updated properly.
- David Byron provided a "version resource" file to the curl executable for
the windows builds.
- David Byron's work on making libcurl only require winsock 1.1 on Windows
machines.
- More variable cleanups based on compiler warnings generated by Tor Arntsen's
autobuilds with MIPSPro.
- Joe Halpin helped us fix some pedantic compiler warnings on FreeBSD.
- Applied Tom Bates' patch to build on nsr-tandem-nsk.
- Dan Fandrich corrected some flaws in the configure GSS detection.
Daniel (2 March 2004)
- Fixed the libcurl code to use FORMAT_OFF_T for printf() formatting
curl_off_t types internally.
- Added CURL_VERSION_LARGEFILE as a feature-bit in the curl_version_info()
response, that signals if this libcurl supports >2GB files. curl -V now
outputs 'Largefile' in the Features: field if this is the case. Most systems
are likely to support this.
- We offer a CURL_FORMAT_OFF_T define in the public header, which can be used
to printf() curl_off_t variables. We also modified the libcurl sources to
use this define instead of the previous %Od approach (although I've left the
O-flag functional in the code). This should also prevent compilers to warn
on the home-grown option.
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
- Fixed the resume-check code to test for a working resume at the end of the
headers and not at the first body-byte.
- CURLOPT_DNS_USE_GLOBAL_CACHE is now considered obsolete. Stop using it. If
you need a global DNS cache for whatever reason, use the share interface and
you'll get a global cache that works the way it should work. You can even
have any number of global caches, all at your command. This is now also
mentioned in the docs.
- Made the *printf code support the z-flag to enable size_t printf() in a
manner similar to how glibc allows it. To make printfing of this work on
platforms with 64bit size_t and 32bit ints. If there even are any! ;-)
- Christopher R. Palmer discovered that if you CURLOPT_FRESH_CONNECT and
CURLAUTH_NTLM (or CURLAUTH_ANY and libcurl then picked NTLM), libcurl would
loop without succeeding to authenticate due to the new connection that was
made for all round-trips in the authentication. Now, the FRESH_CONNECT is
remade to only matter for the first connection made with curl_easy_perform()
and all the rest that might follow due to FOLLOWLOCATION or HTTP
authentication are now ignoring that option.
- Adjusted the QUIT code slightly since it could core-dump.
- Corrected the test suite's FTP server to provide a correct size to the
'verifiedserver' request.
Daniel (27 February 2004)
- Joe Halpin made the FTP code send QUIT on the control connection before
disconnecting the TCP connection. This is what good-behaving ftp clients
should do.
Daniel (26 February 2004)
- David Byron updated several files to make curl build fine on MSVC 6. He
also added the 'buildconf.bat' that works like the 'buildconf + configure'
combo does on unixes.
- Gisle Vanem made the memdebug stuff support calloc() as well.
- Tor Arntsen pointed out that testcurl.sh needed to remove the generated
files in order to have them re-generated in each build.
- Andy Serpa found out that the share interface did not enjoy life when not
having the lock and unlock callbacks set, even though documented to be
OK. It still is OK, and now the code won't segfault anymore!
Daniel (25 February 2004)
- Based on a patch by Greg Hewgill I modified how long long is used in the
mprintf code, as we can use a 64bit type with MSVC that is a long long
equivalent. This corrects some weird large file behaviors on windows.
- Tor Arntsen helped me work out --enable-debug to work better with different
versions of the gcc and icc compilers.
- Added CURLOPT_SHARE to the curl_easy_setopt.3 man page.
Daniel (22 February 2004)
- Applied the final pieces of Gisle Vanem's patch that brings a working name
resolve timeout to the windows versions of curl!
Daniel (21 February 2004)
- David Byron's fix to allow the speed-limit logic work even if you set
limit-rate. It does work on the expense of the rate limiter.
Daniel (20 February 2004)
- configure --enable-debug with gcc now also tries to detect the icc compiler
(which somehow gets treated as if it is a gcc) to stop using all the gcc
options with it, and we also provide -isystem options for each extra -I
option the configure script has figured out (for OpenSSL, kerberos, zlib,
Heimdal etc). This of course to prevent warnings on headers we don't have
control of.
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
Daniel (19 February 2004)
- Doug Porter made libcurl use the HOME environment variable before the
getpwuid results when looking for .netrc files.
- If 'configure --enable-debug' is used with gcc, it now checks which gcc
version it is and uses as picky compiler options as possible for the
particular version.
- Code that can be used in both the lib and in the curl app is now made to use
the curlx_ prefix. The first function to be available like this is the
curlx_strtoll() function. This is made to allow the app to use existing code,
but without polluting the libcurl API. Further explanations posted here:
http://curl.haxx.se/mail/lib-2004-02/0215.html
Daniel (18 February 2004)
- Fixed buildconf to not use "which" as AIX and Tru64 have what have been
referred to as "horribly broken 'which' programs".
- Made sure dns cache timeout set to -1 really means caching forever.
Daniel (17 February 2004)
- Made it possibly to build c-ares with the libcurl memdebug system to better
track memory.
Daniel (16 February 2004)
- When using ares, we now initialize the ares 'channel' in curl_easy_init()
and re-use that same handle during the entire curl handle's life-time. It
improves performance.
- Fixed a problem when displaying verbose for ipv6-enabled libcurls and
re-used connections. Problem reported and fix verified by Grigory Entin.
- Jeff Lawson fixed the version-check in the SOCKS5 code.
Daniel (15 February 2004)
- Fixed a case where a host cache entry was not flagged in-use properly when a
cached entry was used.
- Andrés García's patch that checks for winmm in the configure script was
applied.
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
Daniel (13 February 2004)
- Ben Greear's SO_BINDTODEVICE patch for the binding of the local end to a
specific network interface.
- Greg Hewgill found out that the variable holding 'contentlength' wasn't big
enough to hold a large file!
- Tor Arntsen fixed a 64bit-related problem in date-related code in the ftp
department, and there was another potential problem in the name resolve code
too.
Daniel (11 February 2004)
- Removed a few variables that were only set but never used, as some compilers
warn about that and we do not like compiler warnings!
- Removed the need for symlinks in the tests/data directory if curl is built
outside of the source directory and the 'make test' is used. This was done
by providing a "source dir path" to the scripts/servers.
- Now, if the configure script can't find an nroff tool or an option to nroff
to use to convert man pages with, it will completely switch off the built-in
manual.
- 'configure --disable-manual' completely disables the built-in manual from
the curl command tool.
- Andrés García fixed the configure script and a minor source edit, and now
he has managed to get msys/mingw to run configure and then build!
Daniel (9 February 2004)
- The default HTTP Accept: header was modified to the much simpler
"Accept: */*".
- P R Schaffner updated the curl-ssl spec file for RPMs.
- Dominick Meglio brought lots of documentation for the share interface's man
pages that were previously missing.
- Tor Arntsen provided a patch that makes libcurl work-around a bug in the
AIX5 implementation of getaddrinfo(). This makes the FTP PORT stuff work on
ipv6-enabled AIX builds.
- Ken Rastatter provided portability fixes for the curlgtk.c example, and now
it runs on windows with GTK as well!
Daniel (6 February 2004)
- Andrés García made the configure script find gethostbyname() fine when run
with mingw on windows.
- Modified the ldap code to use proper function pointers all over (instead of
mixed data and function pointers) to work-around the picky MIPSPro compiler
warnings.
- A custom Host: header is only considered if the request is not made by
following a location. After discussions with Tim Baker.
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
Daniel (5 February 2004)
- The libz part of the configure script now only set the two libz-related
define HAVE_ZLIB_H and HAVE_LIBZ if both the lib and the header is found.
If one is missing, none of the defines is set.
- Andrés García fixed the Mingw makefiles.
- Len Krause reported that curl 7.9.X could do uploading from stdin without
doing chunked encoding, which current curl cannot do even if you disable
the transfer-encoding chunked header. Now it can again, and test case 98
verifies this functionality.
- Tor Arntsen fixed a weird getaddrinfo() usage in the FTP code, preventing
the ipv6-code for PORT work on AIX 5.2. We now also provide (better) error
messages when bailing out in the that function.
- Tor Arntsen now provides AIX and IRIX (using gcc, xlc and the MIPSPro
compilers) automated build logs (http://curl.haxx.se/auto/) and we've fixed
numerous minor quirks to make less warnings appear.
Daniel (4 February 2004)
- Based on a patch by Gilad, we now use the custom timeouts when waiting for a
server to connect when using FTP PORT. Previously we always waited 10
seconds, no more no less. We now also changed the default (if no timeout is
set) to wait 60 seconds for the connect before we fail.
Daniel (3 February 2004)
- Modified to link with c-ares instead of ares.
Daniel (2 February 2004)
- Added a configure test to check for which option the (g)nroff tool wants
to extract plain text from the man pages. Tor Arntsen told us the AIX
version of GNU gnroff doesn't support -man!
- Added an undef of accept in memdebug.h to make curl build with --enable-debug
on AIX 5.2 which seems to have accept defined. Reported by Tor Arntsen.
- curl_version() now includes c-ares version info, and curl_version_info() now
returns a struct with version SECOND that also includes that info.
- We are now officially using c-ares for asynch name resolves. c-ares is the
new library, based on the existing ares but with an extended and slightly
modified API.
- Dirk improved the ares timeout code, and now we also include the ares error
string when we fail to resolve a name.
- Another tweak to make test case 91 run fine. Now we have another bit on a
connection that is set true if the connection is marked for 'retry'. That
makes the connection get closed and re-opened and the HTTP-done code must
not complain on the fact that no data was received.
- Based on Dirk Manske's patch, I modified the name resolving with ares to
feature a timeout for really slow lookups. It now defaults to 300 seconds,
but is now adjusted to the CONNECTTIMEOUT/TIMOUE timeouts if one of them
is set.
- Fixed the inclusion of ca-bundle.h to really use the one in the build dir
before the one in the source dir. Domenico Andreoli found out and reported.
- Added test case 97, a simple POST with a custom Content-Type header
replacing the original application/x-www-form-urlencoded one.
- Added code that attempts to fix the test 91 failure. As has been figured out
by Patrick Smith, the error happens because we re-use a connection that the
server is just about to close and we even manage to send away the request
without seeing an error. On the first read attempt we get a ECONNRESET.
Starting now, we attempt to detect this and if so, we retry the request on a
fresh connection.
- I added test case 510 which is a custom program that does a POST using a
read callback, with chunked transfer-encoding.
- Adjusted one of the MPE/iX changes as it made test case 504 fail all over.
- Added --socks as a recognized option. It works just like --proxy but sets a
SOCKS5 proxy to use. SOCKS5 support has been available in libcurl for a
while, just not provided by the curl tool. This does not currently work for
IPv6-enabled libcurls.
- Stadler Stephan pointed out that src/hugehelp.c included config.h without
checking the define if its present...
- Ken Hirsch provided patches to make curl build fine on the MPE/iX operating
system.
- Dan Fandrich compiled curl with lots of aggressively pedantic compiler
options and thus found a few minor errors and did some general cleanups to
avoid them.
- Dirk Manske fixed a flaw in ares that prevented it to use non-blocking
sockets properly.
- Richard Bramante fixed chunked transfer-encoded "uploads" to send a final
CRLF combo properly.
- Made the response-headers during a CONNECT request to a proxy get passed on
as regular headers, so they appear with -i/-I options and similar.
- Based on a patch by Gisle Vanem, I've made the progress meter display
properly switch to a GB-display when more than 9999MB have been transfered.
- Gisle Vanem pointed out a curlrc parser problem/crash when an option with a
required didn't have one and was on the last line of a file.
- More Windows fixes for large files. We now build and link with
../lib/strtoofft.c in the app code since Curl_strtoll() is not a provided
libcurl function... Perhaps we should consider a 'common' dir or similar
where we put source code used in both the lib and the client. Or perhaps
we'll just make this function available in the library...
- Vincent Bronner found out the socks5 code crashed when no username was
set.
- Vincent Bronner spotted a problem with proxy username/password when re-using
- Fixed the progress meter display for files larger than 2^31 bytes. Gisle
Vanem reported.
- Gisle Vanem made strtoll() get used when curl is built with the mingw
compiler.
- Gisle Vanem fixed the compressed help text code to display properly.
- Removed the '#define HttpPost' from the public header file, as curl_httppost
is the proper name and it has been for quite some time now. Fixes another
name space pollution.
- Added 'curl_off_t' typedef in the public header file, to be used to provide
large file sizes to the *_LARGE options. Adjusted the code all over to use
this variable type instead of 'off_t'. This is an attempt to make the large
file support work on more platforms. The configure script now checks the
size of the curl_off_t instead of the plain off_t.
Daniel (21 January 2004)
- Removed the defines in the public header file with TIMECOND_ prefixes. They
have been obsolete since April 22nd 2002, and if this causes anyone any
problems now it is very easy to just add CURL_ to the names. This corrects
this name space pollution.
Daniel (19 January 2004)
- David Byron cleaned up how --trace with no option was treated, and also
arguments in a config file without a required parameter!
Daniel (16 January 2004)
- Gisle Vanem fixed a few issues where compilers warned about variables
possibly being used unassigned.
- Minor Interix build problem fixed.
Daniel (15 January 2004)
- Peter Sylvester pointed out some necessary escaping needed in the
acinclude.m4 file when automake 1.8 or later is used.
- Vincent Bronner fixed the Curl_resolv() return code. This extends the fix
Steve Green provided on december 3...
- Luke Call made the win32 version of the password prompting function support
backspace.
- Dan Fandrich fixed the hugehelp source file to contain both a compressed and
an uncompressed version in the distribution, so that more people easier can
build curl with the compressed version.
- Diego Casorran brought another AmigaOS build patch for native Amiga builds.
- Matt Veenstra updated the Mac OS X framework files.
- Brian R Duffy brought a section to the INSTALL file on how to build a
SSL-enabled curl using the free Borland C++ compiler. He also updated the
Borland lib/Makefile.b32.
- I fixed the test case 509 which I broke yesterday. Now the libtest are
compiled with an include path that points to the library's source dir, so
that the libtests can include files from the source tree. This was made to
make it possible to use the USE_SSLEAY define in the library test files.
Daniel Stenberg
committed
- Peter Sylvester brought code that now allows a callback to modified the URL
even when the multi interface is used, and then libcurl will simulate a
"follow location" to that new URL. Test 509 was added to test this feature.
- Extended the time we retry servers in the test script, and I also made it
retry the https and ftps servers before they are considered bad. I believe
the previous approach could turn problematic on really slow hosts.
Version 7.11.0-pre1 (12 January 2004)
Daniel (11 January 2004)
- Dominick Meglio pointed out FTPS should use default port 990 according to
IANA.
Daniel (8 January 2004)
- Fixed the SPNEGO configure check to not use -R or other non-portable options
in the LDFLAGS. Reported by Pierre in bug report #872930.
- Dan Fandrich provided a fix on our zlib usage.
- David J Meyer's patch that introduce large file support to libcurl was
applied. New curl_easy_setopt options that accept 'off_t' arguments are:
INFILESIZE_LARGE
RESUME_FROM_LARGE
MAXFILESIZE_LARGE
Daniel (4 January 2004)
- Based on Dominick Meglio's comments, I made our private version of
gettimeofday() declared static. This would otherwise collide with the same
function in other libs (like ares for example).
- Added Dominick Meglio's description on how to build libcurl with ares
on win32.