Fix a race condition in ciphers handling
authorMatt Caswell <matt@openssl.org>
Fri, 14 Jun 2019 13:06:55 +0000 (14:06 +0100)
committerMatt Caswell <matt@openssl.org>
Tue, 18 Jun 2019 12:36:25 +0000 (13:36 +0100)
commiteee2a6a718151336534d15a61d8d11209d4dfb1e
tree0ec41e4336d7400c672d6663e751be8522bbb828
parent45436e611b3e11c948ea9f3273df971c9bb4c122
Fix a race condition in ciphers handling

Similarly to the previous commit we were storing the peer offered list
of ciphers in the session. In practice there is no need for this
information to be avilable from one resumption to the next since this
list is specific to a particular handshake. Since the session object is
supposed to be immutable we should not be updating it once we have decided
to resume. The solution is to remove the session list out of the session
object.

Reviewed-by: Tomas Mraz <tmraz@fedoraproject.org>
(Merged from https://github.com/openssl/openssl/pull/9162)
ssl/ssl_lib.c
ssl/ssl_locl.h
ssl/ssl_sess.c
ssl/statem/statem_srvr.c