MINOR: quic: Add useful error traces about qc_ssl_sess_init() failures

There were no traces to diagnose qc_ssl_sess_init() failures from QUIC traces.
This patch add calls to TRACE_DEVEL() into qc_ssl_sess_init() and its caller
(qc_alloc_ssl_sock_ctx()). This was useful at least to diagnose SSL context
initialization failures when porting QUIC to the new OpenSSL 3.5 QUIC API.

Should be easily backported as far as 2.6.
This commit is contained in:
Frederic Lecaille 2025-05-15 10:18:09 +02:00
parent d96368b1a4
commit f0c833f334

View File

@ -878,7 +878,7 @@ static int qc_ssl_sess_init(struct quic_conn *qc, SSL_CTX *ssl_ctx, SSL **ssl)
*ssl = SSL_new(ssl_ctx);
if (!*ssl) {
if (!retry--)
goto leave;
goto err;
pool_gc(NULL);
goto retry;
@ -889,7 +889,7 @@ static int qc_ssl_sess_init(struct quic_conn *qc, SSL_CTX *ssl_ctx, SSL **ssl)
SSL_free(*ssl);
*ssl = NULL;
if (!retry--)
goto leave;
goto err;
pool_gc(NULL);
goto retry;
@ -899,6 +899,9 @@ static int qc_ssl_sess_init(struct quic_conn *qc, SSL_CTX *ssl_ctx, SSL **ssl)
leave:
TRACE_LEAVE(QUIC_EV_CONN_NEW, qc);
return ret;
err:
TRACE_DEVEL("leaving on error", QUIC_EV_CONN_NEW, qc);
goto leave;
}
#ifdef HAVE_SSL_0RTT_QUIC
@ -996,6 +999,7 @@ int qc_alloc_ssl_sock_ctx(struct quic_conn *qc)
return !ret;
err:
TRACE_DEVEL("leaving on error", QUIC_EV_CONN_NEW, qc);
pool_free(pool_head_quic_ssl_sock_ctx, ctx);
goto leave;
}