Daniel Stenberg [Mon, 3 Jan 2011 21:16:16 +0000 (22:16 +0100)]
unittesting: build a separate static lib
When configure --enable-debug has been used, all files in lib/ are now
built twice and a separate static library crafted for unit-testing will
be linked. The unit tests in the tests/unit subdir will use that
library.
Daniel Stenberg [Sat, 1 Jan 2011 16:33:42 +0000 (17:33 +0100)]
unittest: framework for unit-testing
This is the first approach at doing fairly clean and easy to write and
debug unit tests.
Daniel Stenberg [Mon, 3 Jan 2011 12:34:13 +0000 (13:34 +0100)]
SSH: avoid PATH_MAX with alloc
We cannot assume that PATH_MAX will be enough for the remote path name
so allocating room for it is the only sensible approach.
Daniel Stenberg [Mon, 3 Jan 2011 08:40:40 +0000 (09:40 +0100)]
TODO: get rid of PATH_MAX
Daniel Stenberg [Sun, 2 Jan 2011 22:41:49 +0000 (23:41 +0100)]
Curl_nss_connect: avoid PATH_MAX
Since some systems don't have PATH_MAX and it isn't that clever to
assume a fixed maximum path length, the code now allocates buffer space
instead of using stack.
Reported by: Samuel Thibault
Bug: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=608521
Daniel Stenberg [Sat, 1 Jan 2011 14:35:53 +0000 (15:35 +0100)]
SFTP: make pwd output result to header callback
Sending "pwd" as a QUOTE command only sent the reply to the
DEBUGFUNCTION. Now it also sends an FTP-like header to the header
callback to allow similar operations as with FTP, and apps can re-use
the same parser.
Daniel Stenberg [Sat, 1 Jan 2011 14:33:57 +0000 (15:33 +0100)]
pubkey_show: allocate buffer to fit any-size result
The loop condition was wrong so keys larger than 340 bits would overflow
the local stack-based buffer.
Daniel Stenberg [Thu, 30 Dec 2010 22:49:03 +0000 (23:49 +0100)]
CURLINFO_FTP_ENTRY_PATH: sftp support
Luke Amery [Thu, 30 Dec 2010 01:43:45 +0000 (12:43 +1100)]
ssh: honour the CURLINFO_FTP_ENTRY_PATH curl_getinfo option
Pierre Joye [Tue, 28 Dec 2010 18:55:00 +0000 (19:55 +0100)]
IDN: use win32 API if told to
The functionality is provided in a new source file: lib/idn_win32.c
Yang Tse [Tue, 28 Dec 2010 15:52:20 +0000 (16:52 +0100)]
test harness: take in account that Windows does not support LD_PRELOAD
configure.ac: Test harness libhostname library will not be built for Windows.
runtests.pl: LD_PRELOAD mechanism will not be used to load libhostname
library on operating systems which lack LD_PRELOAD support.
Daniel Stenberg [Mon, 27 Dec 2010 08:55:13 +0000 (09:55 +0100)]
c-ares: fix cancelled resolves
When built IPv6-enabled, we could do Curl_done() with one of the two
resolves having returned already, so when ares_cancel() is called the
resolve callback ends up doing funny things (sometimes resulting in a
segfault) since it would try to actually store the previous resolve even
though we're shutting down the resolve.
This bug was introduced in commit
8ab137b2bc9630ce so it hasn't been
included in any public release.
Bug: http://curl.haxx.se/bug/view.cgi?id=
3145445
Reported by: Pedro Larroy
Brad Hards [Sat, 25 Dec 2010 01:13:43 +0000 (12:13 +1100)]
Typo / spelling fixes.
Brad Hards [Sat, 25 Dec 2010 00:56:04 +0000 (11:56 +1100)]
Use angle address, as for the rest of the example.
Also spelling fix for RECIPIENT #define.
Brad Hards [Sat, 25 Dec 2010 00:54:41 +0000 (11:54 +1100)]
Add angle brackets to addresses in easy SMTP examples, as for smtp-multi example.
Daniel Stenberg [Thu, 23 Dec 2010 21:52:32 +0000 (22:52 +0100)]
cookies: tricked dotcounter fixed
Providing multiple dots in a series in the domain field (domain=..com) could
trick the cookie engine to wrongly accept the cookie believing it to be
fine. Since the tailmatching would then match all .com sites, the cookie would
then be sent to all of them.
The code now requires at least one letter between each dot for them to be
counted. Edited test case 61 to verify this.
Daniel Stenberg [Thu, 23 Dec 2010 21:19:25 +0000 (22:19 +0100)]
multi: connect fail => use next IP address
When using the multi interface and connecting to a host name that
resolves to multiple IP addresses, there was no logic that made it
continue to the next IP if connecting to the first address times
out. This is now corrected.
Daniel Stenberg [Thu, 23 Dec 2010 21:18:16 +0000 (22:18 +0100)]
smtp-multi: put recipient within <brackets>
Even if libcurl might to do it for us, it is more correct.
Daniel Stenberg [Thu, 23 Dec 2010 13:36:07 +0000 (14:36 +0100)]
ossl_seed: no more RAND_screen
RAND_screen() is slow, not thread-safe and not needed anymore since OpenSSL
uses the thread-safe win32 CryptoAPI nowadays.
Daniel Stenberg [Wed, 22 Dec 2010 14:29:21 +0000 (15:29 +0100)]
multi: inhibit some verbose outputs
The info about pipe status and expire cleared are clearly debug-related
and not anything mere mortals will or should care about so they are now
ifdef'ed DEBUGBUILD
Daniel Stenberg [Wed, 22 Dec 2010 13:53:13 +0000 (14:53 +0100)]
SMTP tests: updated MAIL FROM use
They were all wrong previously since none used the <brackets> they
should for MAIL FROM. Now libcurl adds them itself if the app doesn't so
they end up wrong less easy.
Daniel Stenberg [Wed, 22 Dec 2010 13:44:10 +0000 (14:44 +0100)]
CURLOPT_MAIL_FROM: document the bracket situation
Brad Hards [Wed, 22 Dec 2010 13:41:53 +0000 (14:41 +0100)]
SMTP: add brackets for MAIL FROM
Similar to what is done already for RCPT TO, the code now checks for and
adds angle brackets (<>) around the email address that is provided for
CURLOPT_MAIL_RCPT unless the app has done so itself.
Guenter Knauf [Wed, 22 Dec 2010 03:45:41 +0000 (04:45 +0100)]
Added support for axTLS to NetWare build.
Guenter Knauf [Wed, 22 Dec 2010 02:34:13 +0000 (03:34 +0100)]
Fixed include: memory.h -> curl_memory.h.
Brad Hards [Wed, 22 Dec 2010 00:57:48 +0000 (11:57 +1100)]
smtp-tls: add a missing newline
Without this you won't get the next (Subject) line.
Brad Hards [Sat, 18 Dec 2010 23:22:44 +0000 (10:22 +1100)]
Typo fixes.
Patrick Monnerat [Tue, 21 Dec 2010 13:23:37 +0000 (14:23 +0100)]
New curl/curl.h definitions added to ILE/RPG binding.
Yang Tse [Mon, 20 Dec 2010 23:14:55 +0000 (00:14 +0100)]
build: sort configuration hunks in lib/Makefile.vc6
sorted to reflect same internal order as the one shown
in the usage message.
Daniel Stenberg [Mon, 20 Dec 2010 21:21:06 +0000 (22:21 +0100)]
getparameter: add error check
if add2list() returns an error, bail out!
Daniel Stenberg [Mon, 20 Dec 2010 21:17:41 +0000 (22:17 +0100)]
loadhostpairs: return errorcode
Make sure that Curl_cache_addr() errors are propagated to callers of
loadhostpairs().
(this loadhostpairs function caused a scan-build warning due to the
'dns' variable getting assigned but never used)
Yang Tse [Mon, 20 Dec 2010 20:58:13 +0000 (21:58 +0100)]
distrib: add new file to EXTRA_DIST
Yang Tse [Mon, 20 Dec 2010 20:51:09 +0000 (21:51 +0100)]
build: refactoring of msvc makefiles to allow overriding of library filenames.
Default libcurl's file names are kept equal to those used since Y2K.
Daniel Stenberg [Sat, 18 Dec 2010 23:15:12 +0000 (00:15 +0100)]
ftp_parselist: fix compiler warning
Doing curlx_strtoofft() on the size just to figure out the end of it
causes a compiler warning since the result wasn't used, but is also a
bit of a waste.
Pasha Kuznetsov [Sat, 18 Dec 2010 21:35:37 +0000 (22:35 +0100)]
Curl_do: avoid using stale conn pointer
Since the original `conn' pointer was used after the `connectdata' it
points to has been closed/cleaned up by Curl_reconnect_request it caused
a crash. We must make sure to use the newly created connection instead!
URL: http://curl.haxx.se/mail/lib-2010-12/0202.html
Tommie Gannert [Sat, 18 Dec 2010 21:31:39 +0000 (22:31 +0100)]
ares: ask for both IPv4 and IPv6 addresses
Make the c-ares resolver code ask for both IPv4 and IPv6 addresses when
IPv6 is enabled.
This is a workaround for the missing ares_getaddrinfo() and is a lot
easier to implement.
Note that as long as c-ares returns IPv4 addresses when IPv6 addresses
were requested but missing, this will cause a host's IPv4 addresses to
occur twice in the DNS cache.
URL: http://curl.haxx.se/mail/lib-2010-12/0041.html
Daniel Stenberg [Sat, 18 Dec 2010 16:12:44 +0000 (17:12 +0100)]
examples: socket type cleanup
Brad Hards [Fri, 17 Dec 2010 03:57:39 +0000 (14:57 +1100)]
Trival comment fix.
Brad Hards [Sat, 18 Dec 2010 16:07:57 +0000 (17:07 +0100)]
smtp-tls: add Message-ID: header
Daniel Stenberg [Fri, 17 Dec 2010 22:35:04 +0000 (23:35 +0100)]
gitignore: ignore the new example execs
Daniel Stenberg [Fri, 17 Dec 2010 22:34:26 +0000 (23:34 +0100)]
examples: fix compiler warnings
Daniel Stenberg [Fri, 17 Dec 2010 22:34:06 +0000 (23:34 +0100)]
examples: build all examples easier
Brad Hards [Fri, 17 Dec 2010 21:55:58 +0000 (22:55 +0100)]
smtp-tls: new example
This example shows how to send SMTP with TLS
Brad Hards [Wed, 15 Dec 2010 08:27:28 +0000 (19:27 +1100)]
Docs: add simple SMTP example
Add a simple SMTP example program, patterned after some of the existing
examples, and the curl application.
This version addresses issues raised by David Woodhouse on comments in
the simplesmtp.c example.
Paul Howarth [Fri, 17 Dec 2010 18:07:45 +0000 (19:07 +0100)]
tftpd: avoid buffer overflow report from glibc
Daniel Stenberg [Thu, 16 Dec 2010 23:07:34 +0000 (00:07 +0100)]
example: fix compiler warnings in fopen.c
Brad Hards [Thu, 16 Dec 2010 23:06:03 +0000 (00:06 +0100)]
chkspeed: bad strtol() call for -M option
Bug: http://curl.haxx.se/mail/lib-2010-12/0192.html
Yang Tse [Thu, 16 Dec 2010 16:33:53 +0000 (17:33 +0100)]
axTLS integration: silence runtests.pl perl warning
Daniel Stenberg [Wed, 15 Dec 2010 15:08:45 +0000 (16:08 +0100)]
axTLS: mention it among the other SSL libs
Daniel Stenberg [Wed, 15 Dec 2010 14:54:17 +0000 (15:54 +0100)]
7.21.4: version bump
Daniel Stenberg [Wed, 15 Dec 2010 10:11:20 +0000 (11:11 +0100)]
axtls_connect: allow connect without peer verification
The SSL_SERVER_VERIFY_LATER bit in the ssl_ctx_new() call allows the
code to verify the peer certificate explicitly after the handshake and
then the "data->set.ssl.verifypeer" option works.
Daniel Stenberg [Wed, 15 Dec 2010 09:23:19 +0000 (10:23 +0100)]
axTLS: allow "default" SSL version as well
When no explicit version is selected we should try to use whatever is
best for us, and in the axTLS case that means TLSv1.
Daniel Stenberg [Fri, 10 Dec 2010 23:55:06 +0000 (00:55 +0100)]
axtls.c: cleanup
Removed trailing whitespace
Removed several compiler warnings
Removed odd backslashes at some line endings
Daniel Stenberg [Fri, 10 Dec 2010 23:53:37 +0000 (00:53 +0100)]
urldate: undef hideous memory defines
The public axTLS header (at least as of 1.2.7) redefines the memory
functions. We #undef those again immediately after the public header to
limit the damage. This should be fixed in axTLS.
Daniel Stenberg [Fri, 10 Dec 2010 23:52:34 +0000 (00:52 +0100)]
configure: make --with-axtls set prefix
In tradition with other options, have this point to the directory prefix
and not the lib directory. Otherwise we can't set the include path
reliably.
Eric Hu [Fri, 10 Dec 2010 00:29:39 +0000 (16:29 -0800)]
Minor fixes to pass tests 301 and 306 with a patched axTLS.
Eric Hu [Tue, 7 Dec 2010 00:18:35 +0000 (16:18 -0800)]
Initial axTLS integration. Connections can be made and some tests pass.
Failed HTTPS tests: 301, 306, 311, 312, 313, 560
311, 312 need more detailed error reporting from axTLS.
313 relates to CRL, which hasn't been implemented yet.
Eric Hu [Tue, 7 Dec 2010 22:28:06 +0000 (14:28 -0800)]
Simple update to configure script to notify user of --with-axtls switch.
Eric Hu [Fri, 3 Dec 2010 18:23:45 +0000 (10:23 -0800)]
Preparing for axTLS. Actual SSL API functions are only stubbed.
Added axTLS to autotool files and glue code to misc other files.
axtls.h maps SSL API functions, but may change.
axtls.c is just a stub file and will definitely change.
Daniel Stenberg [Wed, 15 Dec 2010 14:50:40 +0000 (15:50 +0100)]
THANKS: added contributors from 7.21.3
Daniel Stenberg [Wed, 15 Dec 2010 14:06:12 +0000 (15:06 +0100)]
RELEASE-NOTES: synced with
a865bd9fbaaa43e5c
Daniel Stenberg [Mon, 13 Dec 2010 12:44:50 +0000 (13:44 +0100)]
IsPipeliningPossible: only for HTTP
The function that checks if pipelining is possible now requires the HTTP
bit to be set so that it doesn't mistakenly tries to do it for other
protocols.
Bug: http://curl.haxx.se/mail/lib-2010-12/0152.html
Reported by: Dmitri Shubin
Daniel Stenberg [Mon, 13 Dec 2010 11:51:48 +0000 (12:51 +0100)]
multi_runsingle: don't timeout completed handles
The generic timeout code must not check easy handles that are already
completed. Going to completed (again) within there risked decreasing the
number of alive handles again and thus it could go negative.
This regression bug was added in 7.21.2 in commit
ca10e28f06f1
Daniel Stenberg [Thu, 9 Dec 2010 12:07:00 +0000 (13:07 +0100)]
symbols-in-versions: CURLOPT_KEYPASSWD fixed
It was added in 7.17.0 and is not deprecated
Daniel Stenberg [Thu, 9 Dec 2010 10:23:33 +0000 (11:23 +0100)]
RELEASE-NOTES: synced with
c28443c551825
Dan Fandrich [Wed, 8 Dec 2010 18:16:25 +0000 (10:16 -0800)]
Mention that using other libraries can affect app licensing
Yang Tse [Tue, 7 Dec 2010 02:27:59 +0000 (03:27 +0100)]
easy: fix compiler warning: end-of-loop code not reached
Daniel Stenberg [Mon, 6 Dec 2010 14:33:38 +0000 (15:33 +0100)]
disconnect: pass on the dead_connection argument
Cleanup fix after Kamil's commit
5c7c9a768d0093
Yang Tse [Mon, 6 Dec 2010 13:45:34 +0000 (14:45 +0100)]
sws: fix compier warning: external definition with no prior declaration
Heinrich Ko [Thu, 18 Nov 2010 22:07:57 +0000 (14:07 -0800)]
ossl_connect_common: detect connection re-use
ossl_connect_common() now checks whether or not 'struct
connectdata->state' is equal 'ssl_connection_complete' and if so, will
return CURLE_OK with 'done' set to 'TRUE'. This check prevents
ossl_connect_common() from creating a new ssl connection on an existing
ssl session which causes openssl to fail when it tries to parse an
encrypted TLS packet since the cipher data was effectively thrown away
when the new ssl connection was created.
Bug: http://curl.haxx.se/mail/lib-2010-11/0169.html
Kamil Dudka [Fri, 19 Nov 2010 12:43:20 +0000 (13:43 +0100)]
url: provide dead_connection flag in Curl_handler::disconnect
It helps to prevent a hangup with some FTP servers in case idle session
timeout has exceeded. But it may be useful also for other protocols
that send any quit message on disconnect. Currently used by FTP, POP3,
IMAP and SMTP.
Yang Tse [Mon, 6 Dec 2010 04:20:05 +0000 (05:20 +0100)]
ssh: fix a download resume point calculation
Daniel Stenberg [Sun, 5 Dec 2010 22:39:41 +0000 (23:39 +0100)]
Curl_wait_for_resolv: correct timeout
When looping in this function and checking for the timeout being
expired, it was not updating the reference time when calculating the
timediff since previous round which made it think each subsequent loop
to have taken longer than it actually did.
I also modified the function to use the generic Curl_timeleft() function
instead of the custom logic.
Bug: http://curl.haxx.se/bug/view.cgi?id=
3112579
Daniel Stenberg [Sun, 5 Dec 2010 21:59:56 +0000 (22:59 +0100)]
Curl_send/recv_plain: return errno on failure
When send() and recv() fail, we now store the errno value to allow the
app to access it.
Bug: http://curl.haxx.se/bug/view.cgi?id=
3128121
Reported by: Yuri
Guenter Knauf [Sun, 5 Dec 2010 09:59:58 +0000 (10:59 +0100)]
Updated OpenSSL version.
Yang Tse [Sat, 4 Dec 2010 04:53:07 +0000 (05:53 +0100)]
fix compiler warning: conversion may lose significant bits
Yang Tse [Fri, 3 Dec 2010 15:53:11 +0000 (16:53 +0100)]
fix compiler warning: assignment within conditional expression
Yang Tse [Fri, 3 Dec 2010 13:29:06 +0000 (14:29 +0100)]
fix getinfo CURLINFO_LOCAL* for reused connections (take 2) follow-up
- Show address string from proper buffer in case of connection failure.
- Try next address when inet_ntop() fails.
Daniel Stenberg [Fri, 3 Dec 2010 13:10:04 +0000 (14:10 +0100)]
version-check: added brief documentation
and the traditional source header
Yang Tse [Fri, 3 Dec 2010 03:15:39 +0000 (04:15 +0100)]
build: provide SIZEOF_SIZE_T DOS definition
Yang Tse [Fri, 3 Dec 2010 03:13:33 +0000 (04:13 +0100)]
build: lib/config.dos renamed to lib/config-dos.h
Yang Tse [Fri, 3 Dec 2010 02:40:16 +0000 (03:40 +0100)]
build: provide SIZEOF_SIZE_T VMS definition
Yang Tse [Fri, 3 Dec 2010 01:36:22 +0000 (02:36 +0100)]
build: move config-vms.h from subdir 'packages/vms' into 'lib'
Yang Tse [Thu, 2 Dec 2010 20:41:23 +0000 (21:41 +0100)]
build: provide SIZEOF_SIZE_T definition for non-configure builds
Yang Tse [Thu, 2 Dec 2010 19:53:42 +0000 (20:53 +0100)]
build: provide SIZEOF_SIZE_T netware definition
Yang Tse [Thu, 2 Dec 2010 18:09:15 +0000 (19:09 +0100)]
configure: undo using autobuilds to temporarily verify strict aliasing warnings.
Yang Tse [Thu, 2 Dec 2010 17:46:13 +0000 (18:46 +0100)]
fix compiler warning: rounding, sign extension, or loss of accuracy may result
Yang Tse [Thu, 2 Dec 2010 15:35:02 +0000 (16:35 +0100)]
fix compiler warning: statement is not reachable
Yang Tse [Wed, 1 Dec 2010 22:33:43 +0000 (23:33 +0100)]
fix compiler warning: conversion may lose significant bits
Yang Tse [Wed, 1 Dec 2010 16:30:52 +0000 (17:30 +0100)]
connect: fix compiler warning: unused variable
Yang Tse [Tue, 30 Nov 2010 21:14:37 +0000 (22:14 +0100)]
fix getinfo CURLINFO_LOCAL* for reused connections (take 2)
Yang Tse [Tue, 30 Nov 2010 12:42:02 +0000 (13:42 +0100)]
fix getinfo CURLINFO_LOCAL* for reused connections follow-up
Reinstate IPV6 build variable that got removed.
Yang Tse [Tue, 30 Nov 2010 12:31:25 +0000 (13:31 +0100)]
fix getinfo CURLINFO_LOCAL* for reused connections
Failed to commit this file changes along with the others.
Yang Tse [Tue, 30 Nov 2010 05:20:54 +0000 (06:20 +0100)]
fix getinfo CURLINFO_LOCAL* for reused connections
Yang Tse [Sun, 28 Nov 2010 22:11:14 +0000 (23:11 +0100)]
atoi: remove atoi usage
Yang Tse [Sun, 28 Nov 2010 19:49:40 +0000 (20:49 +0100)]
multi: fix compiler warning: conversion may lose significant bits follow-up
Yang Tse [Fri, 26 Nov 2010 19:19:45 +0000 (20:19 +0100)]
ftp: fix 'bool' data type implementation dependant usage
Yang Tse [Fri, 26 Nov 2010 18:57:27 +0000 (19:57 +0100)]
multi: fix compiler warning: conversion may lose significant bits
Yang Tse [Fri, 26 Nov 2010 18:34:10 +0000 (19:34 +0100)]
multi: fix compiler warning: enumerated type mixed with another type
Yang Tse [Fri, 26 Nov 2010 17:18:26 +0000 (18:18 +0100)]
hostip: edit comment