Freeing the QUIC TLS object may make calls back into QUIC so we should
free it first.
Reviewed-by: Hugo Landau <hlandau@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/23256)
(cherry picked from commit
f7f2b665cf91650deb28beb1145ea3eca7df67aa)
}
#endif
+ SSL_free(ctx.qc->tls);
+
ossl_quic_channel_free(ctx.qc->ch);
BIO_free_all(ctx.qc->net_rbio);
BIO_free_all(ctx.qc->net_wbio);
- /* Note: SSL_free calls OPENSSL_free(qc) for us */
-
- SSL_free(ctx.qc->tls);
quic_unlock(ctx.qc); /* tsan doesn't like freeing locked mutexes */
#if defined(OPENSSL_THREADS)
ossl_crypto_mutex_free(&ctx.qc->mutex);
#endif
+
+ /*
+ * Note: SSL_free (that called this function) calls OPENSSL_free(ctx.qc) for
+ * us
+ */
}
/* SSL method init */