Don't skip over early_data if we sent an HRR

It is not valid to send early_data after an HRR has been received.

Fixes #6734

Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/6737)
This commit is contained in:
Matt Caswell 2018-07-18 11:16:28 +01:00
parent 1c073b9521
commit 1c1e4160e0

View File

@ -179,7 +179,9 @@ int ossl_statem_skip_early_data(SSL *s)
if (s->ext.early_data != SSL_EARLY_DATA_REJECTED)
return 0;
if (!s->server || s->statem.hand_state != TLS_ST_EARLY_DATA)
if (!s->server
|| s->statem.hand_state != TLS_ST_EARLY_DATA
|| s->hello_retry_request == SSL_HRR_COMPLETE)
return 0;
return 1;