Daniel Stenberg [Wed, 18 Oct 2006 15:10:49 +0000 (15:10 +0000)]
When a connection is re-used, it can be flagged for re-use before the name
resolving is completed so we must make sure to survive it and mark the
connection as async (ie not yet connected completely).
Daniel Stenberg [Tue, 17 Oct 2006 21:32:56 +0000 (21:32 +0000)]
Avoid typecasting a signed char to an int when using is*() functions, as that
could very well cause a negate number get passed in and thus cause reading
outside of the array usually used for this purpose.
We avoid this by using the uppercase macro versions introduced just now that
does some extra crazy typecasts to avoid byte codes > 127 to cause negative
int values.
Daniel Stenberg [Tue, 17 Oct 2006 09:05:44 +0000 (09:05 +0000)]
make the low_speed check set the expire timer so that it has a chance to work
even when using curl_multi_socket() or even using the multi_perform() when
relying on multi_timeout() to be good.
Daniel Stenberg [Mon, 16 Oct 2006 08:30:54 +0000 (08:30 +0000)]
Added a check in configure that simply tries to run a program (not when
cross-compiling) in order to detect problems with run-time libraries that
otherwise would occur when the sizeof tests for curl_off_t would run and
thus be much more confusing to users. The check of course should run after
all lib-checks are done and before any other test is used that would run an
executable built for testing-purposes.
Dan Fandrich [Fri, 13 Oct 2006 21:02:27 +0000 (21:02 +0000)]
The tagging of application/x-www-form-urlencoded POST body data sent
to the CURLOPT_DEBUGFUNCTION callback has been fixed (it was erroneously
included as part of the header). A message was also added to the
command line tool to show when data is being sent, enabled when
--verbose is used.
Daniel Stenberg [Fri, 13 Oct 2006 07:11:26 +0000 (07:11 +0000)]
Added curl_multi_dump() when built with CURLDEBUG - this is not a stable public
function, this is only meant to allow easier tracking of the internal handle's
state and what sockets they use. Only for research and development.
Daniel Stenberg [Thu, 12 Oct 2006 08:36:47 +0000 (08:36 +0000)]
Jeff Pohlmeyer has been working with the hiperfifo.c example source code,
and while doing so it became apparent that the current timeout system for
the socket API really was a bit awkward since it become quite some work to
be sure we have the correct timeout set.
Jeff then provided the new CURLMOPT_TIMERFUNCTION that is yet another
callback the app can set to get to know when the general timeout time
changes and thus for an application like hiperfifo.c it makes everything a
lot easier and nicer. There's a CURLMOPT_TIMERDATA option too of course in
good old libcurl tradition.
Daniel Stenberg [Mon, 9 Oct 2006 21:29:53 +0000 (21:29 +0000)]
Added test case 536 in an attempt to add Bogdan Nicula's problematic case
with multi interface and pipelining. This test just works and did not repeat
the problem his test code showed, but could still serve as a useful test.
Daniel Stenberg [Mon, 9 Oct 2006 06:58:05 +0000 (06:58 +0000)]
Bogdan Nicula's second test case (posted Sun, 08 Oct 2006) converted to test
case 535 and it now runs fine. Again a problem with the pipelining code not
taking all possible (error) conditions into account.
Daniel Stenberg [Sun, 8 Oct 2006 08:43:32 +0000 (08:43 +0000)]
Fix a "sockfilt" leak. When a new 'data' connection sockfilt server is started,
make sure that a previously used one is killed first (since they re-use the
same .pid file etc)
Daniel Stenberg [Wed, 4 Oct 2006 21:11:08 +0000 (21:11 +0000)]
Dmitriy Sergeyev provided an example source code that crashed CVS libcurl
but that worked nicely in 7.15.5. I converted it into test case 532 and
fixed the problem.
Daniel Stenberg [Thu, 28 Sep 2006 21:26:06 +0000 (21:26 +0000)]
Reported in #1561470 (http://curl.haxx.se/bug/view.cgi?id=1561470), libcurl
would crash if a bad function sequence was used when shutting down after
using the multi interface (i.e using easy_cleanup after multi_cleanup) so
precautions have been added to make sure it doesn't any more - test case 529
was added to verify.
Daniel Stenberg [Sat, 23 Sep 2006 19:07:20 +0000 (19:07 +0000)]
Dmitriy Sergeyev provided a patch that made the SOCKS[45] code work better as
it now will read the full data sent from servers. The SOCKS-related code was
also moved to the new lib/socks.c source file.
Daniel Stenberg [Thu, 21 Sep 2006 20:52:20 +0000 (20:52 +0000)]
Added test case 531 in an attempt to repeat bug report #1561470
(http://curl.haxx.se/bug/view.cgi?id=1561470) that is said to crash when an
FTP upload fails with the multi interface. It did not, but I made a failed
upload still assume the control connection to be fine.