Yang Tse [Thu, 7 Aug 2008 16:22:25 +0000 (16:22 +0000)]
Prevent buildconf from removing 'Makefile' and 'missing' files. This would blow
away our CVS checked 'missing' file and also CVS checked 'hiper/Makefile'.
Yang Tse [Thu, 7 Aug 2008 16:07:26 +0000 (16:07 +0000)]
Fix CURL_CHECK_DEF so that when the expansion of the preprocessor symbol results
in a set of double-quoted strings, this macro will now return an expansion which
consists of a single double-quoted string result of concatenating all of them.
Daniel Stenberg [Wed, 6 Aug 2008 21:22:07 +0000 (21:22 +0000)]
- mention curl_multi_socket_action() rather than the deprecated
curl_multi_socket()
- don't claim that it has an argument named 'easy' because it doesn't!
Daniel Stenberg [Mon, 4 Aug 2008 22:07:50 +0000 (22:07 +0000)]
- Yehoshua Hershberg found a problem that would make libcurl re-use a
connection with the multi interface even if a previous use of it caused a
CURLE_PEER_FAILED_VERIFICATION to get returned. I now make sure that failed
SSL connections properly close the connections.
Daniel Stenberg [Mon, 4 Aug 2008 22:00:22 +0000 (22:00 +0000)]
- Test cases 1051, 1052 and 1055 were added by Daniel Fandrich on July 30 and
proved how PUT and POST with a redirect could lead to a "hang" due to the
data stream not being rewound properly when it had to in order to get sent
properly (again) to the subsequent URL. This is now fixed and these test
cases are no longer disabled.
Daniel Stenberg [Mon, 4 Aug 2008 20:23:12 +0000 (20:23 +0000)]
- Fix by Tofu Linden:
The symptom:
* Users (usually, but not always) on 2-Wire routers and the Comcast service
and a wired connection to their router would find that the second and
subsequent DNS lookups from fresh processes using c-ares to resolve the same
address would cause the process to never see a reply (it keeps polling for
around 1m15s before giving up).
The repro:
* On such a machine (and yeah, it took us a lot of QA to find the systems
that reproduce such a specific problem!), do 'ahost www.secondlife.com',
then do it again. The first process's lookup will work, subsequent lookups
will time-out and fail.
The cause:
* init_id_key() was calling randomize_key() *before* it initialized
key->state, meaning that the randomness generated by randomize_key() is
immediately overwritten with deterministic values. (/dev/urandom was also
being read incorrectly in the c-ares version we were using, but this was
fixed in a later version.)
* This makes the stream of generated query-IDs from any new c-ares process
be an identical and predictable sequence of IDs.
* This makes the 2-Wire's default built-in DNS server detect these queries
as probable-duplicates and (erroneously) not respond at all.
Yang Tse [Mon, 4 Aug 2008 06:48:11 +0000 (06:48 +0000)]
Autoconf 2.62 has changed the behaviour of the AC_AIX macro which we use.
Prior versions of autoconf defined _ALL_SOURCE if _AIX was defined. But,
autoconf 2.62 version of AC_AIX defines _ALL_SOURCE along with other four
preprocessor symbols no matter if the system is AIX or not. To keep the
traditional behaviour, as well as an uniform one, across autoconf versions
AC_AIX is replaced with our own internal macro.
Daniel Stenberg [Sun, 3 Aug 2008 22:20:58 +0000 (22:20 +0000)]
- Test case 1041 (added by Daniel Fandrich April 14th) proved a bug where PUT
with -C - sent garbage in the Content-Range: header. I fixed this problem by
making sure libcurl always sets the size of the _entire_ upload if an app
attemps to do resumed uploads since libcurl simply cannot know the size of
what is currently at the server end. Test 1041 is no longer disabled.
Yang Tse [Sun, 3 Aug 2008 16:46:20 +0000 (16:46 +0000)]
Update #148
Rebooting the Solaris system, releasing allocated memory and swap,
has allowed buildconf and configure to complete sucessfully. Further
tests on the system might allow determination of the problem origin.
Solaris AutoBuilds suceeded on August 2 and 3.
Yang Tse [Sat, 2 Aug 2008 01:44:13 +0000 (01:44 +0000)]
No longer test availability of the gdi32 library, nor use it for linking, even
when we have been doing this since revision 1.47 of configure.ac 4 years and
5 months ago when cross-compiling a Windows target. We actually don't use any
function from the Windows GDI (Graphics Device Interface) related with drawing
or graphics-related operations.
Dan Fandrich [Fri, 1 Aug 2008 02:09:08 +0000 (02:09 +0000)]
User names embedded in proxy URLs without a password were parsed
incorrectly--the host name is treated as part of the user name and the
port number becomes the password. This can be observed in test 279
(was KNOWN_ISSUE #54).
Dan Fandrich [Thu, 31 Jul 2008 22:46:29 +0000 (22:46 +0000)]
Fixed a problem with any FTP URL or any URLs containing an IPv6 address
being mangled when passed to proxies when CURLOPT_PORT is also set
(reported by Pramod Sharma).
Dan Fandrich [Thu, 31 Jul 2008 20:04:00 +0000 (20:04 +0000)]
Fixed parsing of an IPv6 proxy address to support a scope identifier,
as well as IPv4 addresses in IPv6 format. Also, better handle the case
of a malformatted IPv6 address (avoid empty and NULL strings).
Dan Fandrich [Thu, 31 Jul 2008 02:18:01 +0000 (02:18 +0000)]
Fixed a couple of problems in the IPv6 scope code. First, a host name in
an URL in a Location: header didn't have the scope ID removed, so an
invalid host name was used. Second, when the scope ID was removed, it
also removed any port number that may have existed in the URL.
Daniel Stenberg [Wed, 30 Jul 2008 21:55:26 +0000 (21:55 +0000)]
- Phil Blundell added the CURLOPT_SCOPE option, as well as adjusted the URL
parser to allow numerical IPv6-addresses to be specified with the scope
given, as per RFC4007 - with a percent letter that itself needs to be URL
escaped. For example, for an address of fe80::1234%1 the HTTP URL is:
"http://[fe80::1234%251]/"
Daniel Stenberg [Wed, 30 Jul 2008 21:24:59 +0000 (21:24 +0000)]
- PHP's bug report #43158 (http://bugs.php.net/bug.php?id=43158) identifies a
true bug in libcurl built with OpenSSL. It made curl_easy_getinfo() more or
less always return 0 for CURLINFO_SSL_VERIFYRESULT because the function that
would set it to something non-zero would return before the assign in almost
all error cases. The internal variable is now set to non-zero from the start
of the function only to get cleared later on if things work out fine.
Dan Fandrich [Wed, 30 Jul 2008 21:04:44 +0000 (21:04 +0000)]
Added test cases 1052 through 1055 to test uploading data from files
during redirects. Test cases 1052 and 1055 show problems (maybe the same
root cause as 1051) and are disabled.
Dan Fandrich [Wed, 30 Jul 2008 07:24:59 +0000 (07:24 +0000)]
Added test case 1051 to test Location: following with PUT, as reported
by Ben Sutcliffe. The test when run manually shows a problem in curl,
but the test harness web server doesn't run the test correctly so it's
disabled for now.
Yang Tse [Wed, 30 Jul 2008 03:10:03 +0000 (03:10 +0000)]
Reinstate the 'aclocal -I m4' in buildconf and 'ACLOCAL_AMFLAGS = -I m4' way of
including our local m4/reentrant.m4 file. This even takes care of including the
file in the distribution tarball.
Daniel Stenberg [Tue, 29 Jul 2008 21:51:47 +0000 (21:51 +0000)]
56. When libcurl sends CURLOPT_POSTQUOTE commands when connected to a SFTP
server using the multi interface, the commands are not being sent correctly
and instead the connection is "cancelled" (the operation is considered done)
prematurely. There is a half-baked (busy-looping) patch provided in the bug
report but it cannot be accepted as-is. See
http://curl.haxx.se/bug/view.cgi?id=2006544
Yang Tse [Tue, 29 Jul 2008 16:29:34 +0000 (16:29 +0000)]
Replace some '@%:@' quadigraphs by its actual representation '#'.
This quadigraph used before a C preprocessor 'define' directive could
be fooling M4, when processing this file, and make it think that the
line contains a pure M4 'define' macro.
Yang Tse [Tue, 29 Jul 2008 02:26:21 +0000 (02:26 +0000)]
Tests done using 'aclocal -I m4' in buildconf and 'ACLOCAL_AMFLAGS = -I m4
in top Makefile.am triggered a problem that prevented aclocal from running
successfully on SunOS 5.10 with GNU m4 1.4.5 and GNU Autoconf 2.61
A tarball which reproduces mentioned problem is the one dated July-28-2008
http://cool.haxx.se/curl-daily/curl-7.19.0-20080728.tar.gz
We actually don't need all the bells and whistles that the above mechanism
provides. We only need to include our m4/reentrant.m4 file in acinclude.m4
so here we go with this simpler mechanism.
Daniel Stenberg [Mon, 28 Jul 2008 21:53:25 +0000 (21:53 +0000)]
I removed: "139 - Christopher Palow's CURLM_EASY_HANDLE_EXISTS patch" simply
because at the current point in time I think the benefit of adding that new
return code is very slim and it is a lot of work to introduce new return codes
(for docs and maintenance etc)
I added "145 - Phil Blundell's CURLOPT_SCOPE patch/work" since I want it
sorted/committed.