Dan Fandrich [Mon, 12 Mar 2007 20:50:16 +0000 (20:50 +0000)]
libcurl supplies its own crypto hash functions when SSL is disabled, so
'crypto' tests aren't dependent on SSL. Compiling with
--disable-crypto-auth will cause test failures, however.
Daniel Stenberg [Sat, 10 Mar 2007 12:11:21 +0000 (12:11 +0000)]
- Bryan Henderson introduces two things:
1) the progress callback gets called more frequently (at times)
2) libcurl *might* call the callback when it receives a signal
Dan Fandrich [Fri, 9 Mar 2007 23:39:42 +0000 (23:39 +0000)]
Updated the test harness to add a new "crypto" feature check and updated the
appropriate test case to use it. For now, this is treated the same as the
"SSL" feature because curl doesn't list it separately.
Daniel Stenberg [Fri, 9 Mar 2007 21:51:38 +0000 (21:51 +0000)]
- Justin Fletcher fixed a file descriptor leak in the curl tool when trying to
upload a file it couldn't open. Bug #1676581
(http://curl.haxx.se/bug/view.cgi?id=1676581)
Dan Fandrich [Fri, 9 Mar 2007 21:01:39 +0000 (21:01 +0000)]
Updated the test harness to check for protocol support before running each
test, fixing KNOWN_BUGS #11. Fixed some tests to more accurately specify
their required servers and features.
Yang Tse [Thu, 8 Mar 2007 12:04:30 +0000 (12:04 +0000)]
remove code superceeded by the new method used to force
libtool to skip C++ and Fortran checks in patchset:
http://cool.haxx.se/cvs.cgi/curl/ares/configure.ac.diff?r1=1.60&r2=1.64
Dan Fandrich [Thu, 8 Mar 2007 02:38:49 +0000 (02:38 +0000)]
Added test infrastructure to support basic FTPS tests. This currently
supports only ftps:// URLs with --ftp-ssl-control specified, which
implicitly encrypts the control channel but not the data channels. That
allows stunnel to be used with an unmodified ftp server in exactly the
same way that the test https server is set up.
Added test case 400 as a basic FTPS test.
Yang Tse [Wed, 7 Mar 2007 01:13:03 +0000 (01:13 +0000)]
Autoconf redefines the M4 builtin macro 'm4_undefine' in such a way that
it fails if the macro that is being undefined is not already defined. To
make this work under all cases and be sure that at a certain point some
specific macro isn't defined we must use the following style in configure:
Daniel Stenberg [Fri, 2 Mar 2007 22:42:43 +0000 (22:42 +0000)]
- Robert A. Monat and Shmulik Regev helped out to fix the new */Makefile.vc8
makefiles that are included in the source release archives, generated from
the Makefile.vc6 files by the maketgz script. I also modified the root
Makefile to have a VC variable that defaults to vc6 but can be overridden to
allow it to be used for vc8 as well. Like this:
Yang Tse [Thu, 1 Mar 2007 12:02:17 +0000 (12:02 +0000)]
Do not remove CURLM_STATE_WAITPROXYCONNECT from the CURLMstate enum
in builds with HTTP support disabled to keep consistent enum values
for CURLMstate in all kind of builds.
Daniel Stenberg [Tue, 27 Feb 2007 22:12:15 +0000 (22:12 +0000)]
- Hang Kin Lau found and fixed: When I use libcurl to connect to an https
server through a proxy and have the remote https server port set using the
CURLOPT_PORT option, protocol gets reset to http from https after the first
request.
User defined URL was modified internally by libcurl and subsequent reuse of
the easy handle may lead to connection using a different protocol (if not
originally http).
I found that libcurl hardcoded the protocol to "http" when it tries to
regenerate the URL if CURLOPT_PORT is set. I tried to fix the problem as
follows and it's working fine so far
Daniel Stenberg [Tue, 27 Feb 2007 12:44:14 +0000 (12:44 +0000)]
Somewhat updated, changes include: I tried to be more agnostic about the
specific SSL library that might be used, and I cut out the closepolicy stuff
that we no longer support
Daniel Stenberg [Sun, 25 Feb 2007 11:38:13 +0000 (11:38 +0000)]
- Adam D. Moss made the HTTP CONNECT procedure less blocking when used from
the multi interface. Note that it still does a part of the connection in a
blocking manner.
Daniel Stenberg [Fri, 23 Feb 2007 09:48:01 +0000 (09:48 +0000)]
- Added warning outputs if the command line uses more than one of the options
-v, --trace and --trace-ascii, since it could really confuse the user.
Clarified this fact in the man page.
Yang Tse [Thu, 22 Feb 2007 02:51:54 +0000 (02:51 +0000)]
Check for stdbool.h at configuration stage, and include it if available.
Check for lowercase 'bool' type at configuration stage. If not available
provide a suitable replacement with a type definition of 'unsigned char'
in setup_once.h
Move definitions of TRUE and FALSE to setup_once.h
Daniel Stenberg [Wed, 21 Feb 2007 21:59:40 +0000 (21:59 +0000)]
- Ravi Pratap provided work on libcurl making pipelining more robust and
fixing some bugs:
o Don't mix GET and POST requests in a pipeline
o Fix the order in which requests are dispatched from the pipeline
o Fixed several curl bugs with pipelining when the server is returning
chunked encoding:
* Added states to chunked parsing for final CRLF
* Rewind buffer after parsing chunk with data remaining
* Moved chunked header initializing to a spot just before receiving
headers
Yang Tse [Tue, 20 Feb 2007 12:13:14 +0000 (12:13 +0000)]
curl tool was using functions curlx_tvnow and curlx_tvdiff which are not
part of the official libcurl API http://curl.haxx.se/lxr/source/lib/README.curlx
The documented way of using them would be to use timeval.c as a source code file.
The above described method works very well when statically linking libcurl and
apps, curl tool, but has several drawbacks when you build a true shared
libcurl (i.e. Name space clash at linkage stage as functions are defined more
than once. Windows makefiles are not capable of handling this system of
source-level sharing)
So...
Now curlutil.h and curlutil.c define and implement cutil_tvnow and cutil_tvdiff
which replace curlx_tvnow and curlx_tvdiff for the curl tool. Doing this we
avoid the above described problems.
Yang Tse [Mon, 19 Feb 2007 19:41:48 +0000 (19:41 +0000)]
Show libcurl's timestamp. This timestamp is only available in curlver.h
for tarball-based tests and builds, the maketgz script inserts it when
the tarball is created. For CVS-based tests and builds the timestamp we
show is the current UTC build time as it is the CVS version timestamp.
In this way, all builds will have a valid source code timestamp which
isn't related to the moment the tests and build is performed, with the
exception of CVS-based ones which have the same "date" and "timestamp"