Yang Tse [Thu, 29 Oct 2009 17:52:56 +0000 (17:52 +0000)]
Updated MSVC 6.0 workspace and project files that allows building
dynamic and static c-ares libraries in debug and release flavours.
Additionally each of the three sample programs is built against
each of the four possible c-ares libraries, generating all this
a total number of 12 executables and 4 libraries.
Daniel Stenberg [Thu, 29 Oct 2009 09:12:40 +0000 (09:12 +0000)]
no need to check for NULL pointers before dereferencing, as the pointers
MUST be valid and they are dereferenced further down in the function
unconditionally!
Yang Tse [Thu, 29 Oct 2009 03:48:00 +0000 (03:48 +0000)]
Take in account c-ares 1.6.1 will use __declspec function decoration
for Win32 and Symbian unless CARES_STATICLIB is defined to use static
library linkage.
Daniel Stenberg [Wed, 28 Oct 2009 20:30:23 +0000 (20:30 +0000)]
Since the NSS lib closes the socket the memory tracking system wrongly gets a
false positive on a leaked socket, so this introduces a way to tell the system
that the socket is indeed closed without explicitly closing it!
Yang Tse [Wed, 28 Oct 2009 19:45:26 +0000 (19:45 +0000)]
Initial step towards the ability to reduce c-ares exported symbols
based on the 'visibility' attribute for GNUC and __global for Sun
compilers, taking also in account __declspec function decoration
for Win32 and Symbian DLL's.
Introducing configure options --enable-hidden-symbols and
--disable-hidden-symbols following libcurl's naming.
Daniel Stenberg [Sun, 25 Oct 2009 18:15:14 +0000 (18:15 +0000)]
- Dima Barsky made the curl cookie parser accept cookies even with blank or
unparsable expiry dates and then treat them as session cookies - previously
libcurl would reject cookies with a date format it couldn't parse. Research
shows that the major browser treat such cookies as session cookies. I
modified test 8 and 31 to verify this.
Daniel Stenberg [Wed, 21 Oct 2009 12:29:52 +0000 (12:29 +0000)]
- A patch in bug report #2883177 (http://curl.haxx.se/bug/view.cgi?id=2883177)
by user 'koresh' introduced the --crlfile option to curl, which makes curl
tell libcurl about a file with CRL (certificate revocation list) data to
read.
Yang Tse [Wed, 21 Oct 2009 02:30:56 +0000 (02:30 +0000)]
Detect when msvc 6.0 is in use without PSDK installed, intentionally
fail to build when this happens, and show an appropriate error.
The brave of heart can circumvect this. Defining ALLOW_MSVC6_WITHOUT_PSDK
in lib/config-win32.h, although absolutely discouraged and unsupported,
this will allow the die hard MSVC hacker to build in such a discouraged
environment.
The actually supported 'fix' is to install 'February 2003 Platform SDK'
a.k.a. 'Windows Server 2003 PSDK' which can be freely downloaded from
http://www.microsoft.com/msdownload/platformsdk/sdkupdate/psdk-full.htm
Yang Tse [Mon, 19 Oct 2009 04:11:54 +0000 (04:11 +0000)]
Our _AS_PATH_SEPARATOR_PREPARE override is now m4_defun'd instead of m4_define'd
due to autoconf 2.64 m4_require'ing it in _AS_SHELL_SANITIZE indirectly through
_AS_PATH_WALK.
Daniel Stenberg [Sun, 18 Oct 2009 21:56:19 +0000 (21:56 +0000)]
- Ray Dassen provided a patch in Debian's bug tracker (bug number #551461)
that now makes curl_getdate(3) actually handles RFC 822 formatted dates that
use the "single letter military timezones".
http://www.rfc-ref.org/RFC-TEXTS/822/chapter5.html has the details.
Daniel Stenberg [Sun, 18 Oct 2009 00:18:27 +0000 (00:18 +0000)]
John Dennis filed bug report #2873666
(http://curl.haxx.se/bug/view.cgi?id=2873666) which identified a problem which
made libcurl loop infinitely when given incorrect credentials when using HTTP
GSS negotiate authentication.
Daniel Stenberg [Sun, 18 Oct 2009 00:10:13 +0000 (00:10 +0000)]
- Kevin Baughman found a double close() problem with libcurl-NSS, as when
libcurl called NSS to close the SSL "session" it also closed the actual
socket.
Yang Tse [Tue, 6 Oct 2009 14:14:13 +0000 (14:14 +0000)]
Fix vc-x64 target having MACHINE= wrongly positioned, and added vc-x64-ssl-zlib
target as indicated end requested by Viktor Szakats in bug report #2872879.
Daniel Stenberg [Thu, 1 Oct 2009 07:59:45 +0000 (07:59 +0000)]
- Tom Mueller correctly reported in bug report #2870221
(http://curl.haxx.se/bug/view.cgi?id=2870221) that libcurl returned an
incorrect return code from the internal trynextip() function which caused
him grief. This is a regression that was introduced in 7.19.1 and I find it
strange it hasn't hit us harder, but I won't persue into figuring out
exactly why.
Daniel Stenberg [Thu, 1 Oct 2009 07:05:07 +0000 (07:05 +0000)]
- Constantine Sapuntzakis: The current implementation will always set
SO_SNDBUF to CURL_WRITE_SIZE even if the SO_SNDBUF starts out larger. The
patch doesn't do a setsockopt if SO_SNDBUF is already greater than
CURL_WRITE_SIZE. This should help folks who have set up their computer with
large send buffers.
Daniel Stenberg [Sun, 27 Sep 2009 21:34:13 +0000 (21:34 +0000)]
- I introduced a maximum limit for received HTTP headers. It is controlled by
the define CURL_MAX_HTTP_HEADER which is even exposed in the public header
file to allow for users to fairly easy rebuild libcurl with a modified
limit. The rationale for a fixed limit is that libcurl is realloc()ing a
buffer to be able to put a full header into it, so that it can call the
header callback with the entire header, but that also risk getting it into
trouble if a server by mistake or willingly sends a header that is more or
less without an end. The limit is set to 100K.
Daniel Stenberg [Sat, 26 Sep 2009 20:51:51 +0000 (20:51 +0000)]
- John P. McCaskey posted a bug report that showed how libcurl did wrong when
saving received cookies with no given path, if the path in the request had a
query part. That is means a question mark (?) and characters on the right
side of that. I wrote test case 1105 and fixed this problem.
- Implemented a protocol independent way to specify blocking direction, used by
transfer.c for blocking. It is currently used only by SCP and SFTP protocols.
This enhancement resolves an issue with 100% CPU usage during SFTP upload,
reported by Vourhey.
Daniel Stenberg [Fri, 25 Sep 2009 18:09:38 +0000 (18:09 +0000)]
- Chris Mumford filed bug report #2861587
(http://curl.haxx.se/bug/view.cgi?id=2861587) identifying that libcurl used
the OpenSSL function X509_load_crl_file() wrongly and failed if it would
load a CRL file with more than one certificate within. This is now fixed.
added support for new SQLite cert database format: added a runtime check for version 3.12.0, and depending on the result add 'sql:' prefix to cert database directory so that newer SQLIte database format works.