Don't fail the connection in SSLv3 if server selects ECDHE
authorMatt Caswell <matt@openssl.org>
Wed, 12 Apr 2017 16:02:42 +0000 (17:02 +0100)
committerMatt Caswell <matt@openssl.org>
Wed, 21 Jun 2017 10:17:22 +0000 (11:17 +0100)
commitd717edf80ed3494a5a25c0b82ce61e5885de68ac
tree765c14e6ded7f86cbb6f27c1302117047cf36bac
parentfd91e61f522b236d80347f0910f778314fb6ae18
Don't fail the connection in SSLv3 if server selects ECDHE

ECDHE is not properly defined for SSLv3. Commit fe55c4a2 prevented ECDHE
from being selected in that protocol. However, historically, servers do
still select ECDHE anyway so that commit causes interoperability problems.
Clients that previously worked when talking to an SSLv3 server could now
fail.

This commit introduces an exception which enables a client to continue in
SSLv3 if the server selected ECDHE.

(cherry picked from commit 8af91fd9d08487e0dffb6ccac5f42633c964f3f0)

Reviewed-by: Tim Hudson <tjh@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3734)
ssl/ssl_lib.c
ssl/ssl_locl.h
ssl/statem/statem_clnt.c
ssl/t1_lib.c