Don't set client_version to the ServerHello version.
authorAdam Langley <agl@google.com>
Sat, 13 Dec 2014 20:13:10 +0000 (20:13 +0000)
committerMatt Caswell <matt@openssl.org>
Tue, 16 Dec 2014 14:46:57 +0000 (14:46 +0000)
commit63ef0db60f7b9fc0c2bcabdc7e2bd133784ddd60
tree47a4c1a2bb1bca50a9e15e17a7d763c991b8cac2
parentf74f5c8586b2bd30738f0bd45aec1f9e95d5945f
Don't set client_version to the ServerHello version.

The client_version needs to be preserved for the RSA key exchange.

This change also means that renegotiation will, like TLS, repeat the old
client_version rather than advertise only the final version. (Either way,
version change on renego is not allowed.) This is necessary in TLS to work
around an SChannel bug, but it's not strictly necessary in DTLS.

(From BoringSSL)

Reviewed-by: Emilia Käsper <emilia@openssl.org>
(cherry picked from commit ec1af3c4195c1dfecdd9dc7458850ab1b8b951e0)
ssl/s3_clnt.c