The branch master has been updated via 3f987381929ee725daf4746591144dde18f313e1 (commit) from 0491691342cf8fefb61de14b8edd56a937b458ac (commit)
- Log ----------------------------------------------------------------- commit 3f987381929ee725daf4746591144dde18f313e1 Author: Dmitry Belyavskiy <beld...@gmail.com> Date: Thu May 20 16:03:05 2021 +0200 Cleanup the peer point formats on regotiation Fixes #14875 Reviewed-by: Ben Kaduk <ka...@mit.edu> Reviewed-by: Matt Caswell <m...@openssl.org> (Merged from https://github.com/openssl/openssl/pull/15383) ----------------------------------------------------------------------- Summary of changes: ssl/statem/extensions.c | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/ssl/statem/extensions.c b/ssl/statem/extensions.c index ee047dc638..42d591e11e 100644 --- a/ssl/statem/extensions.c +++ b/ssl/statem/extensions.c @@ -45,6 +45,7 @@ static int tls_parse_certificate_authorities(SSL *s, PACKET *pkt, #ifndef OPENSSL_NO_SRP static int init_srp(SSL *s, unsigned int context); #endif +static int init_ec_point_formats(SSL *s, unsigned int context); static int init_etm(SSL *s, unsigned int context); static int init_ems(SSL *s, unsigned int context); static int final_ems(SSL *s, unsigned int context, int sent); @@ -159,7 +160,7 @@ static const EXTENSION_DEFINITION ext_defs[] = { TLSEXT_TYPE_ec_point_formats, SSL_EXT_CLIENT_HELLO | SSL_EXT_TLS1_2_SERVER_HELLO | SSL_EXT_TLS1_2_AND_BELOW_ONLY, - NULL, tls_parse_ctos_ec_pt_formats, tls_parse_stoc_ec_pt_formats, + init_ec_point_formats, tls_parse_ctos_ec_pt_formats, tls_parse_stoc_ec_pt_formats, tls_construct_stoc_ec_pt_formats, tls_construct_ctos_ec_pt_formats, final_ec_pt_formats }, @@ -1145,6 +1146,15 @@ static int init_srp(SSL *s, unsigned int context) } #endif +static int init_ec_point_formats(SSL *s, unsigned int context) +{ + OPENSSL_free(s->ext.peer_ecpointformats); + s->ext.peer_ecpointformats = NULL; + s->ext.peer_ecpointformats_len = 0; + + return 1; +} + static int init_etm(SSL *s, unsigned int context) { s->ext.use_etm = 0;