Daniel Stenberg [Tue, 26 Jan 2010 22:59:43 +0000 (22:59 +0000)]
- Mike Crowe made libcurl return CURLE_COULDNT_RESOLVE_PROXY when it is the
proxy that cannot be resolved when using c-ares. This matches the behaviour
when not using c-ares.
Yang Tse [Fri, 22 Jan 2010 20:27:48 +0000 (20:27 +0000)]
Definitions of resolver specialty compile-time defines CURLRES_* moved
from hostip.h to setup.h in order to allow proper inclusion in any file.
This represents no functional change at all in which resolver is used,
everything still works as usual, internally and externally there is no
difference in behavior.
Yang Tse [Fri, 22 Jan 2010 06:36:52 +0000 (06:36 +0000)]
Constantine Sapuntzakis refactoring of async callbacks, allowing
removal of Curl_addrinfo_copy(), Curl_addrinfo6_callback(), and
Curl_addrinfo4_callback()
Daniel Stenberg [Thu, 21 Jan 2010 13:58:30 +0000 (13:58 +0000)]
Chris Conroy brought support for RTSP transfers, and with it comes 8(!) new
libcurl options for controlling what to get and how to receive posssibly
interleaved RTP data. Initial commit.
Yang Tse [Wed, 20 Jan 2010 20:42:21 +0000 (20:42 +0000)]
Use killsockfilters() to kill sockfilter processes, this ensures that when
killing a sockfilter process the actual PID from the pid file is used and
not the one returned by open2() which might be different.
Yang Tse [Wed, 20 Jan 2010 20:39:56 +0000 (20:39 +0000)]
Allow killsockfilters() to take a 5th optional parameter that when provided
indicates that only one of the two possible sockfilter processes should be
killed. Valid values for this parameter are 'main' and 'data'.
Yang Tse [Wed, 20 Jan 2010 20:08:50 +0000 (20:08 +0000)]
Use delete() to unset environment variables instead of assigning undef which
generates warning 'Use of uninitialized value in scalar assignment' with perl
versions older than 5.10
Daniel Stenberg [Tue, 19 Jan 2010 23:19:59 +0000 (23:19 +0000)]
- As was pointed out on the http-state mailing list, the order of cookies in a
HTTP Cookie: header _needs_ to be sorted on the path length in the cases
where two cookies using the same name are set more than once using
(overlapping) paths. Realizing this, identically named cookies must be
sorted correctly. But detecting only identically named cookies and take care
of them individually is harder than just to blindly and unconditionally sort
all cookies based on their path lengths. All major browsers also already do
this, so this makes our behavior one step closer to them in the cookie area.
Test case 8 was the only one that broke due to this change and I updated it
accordingly.
Daniel Stenberg [Tue, 19 Jan 2010 21:39:10 +0000 (21:39 +0000)]
- David McCreedy brought a fix and a new test case (129) to make libcurl work
again when downloading files over FTP using ASCII and it turns out that the
final size of the file is not the same as the initial size the server
reported. This is very common since servers don't take the newline
conversions into account.
Yang Tse [Mon, 18 Jan 2010 20:22:04 +0000 (20:22 +0000)]
Constantine Sapuntzakis enhancements to make memory tracking log file writing
of messages atomic, on systems where an fwrite of a memory buffer is atomic.
Kamil Dudka [Thu, 14 Jan 2010 01:37:55 +0000 (01:37 +0000)]
- Suppressed side effect of OpenSSL configure checks, which prevented NSS from
being properly detected under certain circumstances. It had been caused by
strange behavior of pkg-config when handling PKG_CONFIG_LIBDIR. pkg-config
distinguishes among empty and non-existent environment variable in that case.
Daniel Stenberg [Mon, 11 Jan 2010 23:15:10 +0000 (23:15 +0000)]
- Gil Weber reported a peculiar flaw with the multi interface when doing SFTP
transfers: curl_multi_fdset() would return -1 and not set and file
descriptors several times during a transfer of a single file. It turned out
to be due to two different flaws now fixed. Gil's excellent recipe helped me
nail this.
Daniel Stenberg [Mon, 11 Jan 2010 23:10:53 +0000 (23:10 +0000)]
ssh_statemach_act() is now modified to loop over the switch() to perform as
much as possible in one go, as long as it doesn't block and hasn't reached the
end of the state machine.
This avoids spurious -1 returns from curl_multi_fdset() simply because
previously it would return from this function without anything in EWOUDLBLOCK
and thus basically it wasn't actually waiting for anything!!