Dan Fandrich [Fri, 22 Aug 2008 22:57:25 +0000 (22:57 +0000)]
Fixed a problem when --dump-header - was given with more than one URL,
which caused an error when the second header was dumped due to stdout
being closed. Added test case 1066 to verify. Also fixed a potential
problem where a closed file descriptor might be used for an upload
when more than one URL is given.
Daniel Stenberg [Fri, 22 Aug 2008 09:00:47 +0000 (09:00 +0000)]
Removed issue #154 due to the massive problems I've had to repeat it and since
this really hasn't bitten anyone else. The issuer of the report (Felix) suggested
the closure himself and he will get back when (if?) he manage to get a more
reliable way to see the problem.
154 - bug #2041827 "Segfault in http_output_auth w/ FORBID_REUSE (7.18.2)"
Daniel Stenberg [Fri, 22 Aug 2008 07:58:30 +0000 (07:58 +0000)]
Sort of hackish approach to get the off_t size before large file support
is enabled (or skipped). Thanks to Jamie Lokier for the nice work-around the
cached-check-problem: http://curl.haxx.se/mail/lib-2008-08/0331.html
Daniel Stenberg [Thu, 21 Aug 2008 18:28:58 +0000 (18:28 +0000)]
57. On VMS-Alpha: When using an http-file-upload the file is not sent to the
Server with the correct content-length. Sending a file with 511 or less
bytes, content-length 512 is used. Sending a file with 513 - 1023 bytes,
content-length 1024 is used. Files with a length of a multiple of 512 Bytes
show the correct content-length. Only these files work for upload.
http://curl.haxx.se/bug/view.cgi?id=2057858
Daniel Stenberg [Wed, 20 Aug 2008 19:29:00 +0000 (19:29 +0000)]
- Phil Pellouchoud pointed out that the windows version of libcurl had a
memory leak because it never called the OpenSSL function
CRYPTO_cleanup_all_ex_data() as it was supposed to. This was because of a
missing define in config-win32.h!
Yang Tse [Mon, 18 Aug 2008 09:58:08 +0000 (09:58 +0000)]
Added test case 557 to verify libcurl's internal curl_m*printf() functions
formatting functionality when handling signed and unsigned longs, as well as
our curl_off_t data type.
Yang Tse [Sun, 17 Aug 2008 13:25:54 +0000 (13:25 +0000)]
OpenSSl enabled NetWare builds are changed to use the 'openssl' subdirectory
when including the OpenSSL header files. This is the recommended setting, this
prevents the undesired inclusion of header files with the same name as those
of OpenSSL but which do not belong to the OpenSSL package. The visible change
from previously released libcurl versions is that now OpenSSl enabled NetWare
builds also define USE_OPENSSL in config files, and that OpenSSL header files
must be located in a subdirectory named 'openssl'.
Yang Tse [Sat, 16 Aug 2008 01:33:59 +0000 (01:33 +0000)]
Library internal only C preprocessor macros FORMAT_OFF_T and FORMAT_OFF_TU
remain in use as internal curl_off_t print formatting strings for the internal
*printf functions which still cannot handle print formatting string directives
such as "I64d", "I64u", and others available on MSVC, MinGW, Intel's ICC, and
other DOS/Windows compilers.
Dan Fandrich [Fri, 15 Aug 2008 19:18:46 +0000 (19:18 +0000)]
Added test case 1065 to test a PUT with a single file but two URLs. This
was discovered to be problematic while investigating an incident reported by
Von back in May. curl in this case doesn't include a Content-Length: or
Transfer-Encoding: chunked header which is illegal. This test case is
added to DISABLED until a solution is found.
Yang Tse [Fri, 15 Aug 2008 02:58:15 +0000 (02:58 +0000)]
For congruency sake with the naming of other CURL_XXXXXX_CURL_OFF_T macros,
the names of the curl_off_t formatting string directives now become
CURL_FORMAT_CURL_OFF_T and CURL_FORMAT_CURL_OFF_TU.
Remove the use of an internal name for the curl_off_t formatting string directives
and use the common one available from the inside and outside of the library.
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.