Rob Stradling [Tue, 25 Feb 2014 15:49:20 +0000 (15:49 +0000)]
CABForum EV OIDs for Subject Jurisdiction of Incorporation or Registration.
Dr. Stephen Henson [Wed, 26 Feb 2014 15:28:20 +0000 (15:28 +0000)]
Fix for WIN32 builds with KRB5
(cherry picked from commit
3eddd1706a30cdf3dc9278692d8ee9038eac8a0d)
Andy Polyakov [Wed, 26 Feb 2014 09:22:13 +0000 (10:22 +0100)]
sha/asm/sha256-586.pl: don't try to compile SIMD with no-sse2.
Andy Polyakov [Wed, 26 Feb 2014 08:30:03 +0000 (09:30 +0100)]
sha/asm/sha512-x86_64.pl: fix compilation error on Solaris.
Andy Polyakov [Wed, 26 Feb 2014 08:28:22 +0000 (09:28 +0100)]
Configure: blended processor target in solaris-x86-cc.
Andy Polyakov [Tue, 25 Feb 2014 21:21:54 +0000 (22:21 +0100)]
ssl/t1_enc.c: check EVP_MD_CTX_copy return value.
PR: 3201
Andy Polyakov [Tue, 25 Feb 2014 19:11:34 +0000 (20:11 +0100)]
aes/asm/vpaes-ppc.pl: fix traceback info.
Dr. Stephen Henson [Tue, 25 Feb 2014 15:05:08 +0000 (15:05 +0000)]
Don't use BN_ULLONG in n2l8 use SCTS_TIMESTAMP.
(cherry picked from commit
3678161d717d0f46c5b5b052a6d6a33438b1df00)
Dr. Stephen Henson [Tue, 25 Feb 2014 14:54:09 +0000 (14:54 +0000)]
Fix for v3_scts.c
Not all platforms define BN_ULLONG. Define SCTS_TIMESTAMP as a type
which should work on all platforms.
(cherry picked from commit
6634416732b94627eba1c47de3c3a6321a5458f0)
Dr. Stephen Henson [Tue, 25 Feb 2014 14:05:22 +0000 (14:05 +0000)]
Add -show_chain option to print out verified chain.
Dr. Stephen Henson [Tue, 25 Feb 2014 12:11:22 +0000 (12:11 +0000)]
Avoid Windows 8 Getversion deprecated errors.
Windows 8 SDKs complain that GetVersion() is deprecated.
We only use GetVersion like this:
(GetVersion() < 0x80000000)
which checks if the Windows version is NT based. Use a macro check_winnt()
which uses GetVersion() on older SDK versions and true otherwise.
Rob Stradling [Tue, 25 Feb 2014 10:14:51 +0000 (10:14 +0000)]
Parse non-v1 SCTs less awkwardly.
Andy Polyakov [Mon, 24 Feb 2014 18:29:49 +0000 (19:29 +0100)]
ms/do_win64a.bat: forward to NUL, not NUL:.
Allegedly formwarding to NUL: sometimes creates NUL file in file
system.
PR: 3250
Andy Polyakov [Mon, 24 Feb 2014 15:42:40 +0000 (16:42 +0100)]
BC-32.pl: refresh Borland C support.
PR: 3251
Suggested by: Thorsten Schöning
Andy Polyakov [Mon, 24 Feb 2014 14:16:56 +0000 (15:16 +0100)]
x509/by_dir.c: fix run-away pointer (and potential SEGV)
when adding duplicates in add_cert_dir.
PR: 3261
Reported by: Marian Done
Andy Polyakov [Mon, 24 Feb 2014 12:18:40 +0000 (13:18 +0100)]
config: recognize ARMv8/AArch64 target.
Dr. Stephen Henson [Sun, 23 Feb 2014 13:46:52 +0000 (13:46 +0000)]
Only set current certificate to valid values.
When setting the current certificate check that it has a corresponding
private key.
Dr. Stephen Henson [Sun, 23 Feb 2014 12:00:18 +0000 (12:00 +0000)]
New chain building flags.
New flags to build certificate chains. The can be used to rearrange
the chain so all an application needs to do is add all certificates
in arbitrary order and then build the chain to check and correct them.
Add verify error code when building chain.
Update docs.
Dr. Stephen Henson [Fri, 21 Feb 2014 19:42:03 +0000 (19:42 +0000)]
Option to set current cert to server certificate.
Andy Polyakov [Fri, 21 Feb 2014 11:14:04 +0000 (12:14 +0100)]
aes/asm/aesni-x86[_64].pl: minor Atom-specific performance tweak.
Dr. Stephen Henson [Thu, 20 Feb 2014 22:37:33 +0000 (22:37 +0000)]
fix WIN32 warnings
(cherry picked from commit
b709f8ef54b1c9ad513878ba0213aa651a9acef8)
Dr. Stephen Henson [Thu, 20 Feb 2014 18:41:52 +0000 (18:41 +0000)]
make depend
Dr. Stephen Henson [Thu, 20 Feb 2014 18:24:11 +0000 (18:24 +0000)]
Move CT viewer extension code to crypto/x509v3
Dr. Stephen Henson [Wed, 19 Feb 2014 20:09:08 +0000 (20:09 +0000)]
make depend
Dr. Stephen Henson [Wed, 19 Feb 2014 20:06:13 +0000 (20:06 +0000)]
Remove references to o_time.h
Ben Laurie [Wed, 19 Feb 2014 18:02:04 +0000 (18:02 +0000)]
Move gmtime functions to crypto.h.
Ben Laurie [Wed, 19 Feb 2014 17:57:44 +0000 (17:57 +0000)]
Make i2r_sctlist static.
Ben Laurie [Wed, 19 Feb 2014 17:57:07 +0000 (17:57 +0000)]
Reverse export of o_time.h.
Ben Laurie [Wed, 19 Feb 2014 17:17:14 +0000 (17:17 +0000)]
Merge branch 'sct-viewer-master' of https://github.com/robstradling/openssl into sct-viewer
Rob Stradling [Wed, 19 Feb 2014 13:12:46 +0000 (13:12 +0000)]
Move the SCT List extension parser into libssl.
Add the extension parser in the s_client, ocsp and x509 apps.
Dr. Stephen Henson [Tue, 18 Feb 2014 22:20:30 +0000 (22:20 +0000)]
Don't use CRYPTO_AES_CTR if it isn't defined.
Dr. Stephen Henson [Sat, 4 Jan 2014 13:50:52 +0000 (13:50 +0000)]
Restore SSL_OP_MSIE_SSLV2_RSA_PADDING
The flag SSL_OP_MSIE_SSLV2_RSA_PADDING hasn't done anything since OpenSSL
0.9.7h but deleting it will break source compatibility with any software
that references it. Restore it but #define to zero.
(cherry picked from commit
b17d6b8d1d49fa4732deff17cfd1833616af0d9c)
Dr. Stephen Henson [Sat, 15 Feb 2014 19:48:05 +0000 (19:48 +0000)]
Don't use getcwd in non-copy builds.
Dr. Stephen Henson [Sat, 15 Feb 2014 01:27:56 +0000 (01:27 +0000)]
Remove duplicate statement.
Klaus-Peter Junghanns [Tue, 28 Jan 2014 21:16:22 +0000 (22:16 +0100)]
Add support for aes-128/192/256-ctr to the cryptodev engine.
This can be used to speed up SRTP with libsrtp, e.g. on TI omap/sitara based devices.
Rob Stradling [Fri, 14 Feb 2014 23:24:35 +0000 (23:24 +0000)]
Show the contents of the RFC6962 Signed Certificate Timestamp List Certificate/OCSP Extensions.
Add the RFC6962 OIDs to the objects table.
Kurt Roeckx [Mon, 23 Dec 2013 18:45:26 +0000 (19:45 +0100)]
Use defaults bits in req when not given
If you use "-newkey rsa" it's supposed to read the default number of bits from the
config file. However the value isn't used to generate the key, but it does
print it's generating such a key. The set_keygen_ctx() doesn't call
EVP_PKEY_CTX_set_rsa_keygen_bits() and you end up with the default set in
pkey_rsa_init() (1024). Afterwards the number of bits gets read from the config
file, but nothing is done with that anymore.
We now read the config first and use the value from the config file when no size
is given.
PR: 2592
Kurt Roeckx [Mon, 23 Dec 2013 18:41:28 +0000 (19:41 +0100)]
Fix additional pod errors with numbered items.
Scott Schaefer [Mon, 23 Dec 2013 18:28:30 +0000 (19:28 +0100)]
Fix various spelling errors
Scott Schaefer [Mon, 23 Dec 2013 18:01:38 +0000 (19:01 +0100)]
Document pkcs12 -password behavior
apps/pkcs12.c accepts -password as an argument. The document author
almost certainly meant to write "-password, -passin".
However, that is not correct, either. Actually the code treats
-password as equivalent to -passin, EXCEPT when -export is also
specified, in which case -password as equivalent to -passout.
Andy Polyakov [Fri, 14 Feb 2014 16:43:31 +0000 (17:43 +0100)]
ssl/s3_pkt.c: detect RAND_bytes error in multi-block.
Andy Polyakov [Fri, 14 Feb 2014 16:24:12 +0000 (17:24 +0100)]
x86[_64]cpuid.pl: add low-level RDSEED.
Andy Polyakov [Fri, 14 Feb 2014 16:06:15 +0000 (17:06 +0100)]
aes/asm/aesni-x86_64.pl: further optimization for Atom Silvermont.
Improve CBC decrypt and CTR by ~13/16%, which adds up to ~25/33%
improvement over "pre-Silvermont" version. [Add performance table to
aesni-x86.pl].
Dr. Stephen Henson [Fri, 14 Feb 2014 15:07:01 +0000 (15:07 +0000)]
Include TA in checks/callback with partial chains.
When a chain is complete and ends in a trusted root checks are also
performed on the TA and the callback notified with ok==1. For
consistency do the same for chains where the TA is not self signed.
Dr. Stephen Henson [Fri, 14 Feb 2014 14:52:23 +0000 (14:52 +0000)]
Don't do loop detection for self signed check.
Dr. Stephen Henson [Wed, 12 Feb 2014 15:15:55 +0000 (15:15 +0000)]
Add suppot for ASCII with CRLF canonicalisation.
Dr. Stephen Henson [Sun, 9 Feb 2014 21:12:12 +0000 (21:12 +0000)]
fix error discrepancy
(cherry picked from commit
a2317c3ffde3f1f73bd7fa3f08e420fb09043905)
Andy Polyakov [Thu, 13 Feb 2014 13:39:55 +0000 (14:39 +0100)]
evp/e_aes_cbc_hmac_sha*.c: improve cache locality.
Andy Polyakov [Thu, 13 Feb 2014 13:36:02 +0000 (14:36 +0100)]
ghash-x86[_64].pl: ~15% improvement on Atom Silvermont
(other processors unaffected).
Ben Laurie [Wed, 29 Jan 2014 16:57:32 +0000 (17:57 +0100)]
Fix warning.
Ben Laurie [Sun, 20 Oct 2013 20:54:46 +0000 (21:54 +0100)]
Build on MacOS.
Dr. Stephen Henson [Thu, 6 Feb 2014 13:57:26 +0000 (13:57 +0000)]
Return previous compression methods when setting them.
Dr. Stephen Henson [Wed, 5 Feb 2014 18:55:37 +0000 (18:55 +0000)]
Oops, get selection logic right.
Ben Laurie [Wed, 5 Feb 2014 18:25:06 +0000 (18:25 +0000)]
Fix warnings.
Scott Deboy [Wed, 5 Feb 2014 02:48:59 +0000 (18:48 -0800)]
Don't break out of the custom extension callback loop - continue instead
The contract for custom extension callbacks has changed - all custom extension callbacks are triggered
Ben Laurie [Tue, 4 Feb 2014 23:16:46 +0000 (23:16 +0000)]
Fix whitespace, new-style comments.
Scott Deboy [Tue, 4 Feb 2014 21:08:43 +0000 (13:08 -0800)]
Re-add alert variables removed during rebase
Whitespace fixes
Scott Deboy [Thu, 7 Nov 2013 09:08:29 +0000 (01:08 -0800)]
Updating DTCP authorization type to expected value
Scott Deboy [Thu, 12 Sep 2013 19:03:40 +0000 (12:03 -0700)]
Update custom TLS extension and supplemental data 'generate' callbacks to support sending an alert.
If multiple TLS extensions are expected but not received, the TLS extension and supplemental data 'generate' callbacks are the only chance for the receive-side to trigger a specific TLS alert during the handshake.
Removed logic which no-op'd TLS extension generate callbacks (as the generate callbacks need to always be called in order to trigger alerts), and updated the serverinfo-specific custom TLS extension callbacks to track which custom TLS extensions were received by the client, where no-ops for 'generate' callbacks are appropriate.
Dr. Stephen Henson [Wed, 5 Feb 2014 16:56:58 +0000 (16:56 +0000)]
Return per-certificate chain if extra chain is NULL.
If an application calls the macro SSL_CTX_get_extra_chain_certs
return either the old "shared" extra certificates or those associated
with the current certificate.
This means applications which call SSL_CTX_use_certificate_chain_file
and retrieve the additional chain using SSL_CTX_get_extra_chain_certs
will still work. An application which only wants to check the shared
extra certificates can call the new macro
SSL_CTX_get_extra_chain_certs_only
Andy Polyakov [Wed, 5 Feb 2014 15:38:22 +0000 (16:38 +0100)]
e_aes_cbc_hmac_sha[1|256].c: fix compiler warning.
Andy Polyakov [Wed, 5 Feb 2014 13:08:44 +0000 (14:08 +0100)]
ssl/s3_pkt.c: move multi-block processing to ssl3_write_bytes.
This allows to process multiple fragmets of maximum fragment size,
as opposite to chopping maximum-sized fragments to multiple smaller
ones. This approach relies on dynamic allocation of larger buffers,
which we trade for performance improvement, for several *times* in
some situations.
Andy Polyakov [Wed, 5 Feb 2014 13:05:08 +0000 (14:05 +0100)]
evp/e_aes_cbc_hmac_sha*.c: additional CTRL to query buffer requirements.
Andy Polyakov [Wed, 5 Feb 2014 13:03:35 +0000 (14:03 +0100)]
[aesni|sha*]-mb-x86_64.pl: add data prefetching.
Andy Polyakov [Wed, 5 Feb 2014 12:57:10 +0000 (13:57 +0100)]
s3_pkt.c: move ssl3_release_write_buffer to ssl3_write_bytes.
If application has more data than maximum fragment, hold to buffer
for whole write, as opposite to per-fragment strategy.
Dr. Stephen Henson [Mon, 3 Feb 2014 14:10:24 +0000 (14:10 +0000)]
Add quotes as CC can contain spaces.
PR#3253
Dr. Stephen Henson [Sun, 2 Feb 2014 02:51:30 +0000 (02:51 +0000)]
New ctrl to set current certificate.
New ctrl sets current certificate based on certain criteria. Currently
two options: set the first valid certificate as current and set the
next valid certificate as current. Using these an application can
iterate over all certificates in an SSL_CTX or SSL structure.
Dr. Stephen Henson [Wed, 29 Jan 2014 14:03:05 +0000 (14:03 +0000)]
Demo of use of errors in applications.
Andy Polyakov [Sat, 1 Feb 2014 23:09:17 +0000 (00:09 +0100)]
modes/asm/ghash-s390x.pl: +15% performance improvement on z10.
Andy Polyakov [Sat, 1 Feb 2014 20:13:49 +0000 (21:13 +0100)]
crypto/aes/asm/aesni-x86[_64].pl update, up to 14% improvement on
Atom Silvermont. On other CPUs one can observe 1% loss on some
algorithms.
Andy Polyakov [Sat, 1 Feb 2014 20:07:16 +0000 (21:07 +0100)]
crypto/sha/asm/sha1-x86_64.pl update:
+5% on Atom Silvermont, up to +8% improvement of legacy code.
Harmonize sha1-586.pl and aesni-sha1-x86_86.p with sha1-x86_64.pl.
Dr. Stephen Henson [Wed, 29 Jan 2014 00:59:35 +0000 (00:59 +0000)]
Clarify docs.
Remove reference to ERR_TXT_MALLOCED in the error library as that is
only used internally. Indicate that returned error data must not be
freed.
(cherry picked from commit
f2d678e6e89b6508147086610e985d4e8416e867)
Dr. Stephen Henson [Tue, 28 Jan 2014 15:35:16 +0000 (15:35 +0000)]
typo
Dr. Stephen Henson [Tue, 28 Jan 2014 15:10:27 +0000 (15:10 +0000)]
Check i before r[i].
PR#3244
(cherry picked from commit
9614d2c676ffe74ce0c919d9e5c0d622a011cbed)
Dr. Stephen Henson [Tue, 28 Jan 2014 15:15:26 +0000 (15:15 +0000)]
Fix demo comment: 0.9.9 never released.
Dr. Stephen Henson [Tue, 28 Jan 2014 13:51:58 +0000 (13:51 +0000)]
Add loaded dynamic ENGINEs to list.
Always add a dynamically loaded ENGINE to list. Otherwise it can cause
problems when multiply loaded, especially if it adds new public key methods.
For all current engines we only want a single implementation anyway.
Dr. Stephen Henson [Mon, 27 Jan 2014 14:30:29 +0000 (14:30 +0000)]
New function to set compression methods so they can be safely freed.
Dr. Stephen Henson [Sun, 26 Jan 2014 16:28:27 +0000 (16:28 +0000)]
Compare encodings in X509_cmp as well as hash.
Dr. Stephen Henson [Sun, 26 Jan 2014 00:51:09 +0000 (00:51 +0000)]
Add cert callback retry test.
Dr. Stephen Henson [Sat, 25 Jan 2014 23:20:34 +0000 (23:20 +0000)]
Certificate callback doc.
Dr. Stephen Henson [Sat, 25 Jan 2014 13:31:07 +0000 (13:31 +0000)]
Support retries in certificate callback
Dr. Stephen Henson [Thu, 16 Jan 2014 14:06:19 +0000 (14:06 +0000)]
Add new function SSL_CTX_get_ssl_method().
Partial fix for PR#3183.
Kaspar Brand [Thu, 16 Jan 2014 13:46:31 +0000 (13:46 +0000)]
Omit initial status request callback check.
PR#3178
Dr. Stephen Henson [Sun, 12 Jan 2014 14:13:48 +0000 (14:13 +0000)]
typo
Dr. Stephen Henson [Wed, 25 Dec 2013 15:00:39 +0000 (15:00 +0000)]
Use rdrand as additional entropy source.
If available rdrand is used as an additional entropy source for the
PRNG and for additional input in FIPS mode.
Jeff Trawick [Fri, 10 Jan 2014 23:01:30 +0000 (23:01 +0000)]
typo
Jeff Trawick [Fri, 10 Jan 2014 23:00:50 +0000 (23:00 +0000)]
typo
Dr. Stephen Henson [Thu, 9 Jan 2014 22:47:22 +0000 (22:47 +0000)]
Fix bug in X509_V_FLAG_IGNORE_CRITICAL CRL handling.
Daniel Kahn Gillmor [Fri, 20 Dec 2013 07:56:54 +0000 (02:56 -0500)]
update remaining documentation to move from EDH to DHE
change documentation and comments to indicate that we prefer the
standard "DHE" naming scheme everywhere over the older "EDH"
Daniel Kahn Gillmor [Fri, 20 Dec 2013 07:28:10 +0000 (02:28 -0500)]
Replace EDH-RSA-DES-CBC-SHA, etc. with DHE-RSA-DES-CBC-SHA
Replace the full ciphersuites with "EDH-" in their labels with "DHE-"
so that all DHE ciphersuites are referred to in the same way.
Leave backward-compatible aliases for the ciphersuites in question so
that configurations which specify these explicitly will continue
working.
Daniel Kahn Gillmor [Fri, 20 Dec 2013 06:42:03 +0000 (01:42 -0500)]
change SSL3_CK_EDH_* to SSL_CK_DHE_* (with backward-compatibility)
This change normalizes the SSL_CK_DHE_ #defines to use the common term
"DHE", while permitting older code that uses the more uncommon "EDH"
constants to compile properly.
Daniel Kahn Gillmor [Thu, 19 Dec 2013 20:23:05 +0000 (15:23 -0500)]
documentation should use "DHE" instead of "EDH"
Daniel Kahn Gillmor [Thu, 19 Dec 2013 20:11:15 +0000 (15:11 -0500)]
use SSL_kDHE throughout instead of SSL_kEDH
DHE is the standard term used by the RFCs and by other TLS
implementations. It's useful to have the internal variables use the
standard terminology.
This patch leaves a synonym SSL_kEDH in place, though, so that older
code can still be built against it, since that has been the
traditional API. SSL_kEDH should probably be deprecated at some
point, though.
Daniel Kahn Gillmor [Thu, 19 Dec 2013 19:45:51 +0000 (14:45 -0500)]
emit "DHE" instead of "edh" for kX packet trace output
other parts of packet tracing emit the standard "DHE" label instead of
"edh". This change brings the output of ssl_print_client_keyex() and
ssl_print_server_keyex() into accordance with the standard term.
Daniel Kahn Gillmor [Thu, 19 Dec 2013 19:42:39 +0000 (14:42 -0500)]
Allow "DHE" and "kDHE" as synonyms of "EDH" and "kEDH" when specifiying ciphers
The standard terminology in https://tools.ietf.org/html/rfc5426 is
"DHE". "openssl ciphers" outputs "DHE" (for the most part). But
users of the library currently cannot specify "DHE", they must
currently specify "EDH".
This change allows users to specify the common term in cipher suite
strings without breaking backward compatibility.
Daniel Kahn Gillmor [Thu, 19 Dec 2013 18:57:49 +0000 (13:57 -0500)]
use SSL_kECDHE throughout instead of SSL_kEECDH
ECDHE is the standard term used by the RFCs and by other TLS
implementations. It's useful to have the internal variables use the
standard terminology.
This patch leaves a synonym SSL_kEECDH in place, though, so that older
code can still be built against it, since that has been the
traditional API. SSL_kEECDH should probably be deprecated at some
point, though.
Daniel Kahn Gillmor [Thu, 19 Dec 2013 18:55:00 +0000 (13:55 -0500)]
emit "ECDHE" instead of "EECDH" for kX packet trace output
other parts of packet tracing emit the standard "ECDHE" label instead
of "EECDH". This change brings the output of ssl_print_client_keyex()
and ssl_print_server_keyex() into accordance with the standard term.
Daniel Kahn Gillmor [Thu, 19 Dec 2013 18:18:30 +0000 (13:18 -0500)]
Allow "ECDHE" as a synonym of "EECDH" when specifiying ciphers
The standard terminology in https://tools.ietf.org/html/rfc4492 is
ECDHE. "openssl ciphers" outputs ECDHE. But users of the library
currently cannot specify ECDHE, they must specify EECDH.
This change allows users to specify the common term in cipher suite
strings without breaking backward compatibility.
Andy Polyakov [Thu, 9 Jan 2014 12:44:59 +0000 (13:44 +0100)]
bn/asm/x86_64-mont5.pl: fix compilation error on Solaris.
Dr. Stephen Henson [Wed, 8 Jan 2014 14:15:58 +0000 (14:15 +0000)]
update FAQ