Christian Heimes [Wed, 13 Nov 2013 00:46:42 +0000 (01:46 +0100)]
add test case to makefiles
Christian Heimes [Wed, 13 Nov 2013 00:42:48 +0000 (01:42 +0100)]
Implement tests for PKCS#5 PBKDF2 HMAC
Dr. Stephen Henson [Sat, 24 May 2014 22:55:19 +0000 (23:55 +0100)]
Don't use expired certificates if possible.
When looking for the issuer of a certificate, if current candidate is
expired, continue looking. Only return an expired certificate if no valid
certificates are found.
PR#3359
Dr. Stephen Henson [Sat, 24 May 2014 22:48:29 +0000 (23:48 +0100)]
Rename vpm_int.h to x509_lcl.h
Matt Caswell [Sat, 24 May 2014 22:55:27 +0000 (23:55 +0100)]
Fix for non compilation with TLS_DEBUG defined
Ben Laurie [Sat, 24 May 2014 14:42:18 +0000 (15:42 +0100)]
Only copy opensslconf.h at init time.
Martin Kaiser [Fri, 23 May 2014 23:04:25 +0000 (00:04 +0100)]
Modify the description of -noout to match the manpage. PR#3364
Martin Kaiser [Fri, 23 May 2014 23:02:24 +0000 (00:02 +0100)]
Add an NSS output format to sess_id to export to export the session id and the master key in NSS keylog format. PR#3352
Luiz Angelo Daros de Luca [Fri, 23 May 2014 22:05:38 +0000 (23:05 +0100)]
OpenSSL is able to generate a certificate with name constraints with any possible
subjectAltName field. The Name Contraint example in x509v3_config(5) even use IP
as an example:
nameConstraints=permitted;IP:192.168.0.0/255.255.0.0
However, until now, the verify code for IP name contraints did not exist. Any
check with a IP Address Name Constraint results in a "unsupported name constraint
type" error.
This patch implements support for IP Address Name Constraint (v4 and v6). This code
validaded correcly certificates with multiple IPv4/IPv6 address checking against
a CA certificate with these constraints:
permitted;IP.1=10.9.0.0/255.255.0.0
permitted;IP.2=10.48.0.0/255.255.0.0
permitted;IP.3=10.148.0.0/255.255.0.0
permitted;IP.4=fdc8:123f:e31f::/ffff:ffff:ffff::
Signed-off-by: Luiz Angelo Daros de Luca <luizluca@gmail.com>
Andy Polyakov [Fri, 23 May 2014 18:15:06 +0000 (20:15 +0200)]
aesp8-ppc.pl: add optimized CBC decrypt.
Andy Polyakov [Fri, 23 May 2014 18:14:38 +0000 (20:14 +0200)]
vpaes-ppc.pl: comply with ABI.
Ben Laurie [Thu, 22 May 2014 21:00:17 +0000 (22:00 +0100)]
Merge branch 'heartbeat-test' of git://github.com/mbland/openssl
Mike Bland [Thu, 22 May 2014 18:41:47 +0000 (14:41 -0400)]
Fix heartbeat_test for -DOPENSSL_NO_HEARTBEATS
Replaces the entire test with a trivial implementation when
OPENSSL_NO_HEARTBEATS is defined.
Ben Laurie [Thu, 22 May 2014 09:11:40 +0000 (10:11 +0100)]
Check length first in BUF_strnlen().
Matt Caswell [Wed, 21 May 2014 23:07:35 +0000 (00:07 +0100)]
Fixed minor copy&paste error, and stray space causing rendering problem
Matt Caswell [Wed, 21 May 2014 23:00:23 +0000 (00:00 +0100)]
Fixed unterminated B tag, causing build to fail with newer pod2man versions
Ben Laurie [Wed, 21 May 2014 11:03:02 +0000 (12:03 +0100)]
Remove redundant test.
Ben Laurie [Wed, 21 May 2014 10:54:54 +0000 (11:54 +0100)]
Implement BUF_strnlen() and use it instead of strlen().
Viktor Dukhovni [Wed, 21 May 2014 09:57:44 +0000 (10:57 +0100)]
Fixes to host checking.
Fixes to host checking wild card support and add support for
setting host checking flags when verifying a certificate
chain.
Dr. Stephen Henson [Wed, 21 May 2014 09:50:19 +0000 (10:50 +0100)]
Fix for PKCS12_create if no-rc2 specified.
Use triple DES for certificate encryption if no-rc2 is
specified.
PR#3357
Dr. Stephen Henson [Wed, 21 May 2014 09:39:11 +0000 (10:39 +0100)]
Change default cipher in smime app to des3.
PR#3357
Andy Polyakov [Tue, 20 May 2014 21:32:12 +0000 (23:32 +0200)]
aesv8-armx.pl: fix typo.
Andy Polyakov [Tue, 20 May 2014 20:50:28 +0000 (22:50 +0200)]
aesv8-armx.pl: optimize by adding 128-bit code paths.
Ben Laurie [Tue, 20 May 2014 12:52:31 +0000 (13:52 +0100)]
Don't allocate more than is needed in BUF_strndup().
Dr. Stephen Henson [Tue, 20 May 2014 10:18:30 +0000 (11:18 +0100)]
For portability use BUF_strndup instead of strndup.
Dr. Stephen Henson [Tue, 20 May 2014 00:48:51 +0000 (01:48 +0100)]
Adding padding extension to trace code.
Dr. Stephen Henson [Tue, 20 May 2014 00:45:50 +0000 (01:45 +0100)]
Fix bug in signature algorithm copy.
Janpopan [Sun, 4 May 2014 16:13:43 +0000 (18:13 +0200)]
Fix a wrong parameter count ERR_add_error_data
Ben Laurie [Mon, 19 May 2014 16:40:52 +0000 (17:40 +0100)]
Merge branch 'mbland-heartbeat-test'
Ben Laurie [Mon, 19 May 2014 16:38:56 +0000 (17:38 +0100)]
Fixup for ancient compilers.
Mike Bland [Thu, 1 May 2014 14:10:14 +0000 (10:10 -0400)]
Zero-initialize heartbeat test write buffer
The previous calls to memset() were added to tear_down() when I noticed the
test spuriously failing in opt mode, with different results each time. This
appeared to be because the allocator zeros out memory in debug mode, but not
in opt mode. Since the heartbeat functions silently drop the request on error
without modifying the contents of the write buffer, whatever random contents
were in memory before being reallocated to the write buffer used in the test
would cause nondeterministic test failures in the Heartbleed regression cases.
Adding these calls allowed the test to pass in both debug and opt modes.
Ben Laurie notified me offline that the test was aborting in
debug-ben-debug-64-clang mode, configured with GitConfigure and built with
GitMake. Looking into this, I realized the first memset() call was zeroing out
a reference count used by SSL_free() that was checked in
debug-ben-debug-64-clang mode but not in the normal debug mode.
Removing the memset() calls from tear_down() and adding a memset() for the
write buffer in set_up() addresses the issue and allows the test to
successfully execute in debug, opt, and debug-ben-debug-64-clang modes.
Mike Bland [Thu, 1 May 2014 14:08:18 +0000 (10:08 -0400)]
More through error checks in set_up
Checks the return values of ssl_init_wbio_buffer() and ssl3_setup_buffers().
Ben Laurie [Tue, 29 Apr 2014 17:36:39 +0000 (18:36 +0100)]
Make it build/run.
Mike Bland [Wed, 16 Apr 2014 11:21:26 +0000 (07:21 -0400)]
Unit/regression test for TLS heartbeats.
Regression test against CVE-2014-0160 (Heartbleed).
More info: http://mike-bland.com/tags/heartbleed.html
Andy Polyakov [Mon, 19 May 2014 06:46:44 +0000 (08:46 +0200)]
Add "teaser" AES module for ARMv8.
"Teaser" means that it's initial proof-of-concept to build EVP module
upon.
Matt Caswell [Thu, 15 May 2014 20:13:38 +0000 (21:13 +0100)]
Moved note about lack of support for AEAD modes out of BUGS section to SUPPORTED CIPHERS section (bug has been fixed, but still no support for AEAD)
Dr. Stephen Henson [Thu, 15 May 2014 13:05:47 +0000 (14:05 +0100)]
Enc doesn't support AEAD ciphers.
(cherry picked from commit
09184dddead165901700b31eb39d540ba30f93c5)
Jeffrey Walton [Wed, 14 May 2014 21:49:30 +0000 (22:49 +0100)]
Fix grammar error in verify pod. PR#3355
Jeffrey Walton [Wed, 14 May 2014 21:48:26 +0000 (22:48 +0100)]
Add information to BUGS section of enc documentation. PR#3354
Michal Bozon [Wed, 14 May 2014 20:07:51 +0000 (21:07 +0100)]
Corrected POD syntax errors. PR#3353
Mike Frysinger [Mon, 12 May 2014 22:31:51 +0000 (23:31 +0100)]
Have the .pc files depend on each other rather than duplicating the
various link settings. PR#3332
Kurt Roeckx [Mon, 12 May 2014 16:19:14 +0000 (18:19 +0200)]
Check sk_SSL_CIPHER_num() after assigning sk.
Jean-Paul Calderone [Thu, 3 Apr 2014 00:47:38 +0000 (20:47 -0400)]
Correct the return type on the signature for X509_STORE_CTX_get_ex_data given in the pod file.
Serguei E. Leontiev [Sun, 11 May 2014 18:46:42 +0000 (19:46 +0100)]
Replace manual ASN1 decoder with ASN1_get_object
Replace manual ASN.1 decoder with ASN1_get object. This
will decode the tag and length properly and check against
it does not exceed the supplied buffer length.
PR#3335
Dr. Stephen Henson [Sat, 10 May 2014 01:04:23 +0000 (02:04 +0100)]
Correct example.
Andy Polyakov [Mon, 12 May 2014 08:35:29 +0000 (10:35 +0200)]
Add "teaser" AES module for PowerISA 2.07.
"Teaser" means that it's not integrated yet and purpose of this
commit is primarily informational, to exhibit design choices,
such as how to handle alignment and endianness. In other words
it's proof-of-concept code that EVP module will build upon.
Matt Caswell [Sun, 11 May 2014 23:38:37 +0000 (00:38 +0100)]
Fixed NULL pointer dereference. See PR#3321
Kurt Roeckx [Thu, 1 May 2014 11:10:01 +0000 (13:10 +0200)]
Set authkey to NULL and check malloc return value.
Martin Brejcha [Thu, 1 May 2014 10:07:09 +0000 (12:07 +0200)]
dgram_sctp_ctrl: authkey memory leak
PR: 3327
Günther Noack [Thu, 1 May 2014 11:33:11 +0000 (13:33 +0200)]
Avoid out-of-bounds write in SSL_get_shared_ciphers
PR: 3317
Viktor Dukhovni [Sun, 11 May 2014 19:28:56 +0000 (20:28 +0100)]
Fix infinite loop. PR#3347
Matt Caswell [Sun, 11 May 2014 10:27:26 +0000 (11:27 +0100)]
Move length check earlier to ensure we don't go beyond the end of the user's buffer. PR#3320
Tim Hudson [Sat, 26 Apr 2014 15:55:47 +0000 (01:55 +1000)]
safety check to ensure we dont send out beyond the users buffer
Matt Caswell [Sat, 10 May 2014 00:19:50 +0000 (01:19 +0100)]
Fixed CRLF in file
Dr. Stephen Henson [Thu, 8 May 2014 12:10:56 +0000 (13:10 +0100)]
Return an error if no recipient type matches.
If the key type does not match any CMS recipient type return
an error instead of using a random key (MMA mitigation). This
does not leak any useful information to an attacker.
PR#3348
Geoff Thorpe [Sat, 26 Apr 2014 05:22:54 +0000 (01:22 -0400)]
s_client/s_server: support unix domain sockets
The "-unix <path>" argument allows s_server and s_client to use a unix
domain socket in the filesystem instead of IPv4 ("-connect", "-port",
"-accept", etc). If s_server exits gracefully, such as when "-naccept"
is used and the requested number of SSL/TLS connections have occurred,
then the domain socket file is removed. On ctrl-C, it is likely that
the stale socket file will be left over, such that s_server would
normally fail to restart with the same arguments. For this reason,
s_server also supports an "-unlink" option, which will clean up any
stale socket file before starting.
If you have any reason to want encrypted IPC within an O/S instance,
this concept might come in handy. Otherwise it just demonstrates that
there is nothing about SSL/TLS that limits it to TCP/IP in any way.
(There might also be benchmarking and profiling use in this path, as
unix domain sockets are much lower overhead than connecting over local
IP addresses).
Signed-off-by: Geoff Thorpe <geoff@openssl.org>
Tim Hudson [Mon, 5 May 2014 00:53:39 +0000 (10:53 +1000)]
coverity 966576 - close socket in error path
Tim Hudson [Mon, 5 May 2014 00:39:30 +0000 (10:39 +1000)]
PR#3342 fix resource leak coverity issue 966577
Tim Hudson [Sun, 4 May 2014 22:22:42 +0000 (08:22 +1000)]
fix coverity issue 966597 - error line is not always initialised
Matt Caswell [Wed, 7 May 2014 22:21:02 +0000 (23:21 +0100)]
Fixed NULL pointer dereference in PKCS7_dataDecode reported by David Ramos in PR#3339
Geoff Thorpe [Sun, 4 May 2014 22:44:14 +0000 (18:44 -0400)]
evp: prevent underflow in base64 decoding
This patch resolves RT ticket #2608.
Thanks to Robert Dugal for originally spotting this, and to David
Ramos for noticing that the ball had been dropped.
Signed-off-by: Geoff Thorpe <geoff@openssl.org>
Geoff Thorpe [Sun, 4 May 2014 20:19:22 +0000 (16:19 -0400)]
bignum: allow concurrent BN_MONT_CTX_set_locked()
The lazy-initialisation of BN_MONT_CTX was serialising all threads, as
noted by Daniel Sands and co at Sandia. This was to handle the case that
2 or more threads race to lazy-init the same context, but stunted all
scalability in the case where 2 or more threads are doing unrelated
things! We favour the latter case by punishing the former. The init work
gets done by each thread that finds the context to be uninitialised, and
we then lock the "set" logic after that work is done - the winning
thread's work gets used, the losing threads throw away what they've done.
Signed-off-by: Geoff Thorpe <geoff@openssl.org>
Dr. Stephen Henson [Tue, 6 May 2014 13:07:37 +0000 (14:07 +0100)]
Initialize num properly.
PR#3289
PR#3345
Dr. Stephen Henson [Mon, 5 May 2014 22:56:43 +0000 (23:56 +0100)]
Set Enveloped data version to 2 if ktri version not zero.
Tim Hudson [Sun, 4 May 2014 20:41:22 +0000 (06:41 +1000)]
- fix coverity issues 966593-966596
Geoff Thorpe [Sun, 4 May 2014 22:46:42 +0000 (18:46 -0400)]
apps/s_server: document '-naccept' cmd-line argument
Signed-off-by: Geoff Thorpe <geoff@openssl.org>
Andy Polyakov [Sun, 4 May 2014 14:56:00 +0000 (16:56 +0200)]
md5/asm/md5-[586|x86_64].pl: +15% on Atom.
[MD5 is hardly relevant, just cleaning up repository]
Andy Polyakov [Sun, 4 May 2014 14:39:59 +0000 (16:39 +0200)]
C64x+ assembply pack: add RC4 module.
Andy Polyakov [Sun, 4 May 2014 14:38:32 +0000 (16:38 +0200)]
C64x+ assembly pack: make it work with older toolchain.
Andy Polyakov [Sun, 4 May 2014 08:57:55 +0000 (10:57 +0200)]
sha/asm/sha1-armv4-large.pl: add NEON and ARMv8 code paths.
sha/asm/sha256-armv4.pl: add ARMv8 code path.
Andy Polyakov [Sun, 4 May 2014 08:55:49 +0000 (10:55 +0200)]
crypto/armcap.c: detect ARMv8 capabilities [in 32-bit build].
David Ramos [Sat, 3 May 2014 10:00:27 +0000 (12:00 +0200)]
Double free in i2o_ECPublicKey
PR: 3338
Geoff Thorpe [Sun, 27 Apr 2014 20:06:50 +0000 (16:06 -0400)]
dso: eliminate VMS code on non-VMS systems
Even though the meat of dso_vms.c is compiled out on non-VMS builds,
the (pre-)compiler still traverses some of the macro handling. This
trips up at least one non-VMS build configuration, so this commit
makes the skip-VMS case more robust.
Signed-off-by: Geoff Thorpe <geoff@openssl.org>
Jeff Trawick [Sun, 13 Apr 2014 13:10:17 +0000 (15:10 +0200)]
typo in SSL_get_peer_cert_chain docs
RT: 3304
Matt Caswell [Wed, 30 Apr 2014 23:23:57 +0000 (00:23 +0100)]
Fixed spelling error in error message. Fix supplied by Marcos Marado
Geoff Thorpe [Wed, 30 Apr 2014 15:39:24 +0000 (11:39 -0400)]
bignum: fix boundary condition in montgomery logic
It's not clear whether this inconsistency could lead to an actual
computation error, but it involved a BIGNUM being passed around the
montgomery logic in an inconsistent state. This was found using flags
-DBN_DEBUG -DBN_DEBUG_RAND, and working backwards from this assertion
in 'ectest';
ectest: bn_mul.c:960: BN_mul: Assertion `(_bnum2->top == 0) ||
(_bnum2->d[_bnum2->top - 1] != 0)' failed
Signed-off-by: Geoff Thorpe <geoff@openssl.org>
Ben Laurie [Tue, 29 Apr 2014 17:19:54 +0000 (18:19 +0100)]
More warnings.
Matt Caswell [Sun, 27 Apr 2014 17:57:34 +0000 (18:57 +0100)]
Fix SSL_CONF_cmd missing =back
Matt Caswell [Sat, 26 Apr 2014 20:56:36 +0000 (21:56 +0100)]
Fixed minor errors in docs
Matt Caswell [Sat, 26 Apr 2014 20:44:26 +0000 (21:44 +0100)]
PKCS5_PBKDF2_HMAC documentation submitted by Jeffrey Walton
Chris Rorvick [Sat, 26 Apr 2014 16:10:45 +0000 (11:10 -0500)]
doc: Add missing =back directive.
Signed-off-by: Chris Rorvick <chris@rorvick.com>
mancha [Fri, 25 Apr 2014 14:58:49 +0000 (14:58 +0000)]
Fix version documentation.
Specify -f is for compilation flags. Add -d to synopsis section.
Closes #77.
mancha [Thu, 24 Apr 2014 19:06:20 +0000 (19:06 +0000)]
Fix eckey_priv_encode()
Fix eckey_priv_encode to return an error on failure of i2d_ECPrivateKey.
Geoff Thorpe [Fri, 25 Apr 2014 04:44:17 +0000 (00:44 -0400)]
make depend
Geoff Thorpe [Fri, 25 Apr 2014 18:27:02 +0000 (14:27 -0400)]
apps: constify some string parameters
There are certainly many more constifiable strings in the various
interfaces, which I hope to get to eventually.
Signed-off-by: Geoff Thorpe <geoff@openssl.org>
Geoff Thorpe [Fri, 25 Apr 2014 05:20:16 +0000 (01:20 -0400)]
util/mkerr.pl: fix perl warning
Gets rid of this;
defined(@array) is deprecated at ../util/mkerr.pl line 792.
(Maybe you should just omit the defined()?)
defined(@array) is deprecated at ../util/mkerr.pl line 800.
(Maybe you should just omit the defined()?)
Signed-off-by: Geoff Thorpe <geoff@openssl.org>
Mark J. Cox [Fri, 25 Apr 2014 07:12:13 +0000 (08:12 +0100)]
Remove latest version, it's pretty redundant and just one more thing
to keep up to date with releases. Reported because
http://www.openssl.org/support/faq.html#MISC1 was out of date
Geoff Thorpe [Fri, 25 Apr 2014 04:58:16 +0000 (00:58 -0400)]
util/mkdef.pl: o_time.h doesn't exist any more
o_time.h was removed in commit
ff49a94, which breaks "make update"
unless mkdir.pl is updated accordingly.
Signed-off-by: Geoff Thorpe <geoff@openssl.org>
Steve Marquess [Thu, 24 Apr 2014 11:13:05 +0000 (07:13 -0400)]
Add new sponsors
Andy Polyakov [Thu, 24 Apr 2014 08:16:58 +0000 (10:16 +0200)]
bn/asm/armv4-gf2m.pl, modes/asm/ghash-armv4.pl: faster multiplication
algorithm suggested in following paper:
Câmara, D.; Gouvêa, C. P. L.; López, J. & Dahab, R.: Fast Software
Polynomial Multiplication on ARM Processors using the NEON Engine.
http://conradoplg.cryptoland.net/files/2010/12/mocrysen13.pdf
Andy Polyakov [Thu, 24 Apr 2014 08:13:30 +0000 (10:13 +0200)]
aes/asm/bsaes-x86_64.pl: Atom-specific optimization.
Ben Laurie [Wed, 23 Apr 2014 06:24:03 +0000 (07:24 +0100)]
Fix use after free.
Ben Laurie [Tue, 22 Apr 2014 11:38:26 +0000 (12:38 +0100)]
Fix double frees.
Kaspar Brand [Mon, 21 Apr 2014 15:52:28 +0000 (16:52 +0100)]
Fix SSL_CTX_get{first,next}_certificate.
Fix typo that stopped SSL_CTX_get_{first,next}_certificate from working.
Dr. Stephen Henson [Wed, 16 Apr 2014 11:15:43 +0000 (12:15 +0100)]
Document -debug_decrypt option.
Dr. Stephen Henson [Tue, 15 Apr 2014 17:48:54 +0000 (18:48 +0100)]
Extension checking fixes.
When looking for an extension we need to set the last found
position to -1 to properly search all extensions.
PR#3309.
Dr. Stephen Henson [Tue, 15 Apr 2014 17:17:12 +0000 (18:17 +0100)]
Clarify CMS_decrypt behaviour.
Dr. Stephen Henson [Fri, 11 Apr 2014 01:50:51 +0000 (02:50 +0100)]
Add new key fingerprint.
Dr. Stephen Henson [Wed, 9 Apr 2014 14:42:40 +0000 (15:42 +0100)]
Fix free errors in ocsp utility.
Keep copy of any host, path and port values allocated by
OCSP_parse_url and free as necessary.
Dr. Stephen Henson [Wed, 9 Apr 2014 14:35:51 +0000 (15:35 +0100)]
ssleay_rand_add returns a value in 1.1.0