Daniel Stenberg [Wed, 22 Jun 2005 22:24:10 +0000 (22:24 +0000)]
David Shaw's fix that unifies proxy string treatment so that a proxy given
with CURLOPT_PROXY can use a http:// prefix and user + password. The user
and password fields are now also URL decoded properly.
Daniel Stenberg [Wed, 22 Jun 2005 06:58:11 +0000 (06:58 +0000)]
David Shaw's updated version:
It now properly handles code that uses curl_free() (since not all versions of
curl have it), and also fixes a few problems when detecting libcurl on MinGW,
and a linker problem on OSX Panther.
Daniel Stenberg [Thu, 2 Jun 2005 11:58:04 +0000 (11:58 +0000)]
William Ahern:
Make UDP sockets non-blocking. I've confirmed that at least on Linux 2.4 a
read event can come back from poll() on a valid SOCK_DGRAM socket but
recv(2) will still block. This patch doesn't ignore EAGAIN in
read_udp_packets(), though maybe it should. (This patch was edited by Daniel
Stenberg and a new configure test was added (imported from curl's configure)
to properly detect what non-blocking socket approach to use.)
Daniel Stenberg [Thu, 2 Jun 2005 11:09:10 +0000 (11:09 +0000)]
William Ahern:
I'm not quite sure how this was happening, but I've been seeing PTR queries
which seem to return empty responses. At least, they were empty when calling
ares_expand_name() on the record. Here's a patch which guarantees to
NUL-terminate the expanded name. The old behavior failed to NUL-terminate if
len was 0, and this was causing strlen() to run past the end of the buffer
after calling ares_expand_name() and getting ARES_SUCCESS as the return
value. If q is not greater than *s then it's equal and *s is always
allocated with at least one byte.
Daniel Stenberg [Tue, 31 May 2005 13:03:26 +0000 (13:03 +0000)]
Todd Kulesza reported a flaw in the proxy option, since a numerical IPv6
address was not possible to use. It is now, but requires it written
RFC2732-style, within brackets - which incidently is how you enter numerical
IPv6 addresses in URLs. Test case 263 added to verify.
Daniel Stenberg [Sun, 29 May 2005 22:30:48 +0000 (22:30 +0000)]
Eric Cooper reported about a problem with HTTP servers that responds with
binary zeroes within the headers. They confused libcurl to do wrong so the
downloaded headers become incomplete. The fix is now verified with test case
262.
Daniel Stenberg [Wed, 18 May 2005 20:01:01 +0000 (20:01 +0000)]
Bug report #1204435 identified a problem with malformed URLs like
"http://somehost?data" as it added a slash too much in the request ("GET
/?data/"...). Added test case 260 to verify.
Daniel Stenberg [Wed, 18 May 2005 13:24:23 +0000 (13:24 +0000)]
The configure check for strerror_r() failed to detect the proper API at
times, like on my HP-UX 10.20 tests. And then lib/strerror.c badly assumed
the glibc version if the posix define wasn't set (since it _had_ found a
strerror_r).
Daniel Stenberg [Tue, 17 May 2005 10:27:11 +0000 (10:27 +0000)]
Made test case 241 precheck that the given name resolves to an ipv6 address,
or the test is skipped. Ideally, we should let this test case go over a few
frequently used IPv6 localhost aliases...
Daniel Stenberg [Mon, 16 May 2005 15:09:26 +0000 (15:09 +0000)]
Modified the gmtime_r check to not check for it until the "check for a working
one" is made, and only if that test runs ok we define it as present. Unless
crosscompiling, since then we use the former AC_CHECK_FUNCS method.
Gisle Vanem [Sat, 14 May 2005 05:58:52 +0000 (05:58 +0000)]
Change for systems with >1 ways of setting (non-)blocking
mode. (djgpp/Watt-32 has 3 ways). Should rewrite this using
"#elif ..", but maybe there is still broken cpp around?