Daniel Stenberg [Thu, 26 Nov 2009 19:07:54 +0000 (19:07 +0000)]
- Extended and fixed the change I did on Dec 11 for the the progress
meter/callback during FTP command/response sequences. It turned out it was
really lame before and now the progress meter SHOULD get called at least
once per second.
Yang Tse [Thu, 26 Nov 2009 01:21:21 +0000 (01:21 +0000)]
- Larry Lansing fixed ares_parse_srv_reply to properly parse replies
which might contain non-SRV answers, skipping over potential non-SRV
ones such as CNAMEs.
Daniel Stenberg [Mon, 23 Nov 2009 13:56:45 +0000 (13:56 +0000)]
- Bjorn Augustsson reported a bug which made curl not report any problems even
though it failed to write a very small download to disk (done in a single
fwrite call). It turned out to be because fwrite() returned success, but
there was insufficient error-checking for the fclose() call which tricked
curl to believe things were fine.
Yang Tse [Mon, 23 Nov 2009 11:26:29 +0000 (11:26 +0000)]
- Removed from external interface preprocessor symbol definition for
CARES_HAVE_ARES_FREE_DATA. Current functionality of ares_free_data()
makes it unnecessary.
Yang Tse [Mon, 23 Nov 2009 01:24:17 +0000 (01:24 +0000)]
- Jakub Hrozek renamed addrttl and addr6ttl structs to ares_addrttl and
ares_addr6ttl in order to prevent name space pollution, along with
necessary changes to code base and man pages.This change does not break
ABI, there is no need to recompile existing applications. But existing
applications using these structs with the old name will need source code
adjustments when recompiled using c-ares 1.6.1.
Yang Tse [Sun, 22 Nov 2009 05:31:57 +0000 (05:31 +0000)]
Make configure remove the curlbuild.h file included in distribution tarballs
for use by non-configure systems. As intended, configure would overwrite the
distributed one when doing in-tree builds. But VPATH builds would end having
two curlbuild.h files, one in the source tree and another in the build tree.
Daniel Stenberg [Fri, 20 Nov 2009 19:32:49 +0000 (19:32 +0000)]
- Constantine Sapuntzakis identified a write after close, as the sockets were
closed by libcurl before the SSL lib were shutdown and they may write to its
socket. Detected to at least happen with OpenSSL builds.
Daniel Stenberg [Fri, 20 Nov 2009 13:27:21 +0000 (13:27 +0000)]
- Jad Chamcham pointed out a bug with connection re-use. If a connection had
CURLOPT_HTTPPROXYTUNNEL enabled over a proxy, a subsequent request using the
same proxy with the tunnel option disabled would still wrongly re-use that
previous connection and the outcome would only be badness.
Yang Tse [Fri, 20 Nov 2009 09:06:33 +0000 (09:06 +0000)]
Jakub Hrozek modified ares_parse_srv_reply() and ares_parse_txt_reply() API
to return a linked lists of results. These were also modified to internally
use the ares_data memory struct and as such its result must be free'ed with
ares_free_data().
Daniel Stenberg [Tue, 17 Nov 2009 18:11:06 +0000 (18:11 +0000)]
- Marc Kleine-Budde fixed: curl saved the LDFLAGS set during configure into
its pkg-config file. So -Wl stuff ended up in the .pc file, which is really
bad, and breaks if there are multiple -Wl in our LDFLAGS (which are in
PTXdist). bug #2893592 (http://curl.haxx.se/bug/view.cgi?id=2893592)
Kamil Dudka [Sun, 15 Nov 2009 15:23:43 +0000 (15:23 +0000)]
- David Byron improved the configure script to use pkg-config to find OpenSSL
(and in particular the list of required libraries) even if a path is given
as argument to --with-ssl
Yang Tse [Sun, 15 Nov 2009 02:45:23 +0000 (02:45 +0000)]
Remove enable-thread / disable-thread configure option. These were only placebo
options. The library is always built as thread safe as possible on every system.
Daniel Stenberg [Sat, 14 Nov 2009 07:53:34 +0000 (07:53 +0000)]
- Camille Moncelier added support for the file type SSL_FILETYPE_ENGINE for
the client certificate. It also disable the key name test as some engines
can select a private key/cert automatically (When there is only one key
and/or certificate on the hardware device used by the engine)
Yang Tse [Sat, 14 Nov 2009 02:30:30 +0000 (02:30 +0000)]
- Constantine Sapuntzakis provided the fix that ensures that an SSL connection
won't be reused unless protection level for peer and host verification match.
Yang Tse [Fri, 13 Nov 2009 05:01:51 +0000 (05:01 +0000)]
Related with the threadsafe capability of getaddrinfo:
- Constantine Sapuntzakis reported that Darwin 6.0 a.k.a. MAC OS X 10.2
and newer have a threadsafe getaddrinfo.
- Fix Dragonfly BSD triplet detection.
- In case the hard-coded knowledge says that getaddrinfo is threadsafe,
an additional check is done to verify that h_errno is also defined.
If h_errno isn't defined, we finally assume that it isn't threadsafe.
Jamie Lokier provided the inspiration for this extra check.
Kamil Dudka [Thu, 12 Nov 2009 11:16:31 +0000 (11:16 +0000)]
- libcurl-NSS now tries to reconnect with TLS disabled in case it detects
a broken TLS server. However it does not happen if SSL version is selected
manually. The approach was originally taken from PSM. Kaspar Brand helped me
to complete the patch. Original bug reports:
https://bugzilla.redhat.com/525496
https://bugzilla.redhat.com/527771
Kamil Dudka [Thu, 12 Nov 2009 10:54:10 +0000 (10:54 +0000)]
- Kevin Baughman provided a fix preventing libcurl-NSS from crash on doubly
closed NSPR descriptor. The issue was hard to find, reported several times
before and always closed unresolved. More info at the RH bug:
https://bugzilla.redhat.com/534176
Yang Tse [Wed, 11 Nov 2009 21:15:34 +0000 (21:15 +0000)]
- Marco Maggi reported that compilation failed when configured --with-gssapi
and GNU GSS installed due to a missing mutual exclusion of header files in
the Kerberos 5 code path. He also verified that my patch worked for him.
Daniel Stenberg [Wed, 11 Nov 2009 09:31:37 +0000 (09:31 +0000)]
- Constantine Sapuntzakis posted bug #2891595
(http://curl.haxx.se/bug/view.cgi?id=2891595) which identified how an entry
in the DNS cache would linger too long if the request that added it was in
use that long. He also provided the patch that now makes libcurl capable of
still doing a request while the DNS hash entry may get timed out.
Daniel Stenberg [Wed, 11 Nov 2009 09:01:43 +0000 (09:01 +0000)]
- Christian Schmitz noticed that the progress meter/callback was not properly
used during the FTP connection phase (after the actual TCP connect), while
it of course should be. I also made the speed check get called correctly so
that really slow servers will trigger that properly too.
Yang Tse [Mon, 9 Nov 2009 13:24:11 +0000 (13:24 +0000)]
Updated MSVC makefile that allows building dynamic and static
c-ares libraries in debug and release flavours.
Additionally each of the three sample programs is built against
each of the four possible c-ares libraries, generating all this
a total number of 12 executables and 4 libraries.
Yang Tse [Thu, 5 Nov 2009 15:04:03 +0000 (15:04 +0000)]
I removed leading 'curl' path on the 'curlbuild.h' include statement in
curl.h, adjusting auto-makefiles include path, to enhance portability to
OS's without an orthogonal directory tree structure such as OS/400.
Daniel Stenberg [Wed, 4 Nov 2009 23:09:17 +0000 (23:09 +0000)]
- I fixed several problems with the transfer progress meter. It showed the
wrong percentage for small files, most notable for <1000 bytes and could
easily end up showing more than 100% at the end. It also didn't show any
percentage, transfer size or estimated transfer times when transferring
less than 100 bytes.