Daniel Stenberg [Mon, 14 Nov 2005 22:10:52 +0000 (22:10 +0000)]
Quagmire reported that he needed to raise a NTLM buffer for SSPI to work
properly for a case, and so we did. We raised it even for non-SSPI builds
but it should not do any harm. http://curl.haxx.se/bug/view.cgi?id=1356715
Daniel Stenberg [Mon, 14 Nov 2005 07:48:05 +0000 (07:48 +0000)]
Yang Tse: msvc7+ has deprecated the 'DESCRIPTION' section in
module-definition files. this section is not mandatory for msvc60 so it
could be completely removed from libcurl.def.
Daniel Stenberg [Mon, 14 Nov 2005 00:18:12 +0000 (00:18 +0000)]
Jan Kunder's debian bug report
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=338680 identified a weird
error message for when you try to upload a file and the requested directory
doesn't exist on the target server.
Daniel Stenberg [Sun, 13 Nov 2005 11:06:48 +0000 (11:06 +0000)]
Debian bug report 338681 by Jan Kunder: make curl better detect and report bad
limit-rate units: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=338681 Now
curl will return error if a bad unit is used.
Daniel Stenberg [Sun, 13 Nov 2005 09:24:06 +0000 (09:24 +0000)]
Thanks to this nice summary of poll() implementations:
http://www.greenend.org.uk/rjk/2001/06/poll.html and further tests by Eugene
Kotlyarov, we now know that cygwin's poll returns only POLLHUP on remote
connection closure so we check for that case (too) and re-enable poll for
cygwin builds.
Daniel Stenberg [Sat, 12 Nov 2005 22:49:19 +0000 (22:49 +0000)]
Eugene Kotlyarov found out that cygwin's poll() function isn't doing things
right: http://curl.haxx.se/mail/archive-2005-11/0045.html so we now disable
poll() and use select() on cygwin too (we already do the same choice on Mac OS
X)
Daniel Stenberg [Thu, 10 Nov 2005 22:11:01 +0000 (22:11 +0000)]
Introducing range stepping to the curl globbing support. Now you can specify
step counter by adding :[num] within the brackets when specifying a range.
Daniel Stenberg [Wed, 9 Nov 2005 23:15:04 +0000 (23:15 +0000)]
* Add step parameter to the globbing. Like [0-1000;10] that would walk the
range increasing the number with 10 for every step. Requested by Jose:
http://curl.haxx.se/feedback/display.cgi?id=11315662266802
Daniel Stenberg [Tue, 8 Nov 2005 14:15:34 +0000 (14:15 +0000)]
Dmitry Bartsevich discovered some issues in compatibilty of SSPI-enabled
version of libcurl with different Windows versions. Current version of
libcurl imports SSPI functions from secur32.dll. However, under Windows NT
4.0 these functions are located in security.dll, under Windows 9x - in
secur32.dll and Windows 2000 and XP contains both these DLLs (security.dll
just forwards calls to secur32.dll).
Dmitry's patch loads proper library dynamically depending on Windows
version. Function InitSecurityInterface() is used to obtain pointers to all
of SSPI function in one structure.
: ----------------------------------------------------------------------
Daniel Stenberg [Mon, 7 Nov 2005 13:54:14 +0000 (13:54 +0000)]
27. "libcurl built with GNUTLS ignores the SSLCERT option" - Unlike
Curl_ossl_connect(), the Curl_gtls_connect() function does not send the user
certificate to the peer. In fact, it ignores the conn->data->set.cert field
completely, it always uses the anonymous credentials. See
http://curl.haxx.se/bug/view.cgi?id=1348930
Daniel Stenberg [Mon, 31 Oct 2005 08:55:01 +0000 (08:55 +0000)]
Vilmos Nebehaj improved libcurl's LDAP abilities:
The LDAP code in libcurl can't handle LDAP servers of LDAPv3 nor binary
attributes in LDAP objects. So, I made a quick patch to address these
problems.
The solution is simple: if we connect to an LDAP server, first try LDAPv3
(which is the preferred protocol as of now) and then fall back to LDAPv2.
In case of binary attributes, we first convert them to base64, just like the
openldap client does. It uses ldap_get_values_len() instead of
ldap_get_values() to be able to retrieve binary attributes correctly. I
defined the necessary LDAP macros in lib/ldap.c to be able to compile
libcurl without the presence of libldap
Daniel Stenberg [Thu, 27 Oct 2005 22:05:38 +0000 (22:05 +0000)]
Nis Jorgensen filed bug report #1338648
(http://curl.haxx.se/bug/view.cgi?id=1338648) which really is more of a
feature request, but anyway. It pointed out that --max-redirs did not allow
it to be set to 0, which then would return an error code on the first
Location: found. Based on Nis' patch, now libcurl supports CURLOPT_MAXREDIRS
set to 0, or -1 for infinity. Added test case 274 to verify.
Daniel Stenberg [Thu, 27 Oct 2005 21:02:01 +0000 (21:02 +0000)]
tommink[at]post.pl reported in bug report #1337723
(http://curl.haxx.se/bug/view.cgi?id=1337723) that curl could not upload
binary data from stdin on Windows if the data contained control-Z (hex 1a)
since that is treated as end-of-file when read in text mode. Gisle Vanem
pointed out the fix, and I made both -T and --data-binary take advantage of
it.
Daniel Stenberg [Thu, 27 Oct 2005 20:51:43 +0000 (20:51 +0000)]
updates to reflect current status in Debian land, and added some known
differences between OpenSSL and GnuTLS (that is probably a suitable subject
for a separate document...)
Daniel Stenberg [Thu, 27 Oct 2005 12:05:36 +0000 (12:05 +0000)]
Jaz Fresh pointed out that if you used "-r [number]" as was wrongly described
in the man page, curl would send an invalid HTTP Range: header. The correct
way would be to use "-r [number]-" or even "-r -[number]". Starting now,
curl will warn if this is discovered, and automatically append a dash to the
range before passing it to libcurl.
Daniel Stenberg [Sat, 22 Oct 2005 21:05:07 +0000 (21:05 +0000)]
Dima Barsky reported a problem with GnuTLS-enabled libcurl in bug report
#1334338 (http://curl.haxx.se/bug/view.cgi?id=1334338). When reading an SSL
stream from a server and the server requests a "rehandshake", the current
code simply returns this as an error. I have no good way to test this, but
I've added a crude attempt of dealing with this situation slightly better -
it makes a blocking handshake if this happens. Done like this because fixing
this the "proper" way (that would handshake asynchronously) will require
quite some work and I really need a good way to test this to do such a
change.
Daniel Stenberg [Fri, 21 Oct 2005 21:00:44 +0000 (21:00 +0000)]
"Ofer" reported a problem when libcurl re-used a connection and failed to do
it, it could then accidentally actually crash. Presumably, this concerns FTP
connections. http://curl.haxx.se/bug/view.cgi?id=1330310
Daniel Stenberg [Fri, 21 Oct 2005 19:32:12 +0000 (19:32 +0000)]
Temprimus improved the MSVC makefile so that the static debug SSL libs are
linked to the executable and not to the libcurld.lib
http://curl.haxx.se/bug/view.cgi?id=1326676
Daniel Stenberg [Fri, 21 Oct 2005 19:21:19 +0000 (19:21 +0000)]
Bradford Bruce made the windows resolver code properly return
CURLE_COULDNT_RESOLVE_PROXY and CURLE_COULDNT_RESOLVE_HOST on resolving
errors (as documented).
Daniel Stenberg [Thu, 20 Oct 2005 20:07:32 +0000 (20:07 +0000)]
Dave Dribin made libcurl understand and handle cases when the server
(wrongly) sends *two* WWW-Authenticate headers for Digest. While this should
never happen in a sane world, libcurl previously got into an infinite loop
when this occurred. Dave added test 273 to verify this.
Daniel Stenberg [Thu, 20 Oct 2005 19:07:33 +0000 (19:07 +0000)]
Temprimus improved the MSVC makefile: "makes a build option available so if
you set rtlibcfg=static for the make, then it would build with /MT. The
default behaviour is /MD (the original)."
http://curl.haxx.se/bug/view.cgi?id=1326665
Daniel Stenberg [Fri, 14 Oct 2005 21:21:51 +0000 (21:21 +0000)]
Reverted the LIBCURL_VERSION_NUM change from October 6. As Dave Dribin
reported, the define is used by the configure script and is assumed to use
the 0xYYXXZZ format. This made "curl-config --vernum" fail in the 7.15.0
release version.
Daniel Stenberg [Fri, 14 Oct 2005 13:22:49 +0000 (13:22 +0000)]
Reported by 'TemPRImus' in bug 1326665: use the "Multi-Threaded" options even
when building the static library. http://curl.haxx.se/bug/view.cgi?id=1326665