diff options
author | 2020-06-06 01:40:08 +0000 | |
---|---|---|
committer | 2020-06-06 01:40:08 +0000 | |
commit | 095832a3beabe6679cff4c4b7d27ace9e87b0258 (patch) | |
tree | c81f3a50008aad915a5c9ce4a2c6dcb2f18212a7 /lib/libssl/s3_lib.c | |
parent | Implement cpu_rnd_messybits() as a read of the virtual counter xored (diff) | |
download | wireguard-openbsd-095832a3beabe6679cff4c4b7d27ace9e87b0258.tar.xz wireguard-openbsd-095832a3beabe6679cff4c4b7d27ace9e87b0258.zip |
Implement a rolling hash of the ClientHello message, Enforce RFC 8446
section 4.1.2 to ensure subsequent ClientHello messages after a
HelloRetryRequest messages must be unchanged from the initial
ClientHello.
ok tb@ jsing@
Diffstat (limited to 'lib/libssl/s3_lib.c')
-rw-r--r-- | lib/libssl/s3_lib.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/libssl/s3_lib.c b/lib/libssl/s3_lib.c index e2fef725889..c2cf9229739 100644 --- a/lib/libssl/s3_lib.c +++ b/lib/libssl/s3_lib.c @@ -1,4 +1,4 @@ -/* $OpenBSD: s3_lib.c,v 1.195 2020/06/05 18:14:05 jsing Exp $ */ +/* $OpenBSD: s3_lib.c,v 1.196 2020/06/06 01:40:08 beck Exp $ */ /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) * All rights reserved. * @@ -1568,6 +1568,7 @@ ssl3_free(SSL *s) tls13_key_share_free(S3I(s)->hs_tls13.key_share); tls13_secrets_destroy(S3I(s)->hs_tls13.secrets); freezero(S3I(s)->hs_tls13.cookie, S3I(s)->hs_tls13.cookie_len); + tls13_clienthello_hash_clear(&S3I(s)->hs_tls13); sk_X509_NAME_pop_free(S3I(s)->tmp.ca_names, X509_NAME_free); @@ -1612,6 +1613,7 @@ ssl3_clear(SSL *s) freezero(S3I(s)->hs_tls13.cookie, S3I(s)->hs_tls13.cookie_len); S3I(s)->hs_tls13.cookie = NULL; S3I(s)->hs_tls13.cookie_len = 0; + tls13_clienthello_hash_clear(&S3I(s)->hs_tls13); S3I(s)->hs.extensions_seen = 0; |