openssl.git
6 years agoTweak the client side PSK callback
Matt Caswell [Fri, 16 Jun 2017 15:26:25 +0000 (16:26 +0100)]
Tweak the client side PSK callback

Ensure that we properly distinguish between successful return (PSK
provided), successful return (no PSK provided) and failure.

Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3670)

6 years agoAdd documentation for SSL_CTX_set_psk_use_session_callback()
Matt Caswell [Fri, 16 Jun 2017 13:30:10 +0000 (14:30 +0100)]
Add documentation for SSL_CTX_set_psk_use_session_callback()

Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3670)

6 years agoDocument SSL_CIPHER_get_handshake_digest()
Matt Caswell [Wed, 14 Jun 2017 13:27:53 +0000 (14:27 +0100)]
Document SSL_CIPHER_get_handshake_digest()

Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3670)

6 years agoDocument SSL_SESSION_set_protocol_version()
Matt Caswell [Wed, 14 Jun 2017 12:58:29 +0000 (13:58 +0100)]
Document SSL_SESSION_set_protocol_version()

Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3670)

6 years agoDocument SSL_SESSION_set1_master_key()
Matt Caswell [Wed, 14 Jun 2017 09:37:25 +0000 (10:37 +0100)]
Document SSL_SESSION_set1_master_key()

Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3670)

6 years agoAdd documentation for SSL_SESSION_set_cipher()
Matt Caswell [Tue, 13 Jun 2017 14:27:50 +0000 (15:27 +0100)]
Add documentation for SSL_SESSION_set_cipher()

Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3670)

6 years agoFix no-psk
Matt Caswell [Tue, 13 Jun 2017 13:28:45 +0000 (14:28 +0100)]
Fix no-psk

Broken through previous PSK related commits

Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3670)

6 years agoAdd the ability to set a TLSv1.3 PSK via just the key bytes
Matt Caswell [Mon, 12 Jun 2017 18:12:13 +0000 (19:12 +0100)]
Add the ability to set a TLSv1.3 PSK via just the key bytes

Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3670)

6 years agoAdd SSL_SESSION_set_protocol_version()
Matt Caswell [Mon, 12 Jun 2017 18:40:11 +0000 (19:40 +0100)]
Add SSL_SESSION_set_protocol_version()

Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3670)

6 years agoAdd SSL_SESSION_set_cipher()
Matt Caswell [Mon, 12 Jun 2017 18:12:04 +0000 (19:12 +0100)]
Add SSL_SESSION_set_cipher()

Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3670)

6 years agoAdd SSL_SESSION_set1_master_key()
Matt Caswell [Mon, 12 Jun 2017 17:38:30 +0000 (18:38 +0100)]
Add SSL_SESSION_set1_master_key()

Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3670)

6 years agoAdd the ability to use a server side TLSv1.3 external PSK in s_server
Matt Caswell [Mon, 12 Jun 2017 17:26:09 +0000 (18:26 +0100)]
Add the ability to use a server side TLSv1.3 external PSK in s_server

Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3670)

6 years agoAdd the ability to use a client side TLSv1.3 external PSK in s_client
Matt Caswell [Mon, 12 Jun 2017 15:57:06 +0000 (16:57 +0100)]
Add the ability to use a client side TLSv1.3 external PSK in s_client

Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3670)

6 years agoAdd a function to get the handshake digest for an SSL_CIPHER
Matt Caswell [Mon, 12 Jun 2017 15:56:15 +0000 (16:56 +0100)]
Add a function to get the handshake digest for an SSL_CIPHER

Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3670)

6 years agoAdd public API functions for setting TLSv1.3 PSK callbacks
Matt Caswell [Mon, 12 Jun 2017 14:59:00 +0000 (15:59 +0100)]
Add public API functions for setting TLSv1.3 PSK callbacks

Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3670)

6 years agoAdd TLSv1.3 client side external PSK support
Matt Caswell [Mon, 12 Jun 2017 12:30:21 +0000 (13:30 +0100)]
Add TLSv1.3 client side external PSK support

Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3670)

6 years agoAdd TLSv1.3 server side external PSK support
Matt Caswell [Mon, 12 Jun 2017 08:18:24 +0000 (09:18 +0100)]
Add TLSv1.3 server side external PSK support

Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3670)

6 years agoAdd ecstress test
Rich Salz [Fri, 16 Jun 2017 20:55:19 +0000 (16:55 -0400)]
Add ecstress test

Reviewed-by: Andy Polyakov <appro@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3720)

6 years agoAdd sha/asm/keccak1600-c64x.pl
Andy Polyakov [Sat, 17 Jun 2017 18:29:52 +0000 (20:29 +0200)]
Add sha/asm/keccak1600-c64x.pl

[skip ci]

Reviewed-by: Bernd Edlinger <bernd.edlinger@hotmail.de>
(Merged from https://github.com/openssl/openssl/pull/3708)

6 years agoAdd constant-time 64
Rich Salz [Tue, 20 Jun 2017 19:21:21 +0000 (15:21 -0400)]
Add constant-time 64

Standardize comments.

Reviewed-by: Andy Polyakov <appro@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3727)

6 years agoUse EVP_PKEY_X25519, EVP_PKEY_ED25519 instead of NIDs where appropriate.
Dr. Stephen Henson [Tue, 20 Jun 2017 15:32:44 +0000 (16:32 +0100)]
Use EVP_PKEY_X25519, EVP_PKEY_ED25519 instead of NIDs where appropriate.

Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3585)

6 years agoUpdate test config file
Dr. Stephen Henson [Sat, 17 Jun 2017 16:15:11 +0000 (17:15 +0100)]
Update test config file

Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3585)

6 years agoAdd Ed25519 TLS 1.3 and 1.2 tests
Dr. Stephen Henson [Wed, 14 Jun 2017 23:34:20 +0000 (00:34 +0100)]
Add Ed25519 TLS 1.3 and 1.2 tests

Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3585)

6 years agoAdd Ed25519 EE certificates
Dr. Stephen Henson [Wed, 14 Jun 2017 15:37:48 +0000 (16:37 +0100)]
Add Ed25519 EE certificates

Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3585)

6 years agoEd25519 support for mkcert.sh
Dr. Stephen Henson [Wed, 14 Jun 2017 15:37:06 +0000 (16:37 +0100)]
Ed25519 support for mkcert.sh

Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3585)

6 years agoAllow Ed25519 in TLS 1.2
Dr. Stephen Henson [Fri, 16 Jun 2017 17:55:28 +0000 (18:55 +0100)]
Allow Ed25519 in TLS 1.2

Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3585)

6 years agoConvert key exchange to one shot call
Dr. Stephen Henson [Fri, 16 Jun 2017 18:23:47 +0000 (19:23 +0100)]
Convert key exchange to one shot call

Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3585)

6 years agoPrint Ed25519 in s_client/s_server
Dr. Stephen Henson [Wed, 24 May 2017 13:56:17 +0000 (14:56 +0100)]
Print Ed25519 in s_client/s_server

Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3585)

6 years agoAdd Ed25519 to trace output
Dr. Stephen Henson [Wed, 24 May 2017 14:28:40 +0000 (15:28 +0100)]
Add Ed25519 to trace output

Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3585)

6 years agoHandle signature algorithms with no associated digest
Dr. Stephen Henson [Wed, 14 Jun 2017 15:54:08 +0000 (16:54 +0100)]
Handle signature algorithms with no associated digest

Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3585)

6 years agoAdd Ed25519 signature algorithm
Dr. Stephen Henson [Wed, 24 May 2017 20:56:38 +0000 (21:56 +0100)]
Add Ed25519 signature algorithm

Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3585)

6 years agoAdd Ed25519 to signature algorithm table
Dr. Stephen Henson [Wed, 24 May 2017 14:28:26 +0000 (15:28 +0100)]
Add Ed25519 to signature algorithm table

Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3585)

6 years agoAdd index for ED25519
Dr. Stephen Henson [Wed, 24 May 2017 20:54:03 +0000 (21:54 +0100)]
Add index for ED25519

Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3585)

6 years agoUse X509_get_signature_info to get signature strength.
Dr. Stephen Henson [Wed, 24 May 2017 21:01:00 +0000 (22:01 +0100)]
Use X509_get_signature_info to get signature strength.

Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3585)

6 years agoRecognise Ed25519 in X509_certificate_type
Dr. Stephen Henson [Wed, 24 May 2017 20:52:31 +0000 (21:52 +0100)]
Recognise Ed25519 in X509_certificate_type

Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3585)

6 years agoMerge Nokia copyright notice into standard
Rich Salz [Tue, 20 Jun 2017 14:14:36 +0000 (10:14 -0400)]
Merge Nokia copyright notice into standard

This is done with the kind permission of Nokia.

Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3722)

6 years agoReformat progs.pl; add ARIA support
Rich Salz [Tue, 20 Jun 2017 18:28:50 +0000 (14:28 -0400)]
Reformat progs.pl; add ARIA support

Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Paul Dale <paul.dale@oracle.com>
(Merged from https://github.com/openssl/openssl/pull/3726)

6 years agoRemove OSSLzu macros and use %zu in the test framework (via BIO_printf).
Pauli [Tue, 20 Jun 2017 22:39:54 +0000 (08:39 +1000)]
Remove OSSLzu macros and use %zu in the test framework (via BIO_printf).

Convert the debug prints in dtls_mtu_test.c to use the framework.

Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3730)

6 years agoEnsure a space after colon in enc -v
Rich Salz [Tue, 20 Jun 2017 18:14:48 +0000 (14:14 -0400)]
Ensure a space after colon in enc -v

Reviewed-by: Andy Polyakov <appro@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3725)

6 years agoAdd parentheses around macro argument of OSSL_NELEM.
Bernd Edlinger [Sun, 26 Mar 2017 21:29:41 +0000 (23:29 +0200)]
Add parentheses around macro argument of OSSL_NELEM.

Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3039)

6 years agoModify Sun copyright to follow OpenSSL style
Rich Salz [Thu, 15 Jun 2017 14:16:46 +0000 (10:16 -0400)]
Modify Sun copyright to follow OpenSSL style

Approved by Oracle.

Reviewed-by: Bernd Edlinger <bernd.edlinger@hotmail.de>
(Merged from https://github.com/openssl/openssl/pull/3585)

6 years agoDeclare a new x509v3 extension: x509ExtAdmission
FdaSilvaYY [Tue, 20 Jun 2017 13:24:53 +0000 (09:24 -0400)]
Declare a new x509v3 extension: x509ExtAdmission

Reviewed-by: Stephen Henson <steve@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/2759)

6 years agoFix typo (note by oneton@users.github)
Rich Salz [Tue, 20 Jun 2017 02:48:25 +0000 (22:48 -0400)]
Fix typo (note by oneton@users.github)

Reviewed-by: Tim Hudson <tjh@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3716)

6 years agoAdd RAND_UNIMPLEMENTED error code
Rich Salz [Mon, 19 Jun 2017 16:58:06 +0000 (12:58 -0400)]
Add RAND_UNIMPLEMENTED error code

See old GitHub PR 38.

Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3714)

6 years agoMake clear error message if opt_<number> fails
Paul Yang [Mon, 19 Jun 2017 17:28:37 +0000 (01:28 +0800)]
Make clear error message if opt_<number> fails

for opt_long(opt_int)/opt_ulong/opt_imax/opt_umax

Reviewed-by: Andy Polyakov <appro@openssl.org>
Reviewed-by: Richard Levitte <levitte@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3653)

6 years agoAddress style issues.
Pauli [Mon, 19 Jun 2017 21:58:51 +0000 (07:58 +1000)]
Address style issues.
Refactor count -> c which makes the for loop more readable.

Reviewed-by: Tim Hudson <tjh@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3710)

6 years agoAddress double error and OSSLzu comments.
Pauli [Mon, 19 Jun 2017 21:58:14 +0000 (07:58 +1000)]
Address double error and OSSLzu comments.

Reviewed-by: Tim Hudson <tjh@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3710)

6 years agoPut error output back.
Pauli [Mon, 19 Jun 2017 01:49:27 +0000 (11:49 +1000)]
Put error output back.

Reviewed-by: Tim Hudson <tjh@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3710)

6 years agoUpdate tests to avoid printf to stdout/stderr when running as test cases.
Pauli [Mon, 19 Jun 2017 01:21:22 +0000 (11:21 +1000)]
Update tests to avoid printf to stdout/stderr when running as test cases.

Reviewed-by: Tim Hudson <tjh@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3710)

6 years agoRemove bsd_cryptodev engine
Rich Salz [Tue, 13 Jun 2017 20:33:33 +0000 (16:33 -0400)]
Remove bsd_cryptodev engine

Reviewed-by: Richard Levitte <levitte@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3699)

6 years agoFix the fall-out in 04-test_bioprint.t
Bernd Edlinger [Mon, 19 Jun 2017 11:33:41 +0000 (13:33 +0200)]
Fix the fall-out in 04-test_bioprint.t

Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3712)

6 years agoFix the error handling in ERR_get_state:
Bernd Edlinger [Mon, 19 Jun 2017 09:18:44 +0000 (11:18 +0200)]
Fix the error handling in ERR_get_state:
- Ignoring the return code of ossl_init_thread_start created a memory leak.

Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3712)

6 years agoFix preprocessor indentation.
Pauli [Mon, 19 Jun 2017 01:35:25 +0000 (11:35 +1000)]
Fix preprocessor indentation.
Rework main() to be in the style of the other conditional tests.

Reviewed-by: Tim Hudson <tjh@openssl.org>
Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3711)

6 years agos_client accepts host/port as positional argument.
Cory Benfield [Sun, 5 Jun 2016 03:46:38 +0000 (20:46 -0700)]
s_client accepts host/port as positional argument.

This allows the user to provide the target host and optional port to
openssl s_client as an optional positional argument, rather than as the
argument to the -connect flag. This rationalises the user experience of
s_client: given that the only logical purpose of s_client is to connect
to a host, it is difficult to understand why there is an (effectively
mandatory) command option to pass to make that happen.

This patch forbids providing *both* -connect and the positional
argument, because it would likely be too difficult to reconcile.
Otherwise, using the positional argument behaves exactly the same as
using -connect does.

Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/1171)

6 years agoRemove non-accurate description in Configure script
Paul Yang [Sat, 17 Jun 2017 14:17:44 +0000 (22:17 +0800)]
Remove non-accurate description in Configure script

For DES and 3DES based ciphers are also enabled by this option.

Reviewed-by: Andy Polyakov <appro@openssl.org>
Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3707)

6 years agoFix va_list processing in test_note()
Richard Levitte [Sat, 17 Jun 2017 07:54:54 +0000 (09:54 +0200)]
Fix va_list processing in test_note()

Reviewed-by: Andy Polyakov <appro@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3704)

6 years agoRemove a pointless "#if 0" block from BN_mul.
Bernd Edlinger [Wed, 14 Jun 2017 19:54:15 +0000 (21:54 +0200)]
Remove a pointless "#if 0" block from BN_mul.

Reviewed-by: Andy Polyakov <appro@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3683)

6 years agoReorder Configure output
Richard Levitte [Mon, 3 Oct 2016 15:39:11 +0000 (17:39 +0200)]
Reorder Configure output

"Configuring..." was displayed with './Configure LIST'.  This reorders
the display of that line to happen after the "targets" LIST, TABLE and
HASH have been checked.

Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3702)

6 years agoForbid to specify -nextprotoneg if -tls1_3 is enabled
Paul Yang [Fri, 16 Jun 2017 10:12:02 +0000 (18:12 +0800)]
Forbid to specify -nextprotoneg if -tls1_3 is enabled

This applies both to s_client and s_server app.

Reaction to Issue #3665.

Signed-off-by: Paul Yang <paulyang.inf@gmail.com>
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3697)

6 years agoModify type of variable in OPENSSL_cpuid_setup function
komainu8 [Sun, 11 Jun 2017 13:38:05 +0000 (22:38 +0900)]
Modify type of variable in OPENSSL_cpuid_setup function

CLA: trivial

Reviewed-by: Kurt Roeckx <kurt@roeckx.be>
Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3651)

6 years agoAdd output routines to allow consistent formatting of memory, strings
Pauli [Mon, 12 Jun 2017 00:01:17 +0000 (10:01 +1000)]
Add output routines to allow consistent formatting of memory, strings
and bignums.  These have been refactored into their own file, along with
their error displays.  The formatting follows the output format used
on error, except that bignums of sixty four bits or less are displayed
in a more compact one line form.

Added a TEST_note function for producing output without file and line
information.

Update the three tests that call BN_print so they use the new test
infrastructure instead.

Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3655)

6 years agoAdd a missing break in test/shlibloadtest.c
Bernd Edlinger [Fri, 16 Jun 2017 20:10:11 +0000 (16:10 -0400)]
Add a missing break in test/shlibloadtest.c

Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3661)

6 years agoFix the comment about default OPENSSLDIR in windows.
Bernd Edlinger [Sun, 11 Jun 2017 11:10:15 +0000 (13:10 +0200)]
Fix the comment about default OPENSSLDIR in windows.

Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3650)

6 years agoTweak the check that a ciphersuite has not changed since the HRR
Matt Caswell [Fri, 16 Jun 2017 09:56:40 +0000 (10:56 +0100)]
Tweak the check that a ciphersuite has not changed since the HRR

Reviewed-by: Ben Kaduk <kaduk@mit.edu>
(Merged from https://github.com/openssl/openssl/pull/3623)

6 years agoAdd comments to test_ciphersuite_change()
Matt Caswell [Thu, 15 Jun 2017 12:44:24 +0000 (13:44 +0100)]
Add comments to test_ciphersuite_change()

Make it clear that we are pausing one of the connections and then
restarting it again.

Reviewed-by: Ben Kaduk <kaduk@mit.edu>
(Merged from https://github.com/openssl/openssl/pull/3623)

6 years agoFix an uninitialised variable warning
Matt Caswell [Mon, 12 Jun 2017 12:57:13 +0000 (13:57 +0100)]
Fix an uninitialised variable warning

Reviewed-by: Ben Kaduk <kaduk@mit.edu>
(Merged from https://github.com/openssl/openssl/pull/3623)

6 years agoMove ciphersuite selection before session resumption in TLSv1.3
Matt Caswell [Tue, 6 Jun 2017 16:19:32 +0000 (17:19 +0100)]
Move ciphersuite selection before session resumption in TLSv1.3

This does things as per the recommendation in the TLSv1.3 spec. It also
means that the server will always choose its preferred ciphersuite.
Previously the server would only select ciphersuites compatible with the
session.

Reviewed-by: Ben Kaduk <kaduk@mit.edu>
(Merged from https://github.com/openssl/openssl/pull/3623)

6 years agoAdd a test for a server changing the ciphersuite
Matt Caswell [Fri, 2 Jun 2017 12:10:50 +0000 (13:10 +0100)]
Add a test for a server changing the ciphersuite

Test that if a server selects a differenct ciphersuite with the same hash
in TLSv1.3 then this is accepted by the client.

Reviewed-by: Ben Kaduk <kaduk@mit.edu>
(Merged from https://github.com/openssl/openssl/pull/3623)

6 years agoAllow the server to change the ciphersuite on resume
Matt Caswell [Fri, 26 May 2017 16:59:34 +0000 (17:59 +0100)]
Allow the server to change the ciphersuite on resume

Reviewed-by: Ben Kaduk <kaduk@mit.edu>
(Merged from https://github.com/openssl/openssl/pull/3623)

6 years agoAdd the target 'build_all_generated'
Richard Levitte [Fri, 16 Jun 2017 01:46:41 +0000 (03:46 +0200)]
Add the target 'build_all_generated'

This new target is used to build all generated files and only that.
This can be used to prepare everything that requires things like perl
for a system that lacks perl and then move everything to that system
and do the rest of the build there.

Reviewed-by: Tim Hudson <tjh@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3695)

6 years agoFix no-ec
Benjamin Kaduk [Thu, 15 Jun 2017 21:01:04 +0000 (17:01 -0400)]
Fix no-ec

Also remove nested OPENSSL_NO_EC conditional; it was properly indented,
but a no-op.

Reviewed-by: Rich Salz <rsalz@openssl.org>
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
(Merged from https://github.com/openssl/openssl/pull/3693)

6 years agoAdd apps/progs.h to gitignore
Todd Short [Thu, 15 Jun 2017 19:24:19 +0000 (15:24 -0400)]
Add apps/progs.h to gitignore

Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3692)

6 years agoAdd sha/asm/keccak1600-armv8.pl.
Andy Polyakov [Wed, 14 Jun 2017 11:35:17 +0000 (13:35 +0200)]
Add sha/asm/keccak1600-armv8.pl.

Reviewed-by: Rich Salz <rsalz@openssl.org>
6 years agoStandardize Levitte's dual-license
Rich Salz [Thu, 15 Jun 2017 17:15:26 +0000 (13:15 -0400)]
Standardize Levitte's dual-license

Reviewed-by: Richard Levitte <levitte@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3689)

6 years agoBuild apps/progs.h dynamically
Richard Levitte [Thu, 15 Jun 2017 17:31:01 +0000 (19:31 +0200)]
Build apps/progs.h dynamically

Because apps/progs.h isn't configuration agnostic, it's not at all
suited for 'make update' or being versioned, so change it to be
dynamically generated.

Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3688)

6 years agoMove bn and evp test programs input data to their respective data dir
Richard Levitte [Tue, 16 May 2017 06:57:33 +0000 (08:57 +0200)]
Move bn and evp test programs input data to their respective data dir

Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3472)

6 years ago.travis.yml: Detect if 'make update' updated something
Richard Levitte [Thu, 15 Jun 2017 14:52:18 +0000 (16:52 +0200)]
.travis.yml: Detect if 'make update' updated something

If it did, it really is something that should be checked in, and should
therefore make a CI build fail.

Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3686)

6 years agoCorrect Oracle copyrights & clarify.
Pauli [Thu, 15 Jun 2017 03:34:28 +0000 (13:34 +1000)]
Correct Oracle copyrights & clarify.

Reviewed-by: Tim Hudson <tjh@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3684)

6 years agoRemove OLD_STR_TO_KEY compile option
Rich Salz [Wed, 14 Jun 2017 16:05:25 +0000 (12:05 -0400)]
Remove OLD_STR_TO_KEY compile option

This flag was added in 1992 and only documented in the CHANGES file.

Reviewed-by: Andy Polyakov <appro@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3681)

6 years agoFix possible crash in X931 code.
Bernd Edlinger [Tue, 13 Jun 2017 20:34:30 +0000 (22:34 +0200)]
Fix possible crash in X931 code.

Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3675)

6 years agoFix another possible crash in rsa_ossl_mod_exp.
Bernd Edlinger [Tue, 13 Jun 2017 20:08:03 +0000 (22:08 +0200)]
Fix another possible crash in rsa_ossl_mod_exp.

Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3675)

6 years agoFix a possible crash in dsa_builtin_paramgen2.
Bernd Edlinger [Tue, 13 Jun 2017 19:22:45 +0000 (21:22 +0200)]
Fix a possible crash in dsa_builtin_paramgen2.

Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3675)

6 years agoFix crash in ecdh_simple_compute_key.
Bernd Edlinger [Tue, 13 Jun 2017 16:08:40 +0000 (18:08 +0200)]
Fix crash in ecdh_simple_compute_key.

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3671)

6 years agoFix a possible crash in the error handling.
Bernd Edlinger [Tue, 13 Jun 2017 17:00:35 +0000 (19:00 +0200)]
Fix a possible crash in the error handling.

Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3672)

6 years agoUpdate copyright on progs.h
Rich Salz [Tue, 13 Jun 2017 12:51:13 +0000 (08:51 -0400)]
Update copyright on progs.h

The generating script got updated, but the generated file did not.

Reviewed-by: Ben Kaduk <kaduk@mit.edu>
(Merged from https://github.com/openssl/openssl/pull/3668)

6 years agoFix a memleak in ec_copy_parameters.
Bernd Edlinger [Tue, 13 Jun 2017 05:22:50 +0000 (07:22 +0200)]
Fix a memleak in ec_copy_parameters.

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3666)

6 years agoperlasm/ppc-xlate.pl: add PowerISA 3.0B instructions.
Andy Polyakov [Fri, 9 Jun 2017 20:07:38 +0000 (22:07 +0200)]
perlasm/ppc-xlate.pl: add PowerISA 3.0B instructions.

[As well as few extra instructions from earlier spec.]

Reviewed-by: Rich Salz <rsalz@openssl.org>
6 years agoMake SNI behavior more clear in s_client doc & help
Paul Yang [Tue, 13 Jun 2017 12:18:55 +0000 (20:18 +0800)]
Make SNI behavior more clear in s_client doc & help

Update s_client -help and pod file.

Signed-off-by: Paul Yang <paulyang.inf@gmail.com>
Reviewed-by: Andy Polyakov <appro@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3654)

6 years agoRework writing crypto/err/openssl.txt
Richard Levitte [Mon, 12 Jun 2017 22:32:05 +0000 (00:32 +0200)]
Rework writing crypto/err/openssl.txt

Reading the prologue of this file conserved the "# Function codes"
line, and then duplicated it when rewriting this file, adding a new
"# Function codes" line everytime there's an update.

Better then to skip over all comment lines and have the prologue
defined in mkerr.pl, just the same as we do with the other affected
files.

Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3664)

6 years agoAdd -module option to util/mkerr.pl
Richard Levitte [Mon, 12 Jun 2017 18:06:56 +0000 (20:06 +0200)]
Add -module option to util/mkerr.pl

Sometimes, one might only want to rework a subset of all the internal
error codes.  -module allows the caller to specify exactly which
library modules to rewrite.

Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3662)

6 years agoClean up a bundle of codingstyle stuff in apps directory
Paul Yang [Mon, 12 Jun 2017 17:24:02 +0000 (01:24 +0800)]
Clean up a bundle of codingstyle stuff in apps directory

Mostly braces and NULL pointer check and also copyright year bump

Signed-off-by: Paul Yang <paulyang.inf@gmail.com>
Reviewed-by: Kurt Roeckx <kurt@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3657)

6 years agoFix a memleak in tls13_generate_secret.
Bernd Edlinger [Mon, 12 Jun 2017 17:30:10 +0000 (19:30 +0200)]
Fix a memleak in tls13_generate_secret.

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3660)

6 years agoPut message strings in state files
Rich Salz [Wed, 7 Jun 2017 20:29:15 +0000 (16:29 -0400)]
Put message strings in state files

Add "*" as indicator meaning the function/reason is removed, so put an
empty string in the function/reason string table; this preserves backward
compatibility by keeping the #define's.

In state files, trailing backslash means text is on the next line.

Add copyright to state files

Reviewed-by: Richard Levitte <levitte@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3640)

6 years agoFix memleak in EVP_DigestSignFinal/VerifyFinal.
Bernd Edlinger [Mon, 12 Jun 2017 16:05:19 +0000 (18:05 +0200)]
Fix memleak in EVP_DigestSignFinal/VerifyFinal.

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3658)

6 years agoRefactor functions in testdsa.h
Paul Yang [Mon, 12 Jun 2017 02:38:15 +0000 (10:38 +0800)]
Refactor functions in testdsa.h

To reduce duplicate code

Signed-off-by: Paul Yang <paulyang.inf@gmail.com>
Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3656)

6 years agoAdd sslapitest for SSL_early_get1_extensions_present()
Benjamin Kaduk [Fri, 17 Mar 2017 14:39:01 +0000 (09:39 -0500)]
Add sslapitest for SSL_early_get1_extensions_present()

Call it from the early callback used for testing these functions, and verify
the expected contents of the ClientHello

Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/2976)

6 years agoAdd SSL_early_get1_extensions_present()
Benjamin Kaduk [Thu, 16 Mar 2017 22:17:16 +0000 (17:17 -0500)]
Add SSL_early_get1_extensions_present()

It is an API to be used from the early callback that indicates what
extensions were present in the ClientHello, and in what order.
This can be used to eliminate unneeded calls to SSL_early_get0_ext()
(which itself scales linearly in the number of extensions supported
by the library).

Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/2976)

6 years agoTLS 1.3 client sigalgs test no longer needs TLS 1.2
Benjamin Kaduk [Wed, 5 Apr 2017 18:32:18 +0000 (13:32 -0500)]
TLS 1.3 client sigalgs test no longer needs TLS 1.2

Per the TODO comment, we now have proper certificate selection for
TLS 1.3 client certificates, so this test can move into its own
block.  (It cannot merge with the previous block, as it requires EC.)

Verified that the test passes when configured with enable-tls1_3
no-tls1 no-tls1_1 no-tls1_2.

Reviewed-by: Rich Salz <rsalz@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3131)

6 years agodrop some no-longer-relevant TODO(TLS1.3) entries
Benjamin Kaduk [Thu, 23 Mar 2017 16:00:08 +0000 (11:00 -0500)]
drop some no-longer-relevant TODO(TLS1.3) entries

We prevent compression both when the server is parsing the ClientHello
and when the client is constructing the ClientHello.  A 1.3 ServerHello
has no way to hand us back a compression method, and we already check
that the server does not try to give us back a compression method that
we did not request, so these checks seem sufficient.

Weaken the INSTALL note slightly, as we do now expect to interoperate
with other implementations.

Reviewed-by: Rich Salz <rsalz@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3131)

6 years agoRemove leading space-before-tab
Rich Salz [Sun, 11 Jun 2017 21:10:30 +0000 (17:10 -0400)]
Remove leading space-before-tab

Reviewed-by: Kurt Roceckx <kurt@openssl.org>