Steve Holme [Wed, 30 Oct 2013 20:59:11 +0000 (20:59 +0000)]
TODO: Removed the 'Graceful base64 decoding failure' sections
Updated following the recent changes to support graceful failures
during the authentication phrase.
Steve Holme [Wed, 30 Oct 2013 20:56:38 +0000 (20:56 +0000)]
email: Post graceful SASL authentication cancellation tidy up
Kamil Dudka [Wed, 30 Oct 2013 16:52:19 +0000 (17:52 +0100)]
tests: use proper padding in NTLM responses
Patrick Monnerat [Wed, 30 Oct 2013 10:12:06 +0000 (11:12 +0100)]
NSS: support for CERTINFO feature
Daniel Stenberg [Wed, 30 Oct 2013 08:11:10 +0000 (09:11 +0100)]
base64: removed trailing white space
and updated copyright year
Steve Holme [Wed, 30 Oct 2013 07:31:22 +0000 (07:31 +0000)]
base64: Added basic validation to base64 input string when decoding
A base64 string should be a multiple of 4 characters in length, not
contain any more than 2 padding characters and only contain padding
characters at the end of string. For example: Y3VybA==
Strings such as the following are considered invalid:
Y= - Invalid length
Y== - Invalid length
Y=== - More than two padding characters
Y=x= - Padding character contained within string
Daniel Stenberg [Tue, 29 Oct 2013 22:06:04 +0000 (23:06 +0100)]
RELEASE-NOTES: synced with
255826c40f9316
Björn Stenberg [Tue, 29 Oct 2013 13:43:01 +0000 (14:43 +0100)]
bugfix: Don't block waiting for socket1 connect.
This patch fixes a bug in Happy Eyeballs where curl would wait for a
connect response from socket1 before checking socket2.
Also, it updates error messages for failed connections, showing the ip
addresses that failed rather than just the host name repeatedly.
Bug: http://curl.haxx.se/mail/lib-2013-10/0236.html
Reported-by: Paul Marks
Steve Holme [Sun, 27 Oct 2013 22:53:07 +0000 (22:53 +0000)]
sasl: Updated create_digest_md5_message() to use a dynamic buffer
Daniel Stenberg [Mon, 28 Oct 2013 22:19:55 +0000 (23:19 +0100)]
SECURITY: "curl security for developers"
Describes our security process from a project and curl developer's
perspective.
Patrick Monnerat [Mon, 28 Oct 2013 11:00:22 +0000 (12:00 +0100)]
OS400: coding style standards
Steve Holme [Sun, 27 Oct 2013 22:20:18 +0000 (22:20 +0000)]
email: Added support for cancelling NTLM authentication
Steve Holme [Sun, 27 Oct 2013 17:04:56 +0000 (17:04 +0000)]
sasl: Removed unused variables from commit
b87ba2c94217c0
Steve Holme [Sun, 27 Oct 2013 16:27:38 +0000 (16:27 +0000)]
email: Added support for cancelling DIGEST-MD5 authentication
Steve Holme [Sun, 27 Oct 2013 16:24:03 +0000 (16:24 +0000)]
email: Corrected a couple of typos from
1e39b95682781f
Gisle Vanem [Thu, 24 Oct 2013 13:21:16 +0000 (15:21 +0200)]
docs/examples/httpput.c: fix build for MSVC
"Dan Fandrich" <dan@coneharvesters.com> wrote:
>> But I'm not sure <unistd.h> is needed at all.
>
> It's needed for close(2). But the only reason that's needed is because fstat
> is used instead of stat(2); if you fix that, then you could remove that
> include altogether.
Okay. I've tested the following with MSVC and MingW. htttput.c now
simply uses stat():
Steve Holme [Sun, 27 Oct 2013 12:34:56 +0000 (12:34 +0000)]
email: Added support for canceling CRAM-MD5 authentication
Björn Stenberg [Sun, 27 Oct 2013 11:27:52 +0000 (12:27 +0100)]
Typo fix in trynextip().
Daniel Stenberg [Sun, 27 Oct 2013 10:34:09 +0000 (11:34 +0100)]
TODO: remove "Happy Eyeball dual stack connect"
... as it was just merged in commit 7d7df
Björn Stenberg [Sat, 26 Oct 2013 12:17:33 +0000 (14:17 +0200)]
Add "Happy Eyeballs" for IPv4/IPv6.
This patch invokes two socket connect()s nearly simultaneously, and
the socket that is first connected "wins" and is subsequently used for
the connection. The other is terminated.
There is a very slight IPv4 preference, in that if both sockets connect
simultaneously IPv4 is checked first and thus will win.
Steve Holme [Sun, 27 Oct 2013 09:10:38 +0000 (09:10 +0000)]
email: Added initial support for cancelling authentication
Should a client application fail to decode an authentication message
received from a server, or not support any of the parameters given by
the server in the message, then the authentication phrase should be
cancelled gracefully by the client rather than simply terminating the
connection.
The authentication phrase should be cancelled by simply sending a '*'
to the server, in response to erroneous data being received, as per
RFC-3501, RFC-4954 and RFC-5034.
This patch adds the necessary state machine constants and appropriate
response handlers in order to add this functionality for the CRAM-MD5,
DIGEST-MD5 and NTLM authentication mechanisms.
Steve Holme [Sun, 27 Oct 2013 09:00:41 +0000 (09:00 +0000)]
email: Moved authentication message parsing into a separate function
...in preparation for upcoming modifications.
Steve Holme [Sat, 26 Oct 2013 23:00:01 +0000 (00:00 +0100)]
ftp: Fixed compiler warning
warning: 'result' may be used uninitialized in this function
Daniel Stenberg [Sat, 26 Oct 2013 18:19:27 +0000 (20:19 +0200)]
FTP: make the data connection work when going through proxy
This is a regression since the switch to always-multi internally
c43127414d89c.
Test 1316 was modified since we now clearly call the Curl_client_write()
function when doing the LIST transfer part and then the
handler->protocol says FTP and ftpc.transfertype is 'A' which implies
text converting even though that the response is initially a HTTP
CONNECT response in this case.
Steve Holme [Sat, 26 Oct 2013 19:11:48 +0000 (20:11 +0100)]
tool_help: Added login options to --user description
Steve Holme [Sat, 26 Oct 2013 13:35:27 +0000 (14:35 +0100)]
email: Added references to SASL LOGIN authentication draft proposal
Steve Holme [Sat, 26 Oct 2013 12:44:31 +0000 (13:44 +0100)]
tests: Tidy up of SMTP and POP3 tests
Corrected line endings, RFC references and standardised on user names
and passwords used in the tests.
Steve Holme [Sat, 26 Oct 2013 12:01:33 +0000 (13:01 +0100)]
tool_help: Added clarity to the --oauth2-bearer option
...as XOAUTH2 is the extended (or non-standard) SASL identifier and
OAuth 2 is the protocol name (and version).
Steve Holme [Sat, 26 Oct 2013 10:09:31 +0000 (11:09 +0100)]
smtp: Fixed response code parsing for bad AUTH continuation responses
This workaround had been previously been implemented for IMAP and POP3
but not SMTP. Some of the recent test case additions implemented this
behaviour to emulate a bad server and the SMTP code didn't cope with it.
Steve Holme [Fri, 25 Oct 2013 23:57:45 +0000 (00:57 +0100)]
gskit.c: Code policing following commit
2cc9246477285d
Corrected 80 character line length error and pointer declarations (some
of which were previously incorrect)
Steve Holme [Fri, 25 Oct 2013 23:24:45 +0000 (00:24 +0100)]
test907: Corrected DIGEST-MD5 response given in commit
820ed48a0088cd
As the URI, which is contained within the DIGEST-MD5 response, is
constructed from the service and realm, the encoded message differs
from that generated under POP3.
Steve Holme [Fri, 25 Oct 2013 19:00:00 +0000 (20:00 +0100)]
RELEASE-NOTES: Synced with
d24b7953c2132a
Steve Holme [Fri, 25 Oct 2013 18:48:48 +0000 (19:48 +0100)]
tests: Added SMTP OAUTH2 authentication with initial response test
Steve Holme [Fri, 25 Oct 2013 18:40:40 +0000 (19:40 +0100)]
tests: Added SMTP NTLM authentication with initial response test
Steve Holme [Fri, 25 Oct 2013 18:31:30 +0000 (19:31 +0100)]
tests: Added SMTP OAUTH2 authentication test
Steve Holme [Fri, 25 Oct 2013 18:22:30 +0000 (19:22 +0100)]
tests: Added SMTP DIGEST-MD5 authentication test
Steve Holme [Fri, 25 Oct 2013 18:17:15 +0000 (19:17 +0100)]
tests: Regrouped SMTP authentication tests
Patrick Monnerat [Fri, 25 Oct 2013 16:37:37 +0000 (18:37 +0200)]
OS400: sync RPG wrapper, zlib support, fix header file names, ...
IFS compilation support, SSL GSKit backend by default, TLSv1.[12] support in
GSKit for OS400 >= V7R1, no more tabs in make scripts.
Steve Holme [Wed, 23 Oct 2013 23:16:59 +0000 (00:16 +0100)]
sasl: Fixed memory leak in OAUTH2 message creation
Steve Holme [Wed, 23 Oct 2013 21:19:42 +0000 (22:19 +0100)]
ftpserver.pl: Added support for empty pop3 authentication data
Daniel Stenberg [Wed, 23 Oct 2013 21:14:17 +0000 (23:14 +0200)]
CURLOPT_RESOLVE: mention they don't time-out
Clarify in the documentation that DNS entries added with CURLOPT_RESOLVE
won't time-out.
Bug: http://curl.haxx.se/mail/lib-2013-10/0062.html
Reported-by: Romulo Ceccon
Steve Holme [Wed, 23 Oct 2013 21:10:10 +0000 (22:10 +0100)]
tests: Added POP3 OAUTH2 authentication test
Steve Holme [Wed, 23 Oct 2013 21:05:22 +0000 (22:05 +0100)]
tests: Added empty response support to custom replies
...and fixed up test869 as DIGEST-MD transcript is as follows:
S: Challenge
C: Authentication String
S: Continue Response
C: Empty String
Daniel Stenberg [Wed, 23 Oct 2013 20:28:13 +0000 (22:28 +0200)]
sasl: fix compiler warning
error: unused variable 'table16'
Steve Holme [Wed, 23 Oct 2013 17:29:29 +0000 (18:29 +0100)]
tests: Added POP3 DIGEST-MD5 authentication test
Daniel Stenberg [Tue, 22 Oct 2013 20:55:48 +0000 (22:55 +0200)]
configure: check for long long when building with cyassl
cyassl/ctaocrypt/types.h needs SIZEOF_LONG_LONG
Reported-by: Chris Conlon
Daniel Stenberg [Mon, 21 Oct 2013 22:10:16 +0000 (00:10 +0200)]
test1240: verify
867b52a7ac52 (glob ranges with text to the right)
Daniel Stenberg [Mon, 21 Oct 2013 22:01:17 +0000 (00:01 +0200)]
glob: fix regression from commit
5ca96cb844
Plain strings after glob ranges/lists weren't treated correctly but
caused broken URLs to get used.
Reported-by: Javier Barroso
Rémy Léone [Thu, 17 Oct 2013 13:10:18 +0000 (15:10 +0200)]
Adding a .travis.yml file to use the travis-ci.org
From wikipedia:
Travis CI is a hosted, distributed continuous integration service used
to build and test projects hosted at GitHub.
Travis CI is configured by adding a file named .travis.yml, which is a
YAML format text file, to the root directory of the GitHub repository.
Travis CI automatically detects when a commit has been made and pushed
to a GitHub repository that is using Travis CI, and each time this
happens, it will try to build the project and run tests. This includes
commits to all branches, not just to the master branch. When that
process has completed, it will notify a developer in the way it has been
configured to do so — for example, by sending an email containing the
test results (showing success or failure), or by posting a message on an
IRC channel. It can be configured to run the tests on a range of
different machines, with different software installed (such as older
versions of a programming language, to test for compatibility).
Kamil Dudka [Mon, 21 Oct 2013 16:47:54 +0000 (18:47 +0200)]
ssh: initialize per-handle data in ssh_connect()
... if not already initialized. This fixes a regression introduced by
commit
4ad8e142da463ab208d5b5565e53291c8e5ef038, which caused test619
to intermittently fail on certain machines (namely Fedora build hosts).
Gisle Vanem [Wed, 16 Oct 2013 20:31:51 +0000 (22:31 +0200)]
curl.1: add missing exit-code
I noted a missing text for exit-code 89 in docs/curl.1
Daniel Stenberg [Sun, 20 Oct 2013 15:12:56 +0000 (17:12 +0200)]
cmake: unbreak for non-Windows platforms
Patch-by: Oliver Kuckertz
Bug: http://curl.haxx.se/bug/view.cgi?id=1292
Steve Holme [Sat, 19 Oct 2013 23:30:03 +0000 (00:30 +0100)]
ftpserver.pl: Fixed syntax error from commit
5b31b38c27bb7a
Steve Holme [Sat, 19 Oct 2013 20:43:20 +0000 (21:43 +0100)]
test866: Fixed user response from commit
7f7fbe7fbdb449
Steve Holme [Sat, 19 Oct 2013 19:39:18 +0000 (20:39 +0100)]
ftpserver.pl: Fixed processing of POP3 authentication strings
...and corrected response when check fails from 500 to -ERR.
Steve Holme [Sat, 19 Oct 2013 12:17:25 +0000 (13:17 +0100)]
tests: Added POP3 NTLM authentication test
Steve Holme [Sat, 19 Oct 2013 11:57:25 +0000 (12:57 +0100)]
tests: Added POP3 CRAM-MD5 authentication test
Steve Holme [Sat, 19 Oct 2013 11:42:25 +0000 (12:42 +0100)]
tests: Added POP3 login authentication test
Steve Holme [Sat, 19 Oct 2013 11:31:55 +0000 (12:31 +0100)]
tests: Added POP3 plain authentication test
Steve Holme [Sat, 19 Oct 2013 11:20:00 +0000 (12:20 +0100)]
tests: Added POP3 APOP authentication test
Steve Holme [Sat, 19 Oct 2013 09:38:19 +0000 (10:38 +0100)]
ftpserver.pl: Added support for APOP POP3 authentication
Steve Holme [Fri, 18 Oct 2013 23:10:29 +0000 (00:10 +0100)]
tests: Added POP3 RSET test
Steve Holme [Fri, 18 Oct 2013 18:54:30 +0000 (19:54 +0100)]
RELEASE-NOTES: Synced with
ce61510127ea60
Steve Holme [Fri, 18 Oct 2013 18:28:20 +0000 (19:28 +0100)]
email: Fixed QUIT / LOGOUT being sent when SSL connect fails
Kamil Dudka [Fri, 18 Oct 2013 13:37:18 +0000 (15:37 +0200)]
curl_sasl: initialize NSS before using crypto
Steve Holme [Thu, 17 Oct 2013 18:57:26 +0000 (19:57 +0100)]
SSL: Follow up work to commits
6a1363128f1107 and
87861c9b0e8155
Changed the failure code when TLS v1.1 and v1.2 is requested but not
supported by older OpenSSL versions, following review from libcurl
peers, and reduced the number of required preprocessor if statements.
Steve Holme [Wed, 16 Oct 2013 19:48:24 +0000 (20:48 +0100)]
SSL: Added unsupported cipher version check for OpenSSL
...with the use of CURL_SSLVERSION_TLSv1_1 and CURL_SSLVERSION_TLSv1_2
being conditional on OpenSSL v1.0.1 as the appropriate flags are not
supported under earlier versions.
Steve Holme [Wed, 16 Oct 2013 19:18:15 +0000 (20:18 +0100)]
DOCS: Added libcurl version number to CURLOPT_SSLVERSION
Steve Holme [Wed, 16 Oct 2013 19:06:23 +0000 (20:06 +0100)]
SSL: Corrected version number for new symbols from commit
ad34a2d5c87c7f
Steve Holme [Tue, 15 Oct 2013 23:57:01 +0000 (00:57 +0100)]
SSL: Corrected typo from commit
87861c9b0e8155
Steve Holme [Tue, 15 Oct 2013 23:49:23 +0000 (00:49 +0100)]
SSL: Fixed OpenSSL builds prior to v1.0.1
Commit
ad34a2d5c87c7f relies on definitions that are only present in
OpenSSL v1.0.1 and up. This quick fix allows the builds that use
older versions of OpenSSL to continue building.
Steve Holme [Tue, 15 Oct 2013 20:31:14 +0000 (21:31 +0100)]
test906: Fixed failing test on some platforms
Bug: http://sourceforge.net/p/curl/bugs/1291
Reported-by: David Walser
Paul Donohue [Tue, 15 Oct 2013 19:36:32 +0000 (21:36 +0200)]
NSS: acknowledge the --no-sessionid/CURLOPT_SSL_SESSIONID_CACHE option
Tyler Hall [Mon, 14 Oct 2013 20:24:17 +0000 (22:24 +0200)]
ssh: Handle successful SSH_USERAUTH_NONE
According to the documentation for libssh2_userauth_list(), a NULL
return value is not necessarily an error. You must call
libssh2_userauth_authenticated() to determine if the SSH_USERAUTH_NONE
request was successful.
This fixes a segv when using sftp on a server that allows logins with an
empty password. When NULL was interpreted as an error, it would
free the session but not flag an error since the libssh2 errno would be
clear. This resulted in dereferencing a NULL session pointer.
Signed-off-by: Tyler Hall <tylerwhall@gmail.com>
Ishan SinghLevett [Tue, 15 Oct 2013 18:48:22 +0000 (20:48 +0200)]
usercertinmem: fix memory leaks
Dave Reisner [Sun, 13 Oct 2013 17:39:42 +0000 (19:39 +0200)]
build: distribute and install libcurl.m4 by default
Dave Reisner [Sun, 13 Oct 2013 17:39:41 +0000 (19:39 +0200)]
tool: use XFERFUNCTION to save some casts
Alessandro Ghedini [Mon, 14 Oct 2013 18:49:54 +0000 (20:49 +0200)]
curl.1: fix typo conjuction -> conjunction
Daniel Stenberg [Tue, 15 Oct 2013 18:31:04 +0000 (20:31 +0200)]
curl: document the new --tlsv1.[012] options
Gergely Nagy [Thu, 19 Sep 2013 13:17:13 +0000 (15:17 +0200)]
SSL: protocol version can be specified more precisely
CURL_SSLVERSION_TLSv1_0, CURL_SSLVERSION_TLSv1_1,
CURL_SSLVERSION_TLSv1_2 enum values are added to force exact TLS version
(CURL_SSLVERSION_TLSv1 means TLS 1.x).
axTLS:
axTLS only supports TLS 1.0 and 1.1 but it cannot be set that only one
of these should be used, so we don't allow the new enum values.
darwinssl:
Added support for the new enum values.
SChannel:
Added support for the new enum values.
CyaSSL:
Added support for the new enum values.
Bug: The original CURL_SSLVERSION_TLSv1 value enables only TLS 1.0 (it
did the same before this commit), because CyaSSL cannot be configured to
use TLS 1.0-1.2.
GSKit:
GSKit doesn't seem to support TLS 1.1 and TLS 1.2, so we do not allow
those values.
Bugfix: There was a typo that caused wrong SSL versions to be passed to
GSKit.
NSS:
TLS minor version cannot be set, so we don't allow the new enum values.
QsoSSL:
TLS minor version cannot be set, so we don't allow the new enum values.
OpenSSL:
Added support for the new enum values.
Bugfix: The original CURL_SSLVERSION_TLSv1 value enabled only TLS 1.0,
now it enables 1.0-1.2.
Command-line tool:
Added command line options for the new values.
Nick Zitzmann [Mon, 14 Oct 2013 23:03:32 +0000 (18:03 -0500)]
darwinssl: un-break iOS build after PKCS#12 feature added
SecPKCS12Import() returns a few errors that are enumerated in OS X's
headers but not in iOS' headers for some reason.
Daniel Stenberg [Mon, 14 Oct 2013 21:11:20 +0000 (23:11 +0200)]
bump: start working on 7.33.1
Daniel Stenberg [Mon, 14 Oct 2013 21:10:35 +0000 (23:10 +0200)]
THANKS: added contributors from the 7.33.0 announcement
Daniel Stenberg [Sun, 13 Oct 2013 21:24:21 +0000 (23:24 +0200)]
RELEASE-NOTES: synced with
92cf6141ed0de
Daniel Stenberg [Sun, 13 Oct 2013 21:21:12 +0000 (23:21 +0200)]
curl: fix --oauth2-bearer in the --help output
After the option rename in
5df04bfafd1
Daniel Stenberg [Sun, 13 Oct 2013 21:07:44 +0000 (23:07 +0200)]
OpenSSL: improve the grammar of the language in
39beaa5ffbcc
Reported-by: Petr Pisar
Andrej E Baranov [Sat, 12 Oct 2013 23:02:03 +0000 (01:02 +0200)]
OpenSSL: use failf() when subjectAltName mismatches
Write to CURLOPT_ERRORBUFFER information about mismatch alternative
certificate subject names.
Signed-off-by: Andrej E Baranov <admin@andrej-andb.ru>
Daniel Stenberg [Sat, 12 Oct 2013 21:26:38 +0000 (23:26 +0200)]
curl: rename --bearer to --oauth2-bearer
The option '--bearer' might be slightly ambiguous in name. It doesn't
create any conflict that I am aware of at the moment, however, OAUTH v2
is not the only authentication mechanism which uses "bearer" tokens.
Reported-by: Kyle L. Huff
URL: http://curl.haxx.se/mail/lib-2013-10/0064.html
Kamil Dudka [Mon, 7 Oct 2013 14:07:50 +0000 (16:07 +0200)]
ssh: improve the logic for detecting blocking direction
This fixes a regression introduced by commit
0feeab78 limiting the speed
of SCP upload to 16384 B/s on a fast connection (such as localhost).
Dan Fandrich [Sat, 12 Oct 2013 19:09:17 +0000 (21:09 +0200)]
Fixed typo in Makefile.inc that left http2.h out of the tar ball
Heinrich Schaefer [Thu, 10 Oct 2013 21:08:47 +0000 (23:08 +0200)]
minor fix in doc
Gisle Vanem [Wed, 9 Oct 2013 12:45:42 +0000 (14:45 +0200)]
curl_setup_once: fix errno access for lwip on Windows
lib/curl_setup_once.h assumed lwIP on Windows uses 'SetLastError()' to
set network errors. It doesn't; it uses 'errno'.
Daniel Stenberg [Mon, 7 Oct 2013 12:42:21 +0000 (14:42 +0200)]
test1239: verify
4cd444e01ad and the simulated 304 response
Derek Higgins [Thu, 3 Oct 2013 22:41:56 +0000 (23:41 +0100)]
HTTP: Output http response 304 when modified time is too old
When using the -w '%{http_code}' flag and simulating a Not Modified then
304 should be output.
Daniel Stenberg [Mon, 7 Oct 2013 07:47:03 +0000 (09:47 +0200)]
contributors: helper script to dig out contributors from git
Daniel Stenberg [Sun, 6 Oct 2013 22:08:55 +0000 (00:08 +0200)]
RELEASE-NOTES: add twos refs to bug reports
Daniel Stenberg [Sun, 6 Oct 2013 21:36:21 +0000 (23:36 +0200)]
RELEASE-NOTES: synced with
173160c0d068
Nick Zitzmann [Thu, 3 Oct 2013 02:19:28 +0000 (21:19 -0500)]
darwinssl: block TLS_RSA_WITH_NULL_SHA256 cipher
Credit (for catching a cipher I forgot to add to the blocked ciphers list):
https://www.ssllabs.com/ssltest/viewMyClient.html
Daniel Stenberg [Wed, 2 Oct 2013 13:31:10 +0000 (15:31 +0200)]
OpenSSL: acknowledge CURLOPT_SSL_VERIFYHOST without VERIFYPEER
Setting only CURLOPT_SSL_VERIFYHOST without CURLOPT_SSL_VERIFYPEER set
should still verify that the host name fields in the server certificate
is fine or return failure.
Bug: http://curl.haxx.se/mail/lib-2013-10/0002.html
Reported-by: Ishan SinghLevett
Daniel Stenberg [Wed, 2 Oct 2013 13:30:15 +0000 (15:30 +0200)]
KNOWN_BUGS: #84: CURLINFO_SSL_VERIFYRESULT
CURLINFO_SSL_VERIFYRESULT is only implemented for the OpenSSL and NSS
backends and not for any other!