Dr. Stephen Henson [Wed, 26 Dec 2012 14:45:46 +0000 (14:45 +0000)]
new function SSL_is_server to which returns 1 is the corresponding SSL context is for a server
(backport from HEAD)
Dr. Stephen Henson [Wed, 26 Dec 2012 14:45:27 +0000 (14:45 +0000)]
no need to check s->server as default_nid is never used for TLS 1.2 client authentication
(backport from HEAD)
Dr. Stephen Henson [Wed, 26 Dec 2012 14:44:56 +0000 (14:44 +0000)]
Separate client and server permitted signature algorithm support: by default
the permitted signature algorithms for server and client authentication
are the same but it is now possible to set different algorithms for client
authentication only.
(backport from HEAD)
Dr. Stephen Henson [Wed, 26 Dec 2012 14:43:51 +0000 (14:43 +0000)]
Add certificate callback. If set this is called whenever a certificate
is required by client or server. An application can decide which
certificate chain to present based on arbitrary criteria: for example
supported signature algorithms. Add very simple example to s_server.
This fixes many of the problems and restrictions of the existing client
certificate callback: for example you can now clear existing certificates
and specify the whole chain.
(backport from HEAD)
Dr. Stephen Henson [Wed, 26 Dec 2012 14:31:05 +0000 (14:31 +0000)]
New functions to retrieve certificate signatures and signature OID NID.
(backport from HEAD)
Dr. Stephen Henson [Wed, 26 Dec 2012 14:27:27 +0000 (14:27 +0000)]
Function tls1_check_ec_server_key is now redundant as we make
appropriate checks in tls1_check_chain.
(backport from HEAD)
Dr. Stephen Henson [Wed, 26 Dec 2012 14:26:53 +0000 (14:26 +0000)]
Add new "valid_flags" field to CERT_PKEY structure which determines what
the certificate can be used for (if anything). Set valid_flags field
in new tls1_check_chain function. Simplify ssl_set_cert_masks which used
to have similar checks in it.
Add new "cert_flags" field to CERT structure and include a "strict mode".
This enforces some TLS certificate requirements (such as only permitting
certificate signature algorithms contained in the supported algorithms
extension) which some implementations ignore: this option should be used
with caution as it could cause interoperability issues.
(backport from HEAD)
Dr. Stephen Henson [Wed, 26 Dec 2012 14:26:16 +0000 (14:26 +0000)]
Reorganise supported signature algorithm extension processing.
Only store encoded versions of peer and configured signature algorithms.
Determine shared signature algorithms and cache the result along with NID
equivalents of each algorithm.
(backport from HEAD)
Dr. Stephen Henson [Wed, 26 Dec 2012 14:25:29 +0000 (14:25 +0000)]
Add support for application defined signature algorithms for use with
TLS v1.2. These are sent as an extension for clients and during a certificate
request for servers.
TODO: add support for shared signature algorithms, respect shared algorithms
when deciding which ciphersuites and certificates to permit.
(backport from HEAD)
Dr. Stephen Henson [Wed, 26 Dec 2012 14:18:50 +0000 (14:18 +0000)]
Make it possible to delete all certificates from an SSL structure.
(backport from HEAD)
Dr. Stephen Henson [Wed, 26 Dec 2012 14:12:09 +0000 (14:12 +0000)]
Revert incompatible OCSP_basic_verify changes.
Make partial chain chekcing work with EE certificates only.
Remove unneeded -trust_other option from tocsp.
(Backport from HEAD)
Dr. Stephen Henson [Sun, 23 Dec 2012 18:12:28 +0000 (18:12 +0000)]
add missing \n
Dr. Stephen Henson [Fri, 21 Dec 2012 18:33:53 +0000 (18:33 +0000)]
fix typo
Dr. Stephen Henson [Thu, 20 Dec 2012 19:15:35 +0000 (19:15 +0000)]
update/fix tocsp script (from HEAD)
Dr. Stephen Henson [Thu, 20 Dec 2012 19:06:39 +0000 (19:06 +0000)]
Backport enhancements to OCSP utility from HEAD:
Support - as a file for standard input or output.
Add -badsig option to generate invalid signatures for testing.
New -rmd option to specify digest to sign OCSP responses with.
Dr. Stephen Henson [Thu, 20 Dec 2012 19:01:55 +0000 (19:01 +0000)]
revert, missing commit message
Dr. Stephen Henson [Thu, 20 Dec 2012 19:01:34 +0000 (19:01 +0000)]
oops, revert
Dr. Stephen Henson [Thu, 20 Dec 2012 18:59:09 +0000 (18:59 +0000)]
apps/ocsp.c
Dr. Stephen Henson [Wed, 19 Dec 2012 15:14:10 +0000 (15:14 +0000)]
Integrate host, email and IP address checks into X509_verify.
Add new verify options to set checks.
(backport from HEAD)
Dr. Stephen Henson [Wed, 19 Dec 2012 15:02:58 +0000 (15:02 +0000)]
Return success when the responder is active.
Don't verify our own responses.
(backport from HEAD)
Dr. Stephen Henson [Wed, 19 Dec 2012 15:01:59 +0000 (15:01 +0000)]
Backport X509 hostname, IP address and email checking code from HEAD.
Dr. Stephen Henson [Wed, 19 Dec 2012 15:01:32 +0000 (15:01 +0000)]
Check chain is not NULL before assuming we have a validated chain. The
modification to the OCSP helper purpose breaks normal OCSP verification. It is
no longer needed now we can trust partial chains.
Andy Polyakov [Sun, 16 Dec 2012 19:40:51 +0000 (19:40 +0000)]
VC-32.pl: fix typo [from HEAD].
Submitted by: Pierre Delaage
Dr. Stephen Henson [Fri, 14 Dec 2012 14:31:16 +0000 (14:31 +0000)]
Use new partial chain flag instead of modifying input parameters.
(backport from HEAD)
Dr. Stephen Henson [Fri, 14 Dec 2012 14:30:46 +0000 (14:30 +0000)]
New verify flag to return success if we have any certificate in the trusted
store instead of the default which is to return an error if we can't build
the complete chain. [backport from HEAD]
Ben Laurie [Fri, 14 Dec 2012 13:29:17 +0000 (13:29 +0000)]
Documentation improvements by Chris Palmer (Google).
Ben Laurie [Fri, 14 Dec 2012 12:53:53 +0000 (12:53 +0000)]
Backport OCSP fixes.
Ben Laurie [Thu, 13 Dec 2012 16:16:48 +0000 (16:16 +0000)]
Document -pubkey option.
Ben Laurie [Thu, 13 Dec 2012 15:49:15 +0000 (15:49 +0000)]
Make verify return errors.
Ben Laurie [Thu, 13 Dec 2012 12:43:18 +0000 (12:43 +0000)]
Ignore more.
Ben Laurie [Wed, 12 Dec 2012 13:45:32 +0000 (13:45 +0000)]
Add my 64-bit debug target.
Dr. Stephen Henson [Thu, 6 Dec 2012 18:24:47 +0000 (18:24 +0000)]
Fix two bugs which affect delta CRL handling:
Use -1 to check all extensions in CRLs.
Always set flag for freshest CRL.
Andy Polyakov [Wed, 5 Dec 2012 17:45:09 +0000 (17:45 +0000)]
aes-s390x.pl: fix XTS bugs in z196-specific code path [from HEAD].
Dr. Stephen Henson [Tue, 4 Dec 2012 17:26:04 +0000 (17:26 +0000)]
check mval for NULL too
Dr. Stephen Henson [Mon, 3 Dec 2012 16:33:15 +0000 (16:33 +0000)]
fix leak
Andy Polyakov [Sat, 1 Dec 2012 11:09:13 +0000 (11:09 +0000)]
aes-s390x.pl: harmonize software-only path [from HEAD].
Dr. Stephen Henson [Thu, 29 Nov 2012 19:15:27 +0000 (19:15 +0000)]
PR: 2803
Submitted by: jean-etienne.schwartz@bull.net
In OCSP_basic_varify return an error if X509_STORE_CTX_init fails.
Andy Polyakov [Wed, 28 Nov 2012 13:12:09 +0000 (13:12 +0000)]
Intel compiler support update from HEAD.
Dr. Stephen Henson [Mon, 26 Nov 2012 15:47:44 +0000 (15:47 +0000)]
change inaccurate error message
Dr. Stephen Henson [Thu, 22 Nov 2012 14:15:36 +0000 (14:15 +0000)]
reject zero length point format list or supported curves extensions
Dr. Stephen Henson [Wed, 21 Nov 2012 14:02:30 +0000 (14:02 +0000)]
PR: 2908
Submitted by: Dmitry Belyavsky <beldmit@gmail.com>
Fix DH double free if parameter generation fails.
Dr. Stephen Henson [Tue, 20 Nov 2012 00:28:22 +0000 (00:28 +0000)]
fix leaks
Dr. Stephen Henson [Mon, 19 Nov 2012 20:06:57 +0000 (20:06 +0000)]
correct docs
Andy Polyakov [Mon, 19 Nov 2012 15:02:34 +0000 (15:02 +0000)]
x86_64-gcc.c: resore early clobber constraint [from HEAD].
Submitted by: Florian Weimer
Dr. Stephen Henson [Sun, 18 Nov 2012 15:21:12 +0000 (15:21 +0000)]
PR: 2880
Submitted by: "Florian Rüchel" <florian.ruechel@ruhr-uni-bochum.de>
Correctly handle local machine keys in the capi ENGINE.
Dr. Stephen Henson [Thu, 15 Nov 2012 19:15:07 +0000 (19:15 +0000)]
add "missing" TLSv1.2 cipher alias
Andy Polyakov [Mon, 12 Nov 2012 18:11:17 +0000 (18:11 +0000)]
[vp]aes-x86[_64].pl: update from HEAD.
Andy Polyakov [Mon, 29 Oct 2012 22:29:29 +0000 (22:29 +0000)]
Cumulative updates from HEAD.
Dr. Stephen Henson [Mon, 22 Oct 2012 13:03:31 +0000 (13:03 +0000)]
use correct year automatically
Andy Polyakov [Sun, 21 Oct 2012 18:25:29 +0000 (18:25 +0000)]
linux-ppc: make it more robust [from HEAD].
Dr. Stephen Henson [Tue, 16 Oct 2012 22:46:32 +0000 (22:46 +0000)]
Don't require tag before ciphertext in AESGCM mode
Andy Polyakov [Tue, 16 Oct 2012 08:09:20 +0000 (08:09 +0000)]
aix[64]-cc: get MT support right [from HEAD].
PR: 2896
Bodo Möller [Fri, 5 Oct 2012 20:50:38 +0000 (20:50 +0000)]
Fix EC_KEY initialization race.
Submitted by: Adam Langley
Dr. Stephen Henson [Wed, 26 Sep 2012 13:50:42 +0000 (13:50 +0000)]
add -trusted_first option and verify flag (backport from HEAD)
Bodo Möller [Mon, 24 Sep 2012 19:49:25 +0000 (19:49 +0000)]
Fix Valgrind warning.
Submitted by: Adam Langley
Richard Levitte [Mon, 24 Sep 2012 18:49:07 +0000 (18:49 +0000)]
* Configure: make the debug-levitte-linux{elf,noasm} less extreme.
Richard Levitte [Fri, 21 Sep 2012 13:08:30 +0000 (13:08 +0000)]
* ssl/t1_enc.c (tls1_change_cipher_state): Stupid bug. Fortunately in
debugging code that's seldom used.
Andy Polyakov [Wed, 19 Sep 2012 21:00:35 +0000 (21:00 +0000)]
Configure: allow for compiler options starting with double dash [from HEAD].
Andy Polyakov [Wed, 19 Sep 2012 20:59:18 +0000 (20:59 +0000)]
MIPS assembly pack: jumbo update from HEAD.
Bodo Möller [Mon, 17 Sep 2012 17:23:43 +0000 (17:23 +0000)]
Fix warning.
Submitted by: Chromium Authors
Andy Polyakov [Sat, 15 Sep 2012 08:46:08 +0000 (08:46 +0000)]
e_aes.c: uninitialized variable in aes_ccm_init_key [from HEAD].
PR: 2874
Submitted by: Tomas Mraz
Dr. Stephen Henson [Tue, 11 Sep 2012 13:44:19 +0000 (13:44 +0000)]
fix memory leak
Dr. Stephen Henson [Tue, 11 Sep 2012 13:35:14 +0000 (13:35 +0000)]
Minor enhancement to PR#2836 fix. Instead of modifying SSL_get_certificate
change the current certificate (in s->cert->key) to the one used and then
SSL_get_certificate and SSL_get_privatekey will automatically work.
Ben Laurie [Tue, 11 Sep 2012 12:00:25 +0000 (12:00 +0000)]
Call OCSP Stapling callback after ciphersuite has been chosen, so the
right response is stapled. Also change SSL_get_certificate() so it
returns the certificate actually sent. See
http://rt.openssl.org/Ticket/Display.html?id=2836.
Andy Polyakov [Sat, 1 Sep 2012 13:21:24 +0000 (13:21 +0000)]
bn_lcl.h: gcc removed support for "h" constraint, which broke inline
assembler [from HEAD].
Dr. Stephen Henson [Sat, 1 Sep 2012 11:30:35 +0000 (11:30 +0000)]
Don't load GOST ENGINE if it is already loaded.
Multiple copies of the ENGINE will cause problems when it is cleaned up as
the methods are stored in static structures which will be overwritten and
freed up more than once.
Set static methods to NULL when the ENGINE is freed so it can be reloaded.
Andy Polyakov [Wed, 29 Aug 2012 14:24:18 +0000 (14:24 +0000)]
x86cpuid.pl: hide symbols [backport from x86_64, from HEAD].
Andy Polyakov [Wed, 29 Aug 2012 14:12:10 +0000 (14:12 +0000)]
Add linux-x32 target [from HEAD].
Dr. Stephen Henson [Wed, 22 Aug 2012 22:43:03 +0000 (22:43 +0000)]
PR: 2786
Reported by: Tomas Mraz <tmraz@redhat.com>
Treat a NULL value passed to drbg_free_entropy callback as non-op. This
can happen if the call to fips_get_entropy fails.
Andy Polyakov [Fri, 17 Aug 2012 19:58:34 +0000 (19:58 +0000)]
sha1-armv4-large.pl: comply with ABI [from HEAD].
Andy Polyakov [Fri, 17 Aug 2012 09:41:30 +0000 (09:41 +0000)]
MIPS assembly pack updates from HEAD.
Andy Polyakov [Fri, 17 Aug 2012 09:03:57 +0000 (09:03 +0000)]
aes-mips.pl: harmonize with fips module.
PR: 2863
Submitted by: Duane Sand
Bodo Möller [Thu, 16 Aug 2012 13:42:37 +0000 (13:42 +0000)]
Enable message names for TLS 1.1, 1.2 with -msg.
Andy Polyakov [Tue, 14 Aug 2012 09:53:41 +0000 (09:53 +0000)]
bss_dgram.c: fix compilation failure and warning on Windows with
contemporary SDK [from HEAD].
Andy Polyakov [Mon, 13 Aug 2012 16:37:58 +0000 (16:37 +0000)]
gosthash.c: use memmove in circle_xor8, as input pointers can be equal
[from HEAD].
PR: 2858
Andy Polyakov [Mon, 13 Aug 2012 16:16:24 +0000 (16:16 +0000)]
./Configure: libcrypto.a can grow to many GB on Solaris 10, because of ar bug
[from HEAD].
PR: 2838
Andy Polyakov [Mon, 13 Aug 2012 15:31:10 +0000 (15:31 +0000)]
gcm128.c: fix AAD-only case with AAD length not divisible by 16 [from HEAD].
PR: 2859
Submitted by: John Foley
Dr. Stephen Henson [Thu, 19 Jul 2012 12:48:02 +0000 (12:48 +0000)]
Don't ignore (!) reference count in X509_STORE_free.
Dr. Stephen Henson [Fri, 13 Jul 2012 11:17:56 +0000 (11:17 +0000)]
type
Richard Levitte [Thu, 5 Jul 2012 13:00:45 +0000 (13:00 +0000)]
Add the missing dh_rfc5114 and evp_cnf.
Richard Levitte [Thu, 5 Jul 2012 09:08:18 +0000 (09:08 +0000)]
Added aliases for symbols longer than 31 chars.
Richard Levitte [Thu, 5 Jul 2012 08:53:43 +0000 (08:53 +0000)]
remove duplicate symbol in crypto/symhacks.h
Have the new names start in column 48, that makes it easy to see when
the 31 character limit is reached (on a 80 column display, do the math)
Dr. Stephen Henson [Wed, 4 Jul 2012 13:14:44 +0000 (13:14 +0000)]
add missing evp_cnf.c file
Andy Polyakov [Wed, 4 Jul 2012 08:51:44 +0000 (08:51 +0000)]
crypto/bn/*.h: move PTR_SIZE_INT to private header [from HEAD].
Dr. Stephen Henson [Tue, 3 Jul 2012 20:21:35 +0000 (20:21 +0000)]
revert unrelated test code
Dr. Stephen Henson [Tue, 3 Jul 2012 20:20:11 +0000 (20:20 +0000)]
PR: 2840
Reported by: David McCullough <david_mccullough@mcafee.com>
Restore fips configuration module from 0.9.8.
Dr. Stephen Henson [Tue, 3 Jul 2012 16:37:31 +0000 (16:37 +0000)]
Fix memory leak.
Always perform nexproto callback argument initialisation in s_server
otherwise we use uninitialised data if -nocert is specified.
Andy Polyakov [Mon, 2 Jul 2012 14:38:22 +0000 (14:38 +0000)]
bn_nist.c: harmonize buf in BN_nist_mod_256 with other mod functions and
compensate for VC buf [from HEAD].
PR: 2837
Andy Polyakov [Sun, 1 Jul 2012 09:12:03 +0000 (09:12 +0000)]
bss_dgram.c: fix typos in Windows code [from HEAD].
Dr. Stephen Henson [Wed, 27 Jun 2012 14:12:01 +0000 (14:12 +0000)]
don't use pseudo digests for default values of keys
Andy Polyakov [Wed, 27 Jun 2012 12:48:50 +0000 (12:48 +0000)]
x86_64 assembly pack: make it possible to compile with Perl located
on path with spaces [from HEAD].
PR: 2835
Dr. Stephen Henson [Tue, 19 Jun 2012 13:39:17 +0000 (13:39 +0000)]
oops, add -debug_decrypt option which was accidenatally left out
Andy Polyakov [Tue, 19 Jun 2012 12:28:47 +0000 (12:28 +0000)]
bss_dgram.c: add BIO_CTRL_DGRAM_SET_DONT_FRAG, fix bugs [from HEAD].
PR: 2830, 2833
Ben Laurie [Mon, 11 Jun 2012 09:23:38 +0000 (09:23 +0000)]
Fix memory leak.
Dr. Stephen Henson [Sun, 10 Jun 2012 23:02:06 +0000 (23:02 +0000)]
revert more "version skew" changes that break FIPS builds
Dr. Stephen Henson [Sat, 9 Jun 2012 23:36:38 +0000 (23:36 +0000)]
Revert "version skew" patches that break FIPS compilation
Ben Laurie [Thu, 7 Jun 2012 13:20:20 +0000 (13:20 +0000)]
Rearrange and test authz extension.
Ben Laurie [Wed, 6 Jun 2012 12:58:35 +0000 (12:58 +0000)]
Fix memory leak.
Ben Laurie [Wed, 6 Jun 2012 12:45:14 +0000 (12:45 +0000)]
Fix authz parsing.
Ben Laurie [Wed, 6 Jun 2012 12:41:46 +0000 (12:41 +0000)]
Version skew reduction.