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"
Daniel Stenberg [Sun, 18 Feb 2007 23:02:42 +0000 (23:02 +0000)]
- Jeff Pohlmeyer identified two problems: first a rather obscure problem with
the multi interface and connection re-use that could make a
curl_multi_remove_handle() ruin a pointer in another handle.
The second problem was less of an actual problem but more of minor quirk:
the re-using of connections wasn't properly checking if the connection was
marked for closure.
Dan Fandrich [Sat, 17 Feb 2007 01:29:01 +0000 (01:29 +0000)]
Better separate the library dependencies into those required by libcurl
and those required by other components to avoid forcing unneeded
dependencies into the target objects.
Yang Tse [Thu, 15 Feb 2007 16:23:24 +0000 (16:23 +0000)]
introduce uppercase macros SOCKERRNO, SET_SOCKERRNO(), ERRNO and SET_ERRNO()
making them available to any source code file which includes "setup.h".
Macro SOCKERRNO / SET_SOCKERRNO() returns / sets the *socket-related* errno
(or equivalent) on this platform to hide platform details to code using it.
Macro ERRNO / SET_ERRNO() returns / sets the NOT *socket-related* errno
(or equivalent) on this platform to hide platform details to code using it.
Yang Tse [Thu, 15 Feb 2007 14:02:32 +0000 (14:02 +0000)]
icc 9.0 when compiling its generated code for its own FD_SET,
FD_ISSET, and FD_ZERO macros emits warnings #1469 and #593.
So for icc 9.0 we also ignore warnings #1469 and #593.
* 593 warns on "variable __d0 was set but never used"
* 1469 warns on "cc clobber ignored"
Daniel Stenberg [Tue, 13 Feb 2007 21:21:44 +0000 (21:21 +0000)]
- Robert A. Monat made libcurl build fine with VC2005 - it doesn't have
gmtime_r() like the older VC versions. He also made use of some machine-
specific defines to differentiate the "OS" define.
Yang Tse [Tue, 13 Feb 2007 16:14:25 +0000 (16:14 +0000)]
Fix c-ares failing to get the search sequence of /etc/hosts and
DNS from /etc/nsswitch.conf, /etc/host.conf or /etc/svc.conf when
/etc/resolv.conf did not exist or was unable to read it.