oweals/openssl.git
10 years agoDon't use CRYPTO_AES_CTR if it isn't defined.
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.

10 years agoRestore SSL_OP_MSIE_SSLV2_RSA_PADDING
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)

10 years agoDon't use getcwd in non-copy builds.
Dr. Stephen Henson [Sat, 15 Feb 2014 19:48:05 +0000 (19:48 +0000)]
Don't use getcwd in non-copy builds.

10 years agoRemove duplicate statement.
Dr. Stephen Henson [Sat, 15 Feb 2014 01:27:56 +0000 (01:27 +0000)]
Remove duplicate statement.

10 years agoAdd support for aes-128/192/256-ctr to the cryptodev engine.
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.

10 years agoUse defaults bits in req when not given
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

10 years agoFix additional pod errors with numbered items.
Kurt Roeckx [Mon, 23 Dec 2013 18:41:28 +0000 (19:41 +0100)]
Fix additional pod errors with numbered items.

10 years agoFix various spelling errors
Scott Schaefer [Mon, 23 Dec 2013 18:28:30 +0000 (19:28 +0100)]
Fix various spelling errors

10 years agoDocument pkcs12 -password behavior
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.

10 years agossl/s3_pkt.c: detect RAND_bytes error in multi-block.
Andy Polyakov [Fri, 14 Feb 2014 16:43:31 +0000 (17:43 +0100)]
ssl/s3_pkt.c: detect RAND_bytes error in multi-block.

10 years agox86[_64]cpuid.pl: add low-level RDSEED.
Andy Polyakov [Fri, 14 Feb 2014 16:24:12 +0000 (17:24 +0100)]
x86[_64]cpuid.pl: add low-level RDSEED.

10 years agoaes/asm/aesni-x86_64.pl: further optimization for Atom Silvermont.
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].

10 years agoInclude TA in checks/callback with partial chains.
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.

10 years agoDon't do loop detection for self signed check.
Dr. Stephen Henson [Fri, 14 Feb 2014 14:52:23 +0000 (14:52 +0000)]
Don't do loop detection for self signed check.

10 years agoAdd suppot for ASCII with CRLF canonicalisation.
Dr. Stephen Henson [Wed, 12 Feb 2014 15:15:55 +0000 (15:15 +0000)]
Add suppot for ASCII with CRLF canonicalisation.

10 years agofix error discrepancy
Dr. Stephen Henson [Sun, 9 Feb 2014 21:12:12 +0000 (21:12 +0000)]
fix error discrepancy
(cherry picked from commit a2317c3ffde3f1f73bd7fa3f08e420fb09043905)

10 years agoevp/e_aes_cbc_hmac_sha*.c: improve cache locality.
Andy Polyakov [Thu, 13 Feb 2014 13:39:55 +0000 (14:39 +0100)]
evp/e_aes_cbc_hmac_sha*.c: improve cache locality.

10 years agoghash-x86[_64].pl: ~15% improvement on Atom Silvermont
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).

10 years agoFix warning.
Ben Laurie [Wed, 29 Jan 2014 16:57:32 +0000 (17:57 +0100)]
Fix warning.

10 years agoBuild on MacOS.
Ben Laurie [Sun, 20 Oct 2013 20:54:46 +0000 (21:54 +0100)]
Build on MacOS.

10 years agoReturn previous compression methods when setting them.
Dr. Stephen Henson [Thu, 6 Feb 2014 13:57:26 +0000 (13:57 +0000)]
Return previous compression methods when setting them.

10 years agoOops, get selection logic right.
Dr. Stephen Henson [Wed, 5 Feb 2014 18:55:37 +0000 (18:55 +0000)]
Oops, get selection logic right.

10 years agoFix warnings.
Ben Laurie [Wed, 5 Feb 2014 18:25:06 +0000 (18:25 +0000)]
Fix warnings.

10 years agoDon't break out of the custom extension callback loop - continue instead
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

10 years agoFix whitespace, new-style comments.
Ben Laurie [Tue, 4 Feb 2014 23:16:46 +0000 (23:16 +0000)]
Fix whitespace, new-style comments.

10 years agoRe-add alert variables removed during rebase
Scott Deboy [Tue, 4 Feb 2014 21:08:43 +0000 (13:08 -0800)]
Re-add alert variables removed during rebase
Whitespace fixes

10 years agoUpdating DTCP authorization type to expected value
Scott Deboy [Thu, 7 Nov 2013 09:08:29 +0000 (01:08 -0800)]
Updating DTCP authorization type to expected value

10 years agoUpdate custom TLS extension and supplemental data 'generate' callbacks to support...
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.

10 years agoReturn per-certificate chain if extra chain is NULL.
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

10 years agoe_aes_cbc_hmac_sha[1|256].c: fix compiler warning.
Andy Polyakov [Wed, 5 Feb 2014 15:38:22 +0000 (16:38 +0100)]
e_aes_cbc_hmac_sha[1|256].c: fix compiler warning.

10 years agossl/s3_pkt.c: move multi-block processing to ssl3_write_bytes.
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.

10 years agoevp/e_aes_cbc_hmac_sha*.c: additional CTRL to query buffer requirements.
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.

10 years ago[aesni|sha*]-mb-x86_64.pl: add data prefetching.
Andy Polyakov [Wed, 5 Feb 2014 13:03:35 +0000 (14:03 +0100)]
[aesni|sha*]-mb-x86_64.pl: add data prefetching.

10 years agos3_pkt.c: move ssl3_release_write_buffer to ssl3_write_bytes.
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.

10 years agoAdd quotes as CC can contain spaces.
Dr. Stephen Henson [Mon, 3 Feb 2014 14:10:24 +0000 (14:10 +0000)]
Add quotes as CC can contain spaces.

PR#3253

10 years agoNew ctrl to set current certificate.
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.

10 years agoDemo of use of errors in applications.
Dr. Stephen Henson [Wed, 29 Jan 2014 14:03:05 +0000 (14:03 +0000)]
Demo of use of errors in applications.

10 years agomodes/asm/ghash-s390x.pl: +15% performance improvement on z10.
Andy Polyakov [Sat, 1 Feb 2014 23:09:17 +0000 (00:09 +0100)]
modes/asm/ghash-s390x.pl: +15% performance improvement on z10.

10 years agocrypto/aes/asm/aesni-x86[_64].pl update, up to 14% improvement on
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.

10 years agocrypto/sha/asm/sha1-x86_64.pl update:
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.

10 years agoClarify docs.
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)

10 years agotypo
Dr. Stephen Henson [Tue, 28 Jan 2014 15:35:16 +0000 (15:35 +0000)]
typo

10 years agoCheck i before r[i].
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)

10 years agoFix demo comment: 0.9.9 never released.
Dr. Stephen Henson [Tue, 28 Jan 2014 15:15:26 +0000 (15:15 +0000)]
Fix demo comment: 0.9.9 never released.

10 years agoAdd loaded dynamic ENGINEs to list.
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.

10 years agoNew function to set compression methods so they can be safely freed.
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.

10 years agoCompare encodings in X509_cmp as well as hash.
Dr. Stephen Henson [Sun, 26 Jan 2014 16:28:27 +0000 (16:28 +0000)]
Compare encodings in X509_cmp as well as hash.

10 years agoAdd cert callback retry test.
Dr. Stephen Henson [Sun, 26 Jan 2014 00:51:09 +0000 (00:51 +0000)]
Add cert callback retry test.

10 years agoCertificate callback doc.
Dr. Stephen Henson [Sat, 25 Jan 2014 23:20:34 +0000 (23:20 +0000)]
Certificate callback doc.

10 years agoSupport retries in certificate callback
Dr. Stephen Henson [Sat, 25 Jan 2014 13:31:07 +0000 (13:31 +0000)]
Support retries in certificate callback

10 years agoAdd new function SSL_CTX_get_ssl_method().
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.

10 years agoOmit initial status request callback check.
Kaspar Brand [Thu, 16 Jan 2014 13:46:31 +0000 (13:46 +0000)]
Omit initial status request callback check.

PR#3178

10 years agotypo
Dr. Stephen Henson [Sun, 12 Jan 2014 14:13:48 +0000 (14:13 +0000)]
typo

10 years agoUse rdrand as additional entropy source.
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.

10 years agotypo
Jeff Trawick [Fri, 10 Jan 2014 23:01:30 +0000 (23:01 +0000)]
typo

10 years agotypo
Jeff Trawick [Fri, 10 Jan 2014 23:00:50 +0000 (23:00 +0000)]
typo

10 years agoFix bug in X509_V_FLAG_IGNORE_CRITICAL CRL handling.
Dr. Stephen Henson [Thu, 9 Jan 2014 22:47:22 +0000 (22:47 +0000)]
Fix bug in X509_V_FLAG_IGNORE_CRITICAL CRL handling.

10 years agoupdate remaining documentation to move from EDH to DHE
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"

10 years agoReplace EDH-RSA-DES-CBC-SHA, etc. with DHE-RSA-DES-CBC-SHA
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.

10 years agochange SSL3_CK_EDH_* to SSL_CK_DHE_* (with backward-compatibility)
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.

10 years agodocumentation should use "DHE" instead of "EDH"
Daniel Kahn Gillmor [Thu, 19 Dec 2013 20:23:05 +0000 (15:23 -0500)]
documentation should use "DHE" instead of "EDH"

10 years agouse SSL_kDHE throughout instead of SSL_kEDH
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.

10 years agoemit "DHE" instead of "edh" for kX packet trace output
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.

10 years agoAllow "DHE" and "kDHE" as synonyms of "EDH" and "kEDH" when specifiying ciphers
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.

10 years agouse SSL_kECDHE throughout instead of SSL_kEECDH
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.

10 years agoemit "ECDHE" instead of "EECDH" for kX packet trace output
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.

10 years agoAllow "ECDHE" as a synonym of "EECDH" when specifiying ciphers
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.

10 years agobn/asm/x86_64-mont5.pl: fix compilation error on Solaris.
Andy Polyakov [Thu, 9 Jan 2014 12:44:59 +0000 (13:44 +0100)]
bn/asm/x86_64-mont5.pl: fix compilation error on Solaris.

10 years agoupdate FAQ
Dr. Stephen Henson [Wed, 8 Jan 2014 14:15:58 +0000 (14:15 +0000)]
update FAQ

10 years agoPPC assembly pack: relax 64-bit requirement for little-endian support.
Andy Polyakov [Tue, 7 Jan 2014 21:44:21 +0000 (22:44 +0100)]
PPC assembly pack: relax 64-bit requirement for little-endian support.

10 years agoaes/asm/vpaes-ppc.pl: add little-endian support.
Andy Polyakov [Tue, 7 Jan 2014 15:46:25 +0000 (16:46 +0100)]
aes/asm/vpaes-ppc.pl: add little-endian support.

10 years agoupdate NEWS
Dr. Stephen Henson [Tue, 7 Jan 2014 15:44:35 +0000 (15:44 +0000)]
update NEWS

10 years agoAdd fix for CVE-2013-4353
Dr. Stephen Henson [Tue, 7 Jan 2014 15:37:35 +0000 (15:37 +0000)]
Add fix for CVE-2013-4353
(cherry picked from commit 6b42ed4e7104898f4b5b69337589719913b36404)

10 years agoSync NEWS.
Dr. Stephen Henson [Mon, 6 Jan 2014 21:55:15 +0000 (21:55 +0000)]
Sync NEWS.

10 years agosha/asm/sha256-armv4.pl: add NEON code path.
Andy Polyakov [Sat, 4 Jan 2014 17:04:53 +0000 (18:04 +0100)]
sha/asm/sha256-armv4.pl: add NEON code path.
(and shave off cycle even from integer-only code)

10 years agoaesni-sha1-x86_64.pl: refine Atom-specific optimization.
Andy Polyakov [Sat, 4 Jan 2014 16:11:49 +0000 (17:11 +0100)]
aesni-sha1-x86_64.pl: refine Atom-specific optimization.
(and update performance data, and fix typo)

10 years agoAdd ServerInfoFile to SSL_CONF, update docs.
Dr. Stephen Henson [Fri, 3 Jan 2014 23:13:40 +0000 (23:13 +0000)]
Add ServerInfoFile to SSL_CONF, update docs.

10 years agoUse algorithm specific chains for certificates.
Dr. Stephen Henson [Fri, 3 Jan 2014 22:38:03 +0000 (22:38 +0000)]
Use algorithm specific chains for certificates.

Fix a limitation in SSL_CTX_use_certificate_chain_file(): use algorithm
specific chains instead of the shared chain.

Update docs.

10 years agossl/t1_enc.c: optimize PRF (suggested by Intel).
Andy Polyakov [Fri, 3 Jan 2014 20:52:49 +0000 (21:52 +0100)]
ssl/t1_enc.c: optimize PRF (suggested by Intel).

10 years agoaesni-sha1-x86_64.pl: add stiched decrypt procedure,
Andy Polyakov [Fri, 3 Jan 2014 20:29:57 +0000 (21:29 +0100)]
aesni-sha1-x86_64.pl: add stiched decrypt procedure,
but keep it disabled, too little gain... Add some Atom-specific
optimization.

10 years agoDon't change version number if session established
Dr. Stephen Henson [Tue, 24 Dec 2013 18:17:00 +0000 (18:17 +0000)]
Don't change version number if session established

When sending an invalid version number alert don't change the
version number to the client version if a session is already
established.

Thanks to Marek Majkowski for additional analysis of this issue.

PR#3191

10 years agoUpdate curve list size.
Dr. Stephen Henson [Tue, 24 Dec 2013 18:15:28 +0000 (18:15 +0000)]
Update curve list size.
(cherry picked from commit cfa86987a8d9d2b8cc5e5fea2d3260c46542cdb9)

10 years agosparcv9cap.c: omit random detection.
Andy Polyakov [Sat, 28 Dec 2013 12:31:14 +0000 (13:31 +0100)]
sparcv9cap.c: omit random detection.

PR: 3202

10 years agoFAQ: why SIGILL?
Andy Polyakov [Sat, 28 Dec 2013 12:20:14 +0000 (13:20 +0100)]
FAQ: why SIGILL?

10 years agoARM assembly pack: make it work with older toolchain.
Andy Polyakov [Sat, 28 Dec 2013 11:17:08 +0000 (12:17 +0100)]
ARM assembly pack: make it work with older toolchain.

10 years agoCanonicalise input in CMS_verify.
Dr. Stephen Henson [Sun, 22 Dec 2013 00:35:29 +0000 (00:35 +0000)]
Canonicalise input in CMS_verify.

If content is detached and not binary mode translate the input to
CRLF format. Before this change the input was verified verbatim
which lead to a discrepancy between sign and verify.

10 years agoFix DTLS retransmission from previous session.
Dr. Stephen Henson [Fri, 20 Dec 2013 15:26:50 +0000 (15:26 +0000)]
Fix DTLS retransmission from previous session.

For DTLS we might need to retransmit messages from the previous session
so keep a copy of write context in DTLS retransmission buffers instead
of replacing it after sending CCS. CVE-2013-6450.
(cherry picked from commit 34628967f1e65dc8f34e000f0f5518e21afbfc7b)

10 years agoIgnore NULL parameter in EVP_MD_CTX_destroy.
Dr. Stephen Henson [Fri, 20 Dec 2013 15:12:26 +0000 (15:12 +0000)]
Ignore NULL parameter in EVP_MD_CTX_destroy.
(cherry picked from commit a6c62f0c25a756c263a80ce52afbae888028e986)

10 years agosha1-x86_64.pl: harmonize Win64 SE handlers for SIMD code pathes.
Andy Polyakov [Wed, 18 Dec 2013 21:12:08 +0000 (22:12 +0100)]
sha1-x86_64.pl: harmonize Win64 SE handlers for SIMD code pathes.
(and ensure stack alignment in the process)

10 years agoevp/e_[aes|camellia].c: fix typo in CBC subroutine.
Andy Polyakov [Wed, 18 Dec 2013 20:42:46 +0000 (21:42 +0100)]
evp/e_[aes|camellia].c: fix typo in CBC subroutine.

It worked because it was never called.

10 years agoPPC assembly pack update addendum.
Andy Polyakov [Wed, 18 Dec 2013 20:39:15 +0000 (21:39 +0100)]
PPC assembly pack update addendum.

10 years agosha512.c: fullfull implicit API contract in SHA512_Transform.
Andy Polyakov [Wed, 18 Dec 2013 20:27:35 +0000 (21:27 +0100)]
sha512.c: fullfull implicit API contract in SHA512_Transform.

SHA512_Transform was initially added rather as tribute to tradition
than for practucal reasons. But use was recently found in ssl/s3_cbc.c
and it turned to be problematic on platforms that don't tolerate
misasligned references to memory and lack assembly subroutine.

10 years agoPPC assembly pack: improve AIX support (enable vpaes-ppc).
Andy Polyakov [Wed, 18 Dec 2013 20:19:08 +0000 (21:19 +0100)]
PPC assembly pack: improve AIX support (enable vpaes-ppc).

10 years agoCheck EVP errors for handshake digests.
Dr. Stephen Henson [Sat, 14 Dec 2013 13:55:48 +0000 (13:55 +0000)]
Check EVP errors for handshake digests.

Partial mitigation of PR#3200
(cherry picked from commit 0294b2be5f4c11e60620c0018674ff0e17b14238)

10 years agoUpdate demo.
Dr. Stephen Henson [Wed, 18 Dec 2013 13:28:44 +0000 (13:28 +0000)]
Update demo.

10 years agoAdd opaque ID structure.
Dr. Stephen Henson [Wed, 11 Dec 2013 14:28:57 +0000 (14:28 +0000)]
Add opaque ID structure.

Move the IP, email and host checking fields from the public
X509_VERIFY_PARAM structure into an opaque X509_VERIFY_PARAM_ID
structure. By doing this the structure can be modified in future
without risk of breaking any applications.
(cherry picked from commit adc6bd73e3bd10ce6e76867482e8d137071298d7)

Conflicts:

crypto/x509/x509_vpm.c

10 years agoUpdate to pad extension.
Dr. Stephen Henson [Thu, 12 Dec 2013 03:21:06 +0000 (03:21 +0000)]
Update to pad extension.

Fix padding calculation for different SSL_METHOD types. Use the
standard name as used in draft-agl-tls-padding-02

10 years agoFix for partial chain notification.
Dr. Stephen Henson [Fri, 13 Dec 2013 14:05:32 +0000 (14:05 +0000)]
Fix for partial chain notification.

For consistency with other cases if we are performing
partial chain verification with just one certificate
notify the callback with ok==1.
(cherry picked from commit 852553d9005e13aed7feb986a5d71cb885b994c7)

10 years agoVerify parameter retrieval functions.
Dr. Stephen Henson [Fri, 13 Dec 2013 13:59:53 +0000 (13:59 +0000)]
Verify parameter retrieval functions.

New functions to retrieve internal pointers to X509_VERIFY_PARAM
for SSL_CTX and SSL structures.
(cherry picked from commit be0c9270690ed9c1799900643cab91de146de857)

10 years agoDon't use rdrand engine as default unless explicitly requested.
Dr. Stephen Henson [Wed, 11 Dec 2013 14:45:12 +0000 (14:45 +0000)]
Don't use rdrand engine as default unless explicitly requested.
(cherry picked from commit 16898401bd47a153fbf799127ff57fdcfcbd324f)