summaryrefslogtreecommitdiffstats
path: root/ssl/quic/quic_impl.c
diff options
context:
space:
mode:
authorMatt Caswell <matt@openssl.org>2023-07-28 16:04:14 +0100
committerHugo Landau <hlandau@openssl.org>2023-08-02 20:27:07 +0100
commitf219abef51fd47fa5945d23bbdc379778e512dc5 (patch)
tree1c2d1d8ded46d5ca540e82e6b219733eddd7ce57 /ssl/quic/quic_impl.c
parent829eec9f86f94ca81de920a1b61e9b636792d3c2 (diff)
Ensure the QUIC TLS SSL object is marked as shutdown
If we shutdown the QUIC connection then we should mark the underlying TLS SSL object as shutdown as well. Otherwise any sessions are considered unusable for resumption. Reviewed-by: Tomas Mraz <tomas@openssl.org> Reviewed-by: Hugo Landau <hlandau@openssl.org> (Merged from https://github.com/openssl/openssl/pull/21591)
Diffstat (limited to 'ssl/quic/quic_impl.c')
-rw-r--r--ssl/quic/quic_impl.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/ssl/quic/quic_impl.c b/ssl/quic/quic_impl.c
index 1e983e3fc0..89475f3889 100644
--- a/ssl/quic/quic_impl.c
+++ b/ssl/quic/quic_impl.c
@@ -1203,6 +1203,8 @@ int ossl_quic_conn_shutdown(SSL *s, uint64_t flags,
ossl_quic_channel_local_close(ctx.qc->ch,
args != NULL ? args->quic_error_code : 0);
+ SSL_set_shutdown(ctx.qc->tls, SSL_SENT_SHUTDOWN);
+
if (ossl_quic_channel_is_terminated(ctx.qc->ch)) {
quic_unlock(ctx.qc);
return 1;