Kamil Dudka [Wed, 2 Jun 2010 21:55:45 +0000 (23:55 +0200)]
ftplistparser.c: oops, fix typo in the last commit
Kamil Dudka [Wed, 2 Jun 2010 21:22:38 +0000 (23:22 +0200)]
ftplistparser.c: avoid some invalid dereferences
Kamil Dudka [Wed, 2 Jun 2010 21:11:59 +0000 (23:11 +0200)]
lib: eliminate some dead code
Daniel Stenberg [Wed, 2 Jun 2010 21:33:51 +0000 (23:33 +0200)]
SSH: corrected the inability to respect the timeout
Jason McDonald posted bug report #3006786 when he found that the
SFTP code didn't timeout properly in several places in the code
even if a timeout was set properly.
Based on his suggested patch, I wrote a different implementation
that I think addressed the issue better and also uses the connect
timeout for the initial part of the SSH/SFTP done during the
"protocol connect" phase.
(http://curl.haxx.se/bug/view.cgi?id=3006786)
Yang Tse [Wed, 2 Jun 2010 15:30:45 +0000 (17:30 +0200)]
mention last changes
Yang Tse [Wed, 2 Jun 2010 13:09:39 +0000 (15:09 +0200)]
add missing new files to non-configure target build files
Yang Tse [Wed, 2 Jun 2010 12:13:02 +0000 (14:13 +0200)]
include libcurl standard internal headers
Daniel Stenberg [Wed, 2 Jun 2010 11:52:25 +0000 (13:52 +0200)]
TODO: add multi interface improvement remove ldap select
Yang Tse [Wed, 2 Jun 2010 11:19:04 +0000 (13:19 +0200)]
make setup.h first included file
Yang Tse [Wed, 2 Jun 2010 10:44:46 +0000 (12:44 +0200)]
fix spnego memory leak
Yang Tse [Wed, 2 Jun 2010 09:23:30 +0000 (11:23 +0200)]
openldap header inclusions fix
Daniel Stenberg [Tue, 1 Jun 2010 21:18:34 +0000 (23:18 +0200)]
multi_socket: handles timer inaccuracy better for timeouts
Igor Novoseltsev reported a problem with the multi socket API and
using timeouts and timers. It boiled down to a problem with
libcurl's use of GetTickCount() interally to figure out the
current time, while Igor's own application code used another
function call.
It made his app call the socket API timeout function a bit
_before_ libcurl would consider the timeout to trigger, and that
could easily lead to timeouts or stalls in the app. It seems
GetTickCount() in general often has no better resolution than
16ms and switching to the alternative function
QueryPerformanceCounter has its share of problems:
http://www.virtualdub.org/blog/pivot/entry.php?id=106
We address this problem by simply having libcurl treat timers
that already has occured or will occur within 40ms subject for
treatment. I'm confident that there are other implementations and
operating systems with similarly in accurate timer functions so
it makes sense to have applied generically and I don't believe we
sacrifice much by adding a 40ms inaccuracy on these timeouts.
Yang Tse [Tue, 1 Jun 2010 19:26:19 +0000 (21:26 +0200)]
fix ldaps option issue
Yang Tse [Tue, 1 Jun 2010 15:25:03 +0000 (17:25 +0200)]
fix ldap related compilation issues
Yang Tse [Tue, 1 Jun 2010 10:25:14 +0000 (12:25 +0200)]
fix compiler warning: enumerated type mixed with another type
Yang Tse [Mon, 31 May 2010 17:55:22 +0000 (19:55 +0200)]
fix compiler warning: enumerated type mixed with another type
Patrick Monnerat [Mon, 31 May 2010 15:25:55 +0000 (17:25 +0200)]
smtp_authenticate: avoid compiler warnings
Yang Tse [Mon, 31 May 2010 15:34:28 +0000 (17:34 +0200)]
fix compiler warning: enumerated type mixed with another type
Yang Tse [Mon, 31 May 2010 15:22:43 +0000 (17:22 +0200)]
fix compiler warning: enumerated type mixed with another type
Yang Tse [Mon, 31 May 2010 15:11:51 +0000 (17:11 +0200)]
fix compiler warning: enumerated type mixed with another type
Yang Tse [Mon, 31 May 2010 14:58:24 +0000 (16:58 +0200)]
fix compiler warning: external declaration in primary source file
Yang Tse [Mon, 31 May 2010 14:51:36 +0000 (16:51 +0200)]
fix compiler warning: variable was set but never used
Yang Tse [Mon, 31 May 2010 14:36:05 +0000 (16:36 +0200)]
fix compiler warning: enumerated type mixed with another type
Yang Tse [Mon, 31 May 2010 14:24:01 +0000 (16:24 +0200)]
fix compiler warning: external declaration in primary source file
Yang Tse [Mon, 31 May 2010 11:51:29 +0000 (13:51 +0200)]
update year in copyright notice
Kamil Dudka [Sat, 29 May 2010 19:28:16 +0000 (21:28 +0200)]
strtoofft: rename CURL_LLONG_MIN -> CURL_OFF_T_MIN
... and CURL_LLONG_MAX -> CURL_OFF_T_MAX
Kamil Dudka [Sat, 29 May 2010 10:26:17 +0000 (12:26 +0200)]
CURL_LLONG_MAX: avoid constant overflow
... when (CURL_SIZEOF_CURL_OFF_T == 4)
Howard Chu [Fri, 28 May 2010 10:23:28 +0000 (12:23 +0200)]
LDAPS: list availability depending on SSL's presence
Howard Chu [Fri, 28 May 2010 10:22:35 +0000 (12:22 +0200)]
LDAP: make it build without SSL if no such support is available
of course it also goes for the case where SSL is explicitly
disabled
Daniel Stenberg [Fri, 28 May 2010 09:57:49 +0000 (11:57 +0200)]
TODO: removed fixed items
These two items are now actually implemented:
11.1 Content-Disposition
11.5 ftp wildcard download
Kamil Dudka [Fri, 28 May 2010 07:45:17 +0000 (09:45 +0200)]
lib: eliminate 'statement not reached' warnings
Daniel Stenberg [Thu, 27 May 2010 22:55:11 +0000 (00:55 +0200)]
test1115: verify that unexpected 1xx responses work fine
Kamil Dudka [Thu, 27 May 2010 22:50:11 +0000 (00:50 +0200)]
lib577: avoid redefinition of ERROR
Kamil Dudka [Thu, 27 May 2010 21:45:18 +0000 (23:45 +0200)]
test313: a new test for CRL support
Kamil Dudka [Thu, 27 May 2010 21:39:54 +0000 (23:39 +0200)]
tests/certs: re-generated because of lost pass-phrase
Kamil Dudka [Thu, 27 May 2010 21:33:19 +0000 (23:33 +0200)]
tests/certs/scripts: generate also CRL
... and make it possible to do so without any user interaction
Howard Chu [Thu, 27 May 2010 20:37:00 +0000 (22:37 +0200)]
openldap: fix compiler warnings
Daniel Stenberg [Thu, 27 May 2010 19:03:46 +0000 (21:03 +0200)]
indent: some whitespace edits
Kamil Dudka [Thu, 27 May 2010 18:56:01 +0000 (20:56 +0200)]
wildcard.c: add missing include of "setup.h"
Tor Arntsen [Thu, 27 May 2010 18:20:08 +0000 (20:20 +0200)]
lib573: do not compare double for exact match
Pavel Raiskup [Thu, 13 May 2010 15:50:27 +0000 (17:50 +0200)]
wildcard.c: add missing include of "curl_memory.h"
Tor Arntsen [Thu, 27 May 2010 14:58:15 +0000 (16:58 +0200)]
setup_once: use enum type for 'bool' on non-C99 platforms
An enum will catch non-bool assignments to bool on platforms with
a strict compiler, e.g MIPSPro.
Signed-off-by: Kamil Dudka <kdudka@redhat.com>
Kamil Dudka [Wed, 26 May 2010 09:12:26 +0000 (11:12 +0200)]
url.c: avoid implied cast to bool
Tor Arntsen [Thu, 27 May 2010 14:34:57 +0000 (16:34 +0200)]
curl_fnmatch: remove use of register keyword
Using the 'register' keyword rarely improves anything with modern
compilers and architectures.
Julien Chaffraix [Tue, 25 May 2010 13:43:41 +0000 (06:43 -0700)]
RTMP: Fix compiler warnings
Julien Chaffraix [Tue, 25 May 2010 13:53:48 +0000 (06:53 -0700)]
OOM fixes in http_negociate.c and lib/splay.c
Fix 2 OOM errors: a missing NULL-check in lib/http_negociate.c
and a potential NULL dereferencing in lib/splay.c
Howard Chu [Mon, 24 May 2010 22:44:42 +0000 (00:44 +0200)]
LDAP: properly implemented as a curl_handler
makes the LDAP code much cleaner, nicer and in general being a
better libcurl citizen. If a new enough OpenLDAP version is
detect, the new and shiny lib/openldap.c code is then used
instead of the old cruft
Code by Howard, minor cleanups by Daniel.
Tor Arntsen [Fri, 21 May 2010 14:21:44 +0000 (14:21 +0000)]
curl_fnmatch: Use int not bool when function returns int
bool in curl internals is unsigned char and should not be used
to receive return value from functions returning int - this fails
when using IBM VisualAge and Tru64 compilers.
Daniel Stenberg [Fri, 21 May 2010 21:29:52 +0000 (23:29 +0200)]
TFTP: send legal timeout value
Eric Mertens posted bug #3003705: when we made TFTP use the
correct timeout option when sent to the server (fixed May 18th
2010) it became obvious that libcurl used invalid timeout values
(300 by default while the RFC allows nothing above 255). While of
course it is obvious that as TFTP has worked thus far without
being able to set timeout at all, just removing the setting
wouldn't make any difference in behavior. I decided to still keep
it (but fix the problem) as it now actually allows for easier
(future) customization of the timeout.
(http://curl.haxx.se/bug/view.cgi?id=3003705)
Daniel Stenberg [Fri, 21 May 2010 21:07:59 +0000 (23:07 +0200)]
TFTP: don't ack if wrong block num is received
If an unexpected block number was received, break out of the
switch loop.
Daniel Stenberg [Fri, 21 May 2010 21:04:15 +0000 (23:04 +0200)]
TFTP: block id wrap bug fix
In a normal expression, doing [unsigned short] + 1 will not wrap
at 16 bits so the comparisons and outputs were done wrong. I
added a macro do make sure it gets done right.
Douglas Kilpatrick filed bug report #3004787 about it:
http://curl.haxx.se/bug/view.cgi?id=3004787
Ben Greear [Thu, 20 May 2010 18:15:52 +0000 (20:15 +0200)]
Fix build warnings.
Signed-off-by: Ben Greear <greearb@candelatech.com>
Ben Greear [Thu, 20 May 2010 18:15:51 +0000 (20:15 +0200)]
setopt: Fix setting of set.is_fwrite_set
Signed-off-by: Ben Greear <greearb@candelatech.com>
Tanguy Fautre [Thu, 20 May 2010 20:40:48 +0000 (22:40 +0200)]
build: allow curl to build with Microsoft VC10
By undefing a bunch of E* defines that VC10 has started to define
but that we redefine internally to their WSA* alternatives when
building for Windows.
Tor Arntsen [Thu, 20 May 2010 14:33:29 +0000 (16:33 +0200)]
Test 573: Use correct type for CURLINFO_CONNECT_TIME
curl_easy_getinfo() called with a pointer to long instead of double
would sigbus on RISC processors (e.g. MIPS) due to wrong alignment
of pointer address.
Tor Arntsen [Wed, 19 May 2010 14:26:08 +0000 (14:26 +0000)]
lib: Fix AIX build failure
Dan Fandrich [Wed, 19 May 2010 19:18:06 +0000 (12:18 -0700)]
Fixed some memory leaks in the POP3 torture tests
Dan Fandrich [Tue, 18 May 2010 21:44:19 +0000 (14:44 -0700)]
Fixed a memory leak in the SMTP torture tests
Daniel Stenberg [Tue, 18 May 2010 21:14:00 +0000 (23:14 +0200)]
TFTP: send timeout option correctly
Eric Mertens posted bug report #3003005 pointing out that the
libcurl TFTP code was not sending the timeout option properly to
the server, and suggested a fix.
(http://curl.haxx.se/bug/view.cgi?id=3003005)
Tor Arntsen [Sun, 16 May 2010 20:01:17 +0000 (22:01 +0200)]
lib: Change some CRLF line endings to LF
An update had added a couple of lines with DOS line endings,
and some compilers will choke on that (e.g. the Tru64 compiler).
Kamil Dudka [Sun, 16 May 2010 00:49:08 +0000 (02:49 +0200)]
ftp wildcard: a new option CURLOPT_FNMATCH_DATA
Howard Chu [Sat, 15 May 2010 20:13:17 +0000 (22:13 +0200)]
RMTP: the version code is now rtmp aware
Howard Chu [Sat, 15 May 2010 20:02:44 +0000 (22:02 +0200)]
RTMP: fix wrong #ifdef
Pavel Raiskup [Sat, 15 May 2010 19:58:50 +0000 (21:58 +0200)]
ftp wildcard: fix int32_t and size/group mixups
Dan Fandrich [Fri, 14 May 2010 21:42:58 +0000 (14:42 -0700)]
Fixed test 577 to work when --enable-hidden-symbols is configured
Daniel Stenberg [Fri, 14 May 2010 20:34:10 +0000 (22:34 +0200)]
OpenSSL: multi interface handshake could hang
John-Mark Bell filed bug #3000052 that identified a problem (with
an associated patch) with the OpenSSL handshake state machine
when the multi interface is used:
Performing an https request using a curl multi handle and using
select or epoll to wait for events results in a hang. It appears
that the cause is the fix for bug #2958179, which makes
ossl_connect_common unconditionally return from the step 2 loop
when fetching from a multi handle.
When ossl_connect_step2 has completed, it updates
connssl->connecting_state to ssl_connect_3. ossl_connect_common
will then return to the caller, as a multi handle is in
use. Eventually, the client code will call curl_multi_fdset to
obtain an updated fdset to select or epoll on. For https
requests, curl_multi_fdset will cause https_getsock to be called.
https_getsock will only return a socket handle if the
connecting_state is ssl_connect_2_reading or
ssl_connect_2_writing. Therefore, the client will never obtain a
valid fdset, and thus not drive the multi handle, resulting in a
hang.
(http://curl.haxx.se/bug/view.cgi?id=3000052)
Daniel Stenberg [Fri, 14 May 2010 20:19:08 +0000 (22:19 +0200)]
changelog: add link to bug report
Dan Fandrich [Fri, 14 May 2010 20:31:07 +0000 (13:31 -0700)]
Added directories.pm to the source tar ball
Daniel Stenberg [Fri, 14 May 2010 20:12:07 +0000 (22:12 +0200)]
follow redirect: ignore response-body on redirect even if compressed
Sebastian V reported bug #3000056 identifying a problem with
redirect following. It showed that when curl followed redirects
it didn't properly ignore the response body of the 30X response
if that response was using compressed Content-Encoding!
(http://curl.haxx.se/bug/view.cgi?id=3000056)
Daniel Stenberg [Fri, 14 May 2010 18:55:54 +0000 (20:55 +0200)]
version: we're now going for 7.21.0
Hoi-Ho Chan [Sun, 9 May 2010 17:44:32 +0000 (12:44 -0500)]
Remove support for BSD version of PolarSSL
"The BSD version of PolarSSL was made for migratory purposes only and is not
maintained. The GPL version of PolarSSL is actually the only actively
developed version, so I would be very reluctant to use the BSD version." /
Paul Bakker, PolarSSL hacker.
Signed-off-by: Hoi-Ho Chan <hoiho.chan@gmail.com>
Dan Fandrich [Thu, 13 May 2010 02:05:58 +0000 (19:05 -0700)]
Added Polar SSL and RTMP files to the non-autoconf build files
I didn't bother with a few that have little hope of running the required
dependent libraries.
Dan Fandrich [Thu, 13 May 2010 00:31:22 +0000 (17:31 -0700)]
Added the new ftp source files to the non-autoconf build files
Dan Fandrich [Wed, 12 May 2010 22:23:28 +0000 (15:23 -0700)]
Copy the license file so it's seen by the Android build system
Daniel Stenberg [Wed, 12 May 2010 22:07:37 +0000 (00:07 +0200)]
updated with symbols added in recent commits for 7.21.0
Daniel Stenberg [Wed, 12 May 2010 22:00:55 +0000 (00:00 +0200)]
changelogs: mention RTMP and the FTP wildcard support
Daniel Stenberg [Wed, 12 May 2010 21:59:11 +0000 (23:59 +0200)]
ftp wildcards: mention they're added in 7.21.0
Daniel Stenberg [Wed, 12 May 2010 21:32:42 +0000 (23:32 +0200)]
style: minor whitespace change
Daniel Stenberg [Wed, 12 May 2010 21:18:22 +0000 (23:18 +0200)]
syntax: cleanups
Pavel Raiskup [Wed, 12 May 2010 13:33:22 +0000 (15:33 +0200)]
FTP: WILDCARDMATCH/CHUNKING/FNMATCH added
Howard Chu [Wed, 12 May 2010 21:07:20 +0000 (23:07 +0200)]
RTMP: initial support added, powered by librtmp
librtmp is found at http://rtmpdump.mplayerhq.hu/
Howard Chu [Tue, 11 May 2010 20:48:38 +0000 (22:48 +0200)]
sendrecv: make them two pairs of send/recv to properly deal with FTPS
FTP(S) use two connections that can be set to different recv and
send functions independently, so by introducing recv+send pairs
in the same manner we already have sockets/connections we can
work with FTPS fine.
This commit fixes the FTPS regression introduced in change d64bd82.
Kamil Dudka [Tue, 11 May 2010 12:51:12 +0000 (14:51 +0200)]
changelog: fixed CRL support in libcurl-NSS
Kamil Dudka [Tue, 11 May 2010 12:39:08 +0000 (14:39 +0200)]
nss: make it possible to read ASCII and DER CRL
Kamil Dudka [Tue, 11 May 2010 12:10:27 +0000 (14:10 +0200)]
nss: add CRL to cache instead of read-only NSS db
Daniel Stenberg [Mon, 10 May 2010 15:25:49 +0000 (17:25 +0200)]
git: how to write a fine commit message
Daniel Stenberg [Sun, 9 May 2010 21:16:37 +0000 (23:16 +0200)]
findtool: file name as a full path requires a slash
Kalle Vahlman's patch applied a while ago broke how the findtool
function searches for tools, as it would always check if "$file"
was present first, which thus made the bad assumption that a file
in the current directory would be a match.
I noticed when it found 'libtool' in the current directory but
libtoolize is not there, which confused the script.
Hacki [Sat, 8 May 2010 03:38:42 +0000 (05:38 +0200)]
moved vars into conditional since seems that winsock implementation doesnt use them.
Daniel Stenberg [Fri, 7 May 2010 21:49:29 +0000 (23:49 +0200)]
multi interface: missed storing connection time
Dirk Manske reported a regression. When connecting with the multi
interface, there were situations where libcurl wouldn't store
connect time correctly as it used to (and is documented to) do.
Using his fine sample program we could repeat it, and I wrote up
test case 573 using that code. The problem does not easily show
itself using the local test suite though.
The fix, also as suggested by Dirk, is a bit on the ugly side as
it adds yet another call to Curl_verboseconnect() and setting the
TIMER_CONNECT time. That situation is subject for some closer
inspection in the future.
Daniel Stenberg [Fri, 7 May 2010 21:24:47 +0000 (23:24 +0200)]
verboseconnect: so the verbose checking within the function
As the function is used more than once and libcurl can be built
without it, do the conditional check within the verboseconnect()
function itself.
Daniel Stenberg [Fri, 7 May 2010 13:53:55 +0000 (15:53 +0200)]
changelogs: split the I/O handling
Howard Chu [Fri, 7 May 2010 13:05:34 +0000 (15:05 +0200)]
sendrecv: split the I/O handling into private handler
Howard Chu brought the bulk work of this patch that properly
moves out the sending and recving of data to the parts of the
code that are properly responsible for the various ways of doing
so.
Daniel Stenberg assisted with polishing a few bits and fixed some
minor flaws in the original patch.
Another upside of this patch is that we now abuse CURLcodes less
with the "magic" -1 return codes and instead use CURLE_AGAIN more
consistently.
Daniel Stenberg [Wed, 5 May 2010 20:36:15 +0000 (22:36 +0200)]
changelog: PolarSSL
Hoi-Ho Chan [Wed, 5 May 2010 20:30:46 +0000 (22:30 +0200)]
PolarSSL: initial support added
This is Hoi-Ho Chan's patch with some minor fixes by me. There
are some potential issues in this, but none worse than we can
sort out on the list and over time.
Daniel Stenberg [Thu, 29 Apr 2010 21:27:28 +0000 (23:27 +0200)]
TODO: we've done PRET already, consider HOST for the future
... and GnuTLS connects are non-blocking, TFTP is better
integrated as a "real" protocol and RTSP is supported.
Daniel Stenberg [Thu, 29 Apr 2010 21:23:42 +0000 (23:23 +0200)]
TODO: GnuTLS connects are now non-blocking
Since commit c288860 by Jerome Vouillon
Daniel Stenberg [Thu, 29 Apr 2010 17:19:08 +0000 (19:19 +0200)]
INTERNALS: tftp is decent now, ldap is not
It's not quite fair to list TFTP is a "crappy" member of the
libcurl family so I removed its mentioning.
Daniel Stenberg [Thu, 29 Apr 2010 07:40:48 +0000 (09:40 +0200)]
changelog: mention Ben Greear's telnet work
Ben Greear [Wed, 28 Apr 2010 22:49:04 +0000 (00:49 +0200)]
telnet: Allow programatic use of telnet.
The main change is to allow input from user-specified methods,
when they are specified with CURLOPT_READFUNCTION.
All calls to fflush(stdout) in telnet.c were removed, which makes
using 'curl telnet://foo.com' painful since prompts and other data
are not always returned to the user promptly. Use
'curl --no-buffer telnet://foo.com' instead. In general,
the user should have their CURLOPT_WRITEFUNCTION do a fflush
for interactive use.
Also fix assumption that reading from stdin never returns < 0.
Old code could crash in that case.
Call progress functions in telnet main loop.
Signed-off-by: Ben Greear <greearb@candelatech.com>
Daniel Stenberg [Tue, 27 Apr 2010 21:59:03 +0000 (23:59 +0200)]
test: enable valgrind for 604, seems to work