Yang Tse [Thu, 14 Aug 2008 18:30:19 +0000 (18:30 +0000)]
Take three at trying to detect signed and unsigned curl_off_t integer constant
suffixes, using a test-and-try suffix approach letting the compiler validate it.
Yang Tse [Thu, 14 Aug 2008 11:56:55 +0000 (11:56 +0000)]
When using our internal curlx_strtoll function NEED_CURL_STRTOLL must be defined,
the source code of curlx_strtoll is excluded if NEED_CURL_STRTOLL isn't defined.
Yang Tse [Wed, 13 Aug 2008 15:32:20 +0000 (15:32 +0000)]
The size of long is a build time characteristic and as such it is now recorded
in curlbuild.h as CURL_SIZEOF_LONG. Definition now done from configure process
and in CVS curlbuild.h.dist for non-configure systems.
Dan Fandrich [Tue, 12 Aug 2008 20:07:52 +0000 (20:07 +0000)]
Fixed a buffer overflow problem in Curl_proxyCONNECT that could occur
when a server responded with long headers and data. Luckily, the buffer
overflowed into another unused buffer, so no actual harm was done.
Added test cases 1060 and 1061 to verify.
Yang Tse [Tue, 12 Aug 2008 03:00:24 +0000 (03:00 +0000)]
Added macros for minimum-width signed and unsigned curl_off_t integer
constants CURL_OFF_T_C and CURL_OFF_TU_C. The clever double helper macro
used internally to provide its functionality is thanks to Lars Nilsson.
Dan Fandrich [Mon, 11 Aug 2008 23:16:08 +0000 (23:16 +0000)]
Fixed a boundary condition error in ftp_readresp() whereby a non-terminal
line of a multiline FTP response whose last byte landed exactly at the end
of the BUFSIZE-length buffer would be treated as the terminal response
line. The following response code read in would then actually be the
end of the previous response line, and all responses from then on would
correspond to the wrong command. Test case 1062 verifies this.
Daniel Stenberg [Mon, 11 Aug 2008 20:29:36 +0000 (20:29 +0000)]
- Constantine Sapuntzakis filed bug report #2042430
(http://curl.haxx.se/bug/view.cgi?id=2042430) with a patch. "NTLM Windows
SSPI code is not thread safe". This was due to libcurl using static
variables to tell wether to load the necessary SSPI DLL, but now the loading
has been moved to the more suitable curl_global_init() call.
Daniel Stenberg [Mon, 11 Aug 2008 19:26:01 +0000 (19:26 +0000)]
- Constantine Sapuntzakis filed bug report #2042440
(http://curl.haxx.se/bug/view.cgi?id=2042440) with a patch. He identified a
problem when using NTLM over a proxy but the end-point does Basic, and then
libcurl would do wrong when the host sent "Connection: close" as the proxy's
NTLM state was erroneously cleared.
Yang Tse [Sun, 10 Aug 2008 18:33:41 +0000 (18:33 +0000)]
Fix NetWare curlbuild.h
NetWare curlbuild.h settings depend on whether LIBC or CLIB is used.
The NetWare specific Makefile is capable of knowing which target is being built.
So, finally, the NetWare Makefile will take care of generating curlbuild.h
Yang Tse [Fri, 8 Aug 2008 12:34:01 +0000 (12:34 +0000)]
Reintroduce the adjustment previously done in testcurl.pl so that it copies the
CVS checked out curlbuild.h.dist as curlbuild.h for any non-configure target
when host system is not running buildconf.bat.
All the curlbuild.h stuff was done taking in consideration that no adjustment
would be needed in non-configure makefiles.
As it is documented, when trying to build on non-configure capable systems or on
systems which for any reason don't run the true configure script, it is required
to have the proper curlbuild.h in place before calling any makefile.
Due to the hardcore memory debugging stuff c-ares enabled debug builds also need
the file in the proper place before attempting to build c-ares.
Yang Tse [Thu, 7 Aug 2008 22:40:06 +0000 (22:40 +0000)]
Remove last adjustment done to testcurl.pl to verify if change introduced by
Guenter Knauf in lib/Makefile.netware is enough to get the netware autobuilds
going again.
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.