Daniel Stenberg [Fri, 15 Feb 2008 22:37:00 +0000 (22:37 +0000)]
- Made the gnutls code path not even try to get the server cert if no peer
verification is requested. Previously it would even return failure if gnutls
failed to get the server cert even though no verification was asked for.
- Fix my Curl_timeleft() leftover mistake in the gnutls code
Daniel Stenberg [Fri, 15 Feb 2008 08:56:06 +0000 (08:56 +0000)]
- Pooyan McSporran found and fixed a flaw where you first would do a normal
http request and then you'd reuse the handle and replace the Accept: header,
as then libcurl would send two Accept: headers!
Yang Tse [Tue, 12 Feb 2008 13:47:56 +0000 (13:47 +0000)]
On heavily loaded systems any test server start up can take longer than the
timeout passed to startnew, when this happens startnew completes without being
able to read the pidfile and consequently returns a zero pid2.
To fix the above posibility the server pid is recovered from the verification
stage which will actually return the server pid when verification is valid.
Daniel Stenberg [Mon, 11 Feb 2008 22:03:31 +0000 (22:03 +0000)]
Yang Tse pointed out a few remaining quirks from my timeout refactoring from
Feb 7 that didn't abort properly on timeouts. These are actually old
problems but now they should be fixed.
Yang Tse [Sun, 10 Feb 2008 04:20:09 +0000 (04:20 +0000)]
Bug report #1888932 (http://curl.haxx.se/bug/view.cgi?id=1888932) points
out and provides test program that demonstrates that libcurl might not set
error description message for error CURLE_COULDNT_RESOLVE_HOST for Windows
threaded name resolver builds. Fixed now.
Yang Tse [Sun, 10 Feb 2008 02:52:17 +0000 (02:52 +0000)]
Verify only once test harness sftp server connectivity and functionality.
Make sure that the sftp client tool uses the ssh client binary that we have
used to generate the configuration files, otherwise sftp might be using one
located in the preferred path compiled into sftp.
Gunter Knauf [Sat, 9 Feb 2008 15:07:35 +0000 (15:07 +0000)]
make use of mv's backup feature so that calling the ca-bundle target more than once will never fail; ignore error which can occure if for whatever reason there's no orignial ca-bundle.crt to rename.
Daniel Stenberg [Fri, 8 Feb 2008 22:02:00 +0000 (22:02 +0000)]
- Mike Hommey filed and fixed bug report #1889856
(http://curl.haxx.se/bug/view.cgi?id=1889856): When using the gnutls ssl
layer, cleaning-up and reinitializing curl ends up with https requests
failing with "ASN1 parser: Element was not found" errors. Obviously a
regression added in 7.16.3.
Yang Tse [Fri, 8 Feb 2008 13:54:02 +0000 (13:54 +0000)]
To verify that the sftp server is actually running, responsive and that
all curl's tests generated configuration and key files are fine, a real
connection is established to the test harness sftp server authenticating
and running a simple sftp remote pwd command.
The verification is done using OpenSSH's or SunSSH's sftp client tool with
a configuration file with the same options as the test harness socks server
with the exception that dynamic forwarding is not used for sftp.
Daniel Stenberg [Fri, 8 Feb 2008 11:16:44 +0000 (11:16 +0000)]
Günter Knauf added lib/mk-ca-bundle.pl which gets the Firefox ca bundle and
creates a suitable ca-bundle.crt file in PEM format for use with curl. The
recommended way to run it is to use 'make ca-bundle' in the build tree root.
Daniel Stenberg [Fri, 8 Feb 2008 11:11:59 +0000 (11:11 +0000)]
provide the ca-bundle target the same way as the Makefile.dist does it so that
it works the same way for configure-based platforms as for non-configure ones
Gunter Knauf [Fri, 8 Feb 2008 02:57:27 +0000 (02:57 +0000)]
added ca-bundle target to main makefile;
for now this does rename the existing ca-bundle.crt to ca-bundle.crt.old;
maybe we can remove this once we are 100% sure that the new script works properly, and just overwrite the shipping one?
Daniel Stenberg [Thu, 7 Feb 2008 22:25:04 +0000 (22:25 +0000)]
- Refactored a lot of timeout code into a few functions in an attempt to make
them all use the same (hopefully correct) logic to make it less error-prone
and easier to introduce library-wide where it should be used.
Daniel Stenberg [Thu, 7 Feb 2008 15:43:36 +0000 (15:43 +0000)]
ca-bundle.crt documentational updates that more clearly describe the bundle
ca-bundle.crt file as outdated and in need for replacement by anyone who wants
to verify modern peers as the one we have is from year 2000!
Yang Tse [Tue, 5 Feb 2008 02:21:38 +0000 (02:21 +0000)]
proper initialization of httprequest, no longer zeroing out twice
the whole 150000+ bytes struct, and also removing an equally big
additional buffer for pipelining treatment.
Daniel Stenberg [Sun, 3 Feb 2008 12:28:48 +0000 (12:28 +0000)]
threaded-ssl.c is a little example that does multi-threaded downloads from
HTTPS sites with OpenSSL-enabled libcurl (and pthreads) and thus do the
thread-locking and things openssl-style.
Dan Fandrich [Fri, 1 Feb 2008 20:34:27 +0000 (20:34 +0000)]
Make mkinstalldirs ignore umask, for consistency with the rest of the
install process. Note that mkinstalldirs appears to be used only
in some configurations.
Daniel Stenberg [Thu, 31 Jan 2008 12:21:57 +0000 (12:21 +0000)]
- Niklas Angebrand made the cookie support in libcurl properly deal with the
"HttpOnly" feature introduced by Microsoft and apparently also supported by
Firefox: http://msdn2.microsoft.com/en-us/library/ms533046.aspx . HttpOnly
is now supported when received from servers in HTTP headers, when written to
cookie jars and when read from existing cookie jars.
Daniel Stenberg [Thu, 31 Jan 2008 12:04:33 +0000 (12:04 +0000)]
- Dmitry Kurochkin moved several struct fields from the connectdata struct to
the SingleRequest one to make pipelining better. It is a bit tricky to keep
them in the right place, to keep things related to the actual request or to
the actual connection in the right place.
Daniel Stenberg [Thu, 31 Jan 2008 11:36:05 +0000 (11:36 +0000)]
bug 51 may possibly be fixed, and as such it is not a known bug anymore:
51.Kevin Reed's reported problem with a proxy when doing CONNECT and it
wants NTLM and close the connection to the initial CONNECT response:
http://curl.haxx.se/bug/view.cgi?id=1879375
Daniel Stenberg [Sun, 27 Jan 2008 22:53:09 +0000 (22:53 +0000)]
Dmitry Kurochkin: In "real world" testing I found more bugs in
pipelining. Broken connection is not restored and we get into infinite
loop. It happens because of wrong is_in_pipeline values.
Daniel Stenberg [Fri, 25 Jan 2008 23:33:45 +0000 (23:33 +0000)]
- Kevin Reed filed bug report #1879375
(http://curl.haxx.se/bug/view.cgi?id=1879375) which describes how libcurl
got lost in this scenario: proxy tunnel (or HTTPS over proxy), ask to do any
proxy authentication and the proxy replies with an auth (like NTLM) and then
closes the connection after that initial informational response.
libcurl would not properly re-initialize the connection to the proxy and
continue the auth negotiation like supposed. It does now however, as it will
now detect if one or more authentication methods were available and asked
for, and will thus retry the connection and continue from there.
- I made the progress callback get called properly during proxy CONNECT.
Gunter Knauf [Wed, 23 Jan 2008 02:10:40 +0000 (02:10 +0000)]
removed inclusion of libcurl memory debug headers since this lib stub is a well proofed method suggested by Novell. This enables usage of the stub with language bindings.