diff options
Diffstat (limited to 'src/quic_ssl.c')
-rw-r--r-- | src/quic_ssl.c | 21 |
1 files changed, 2 insertions, 19 deletions
diff --git a/src/quic_ssl.c b/src/quic_ssl.c index 314f587..85b6717 100644 --- a/src/quic_ssl.c +++ b/src/quic_ssl.c @@ -636,29 +636,12 @@ int qc_ssl_provide_all_quic_data(struct quic_conn *qc, struct ssl_sock_ctx *ctx) { int ret = 0; struct quic_enc_level *qel; - struct ncbuf ncbuf = NCBUF_NULL; TRACE_ENTER(QUIC_EV_CONN_PHPKTS, qc); list_for_each_entry(qel, &qc->qel_list, list) { - struct qf_crypto *qf_crypto, *qf_back; + struct quic_cstream *cstream = qel->cstream; - list_for_each_entry_safe(qf_crypto, qf_back, &qel->rx.crypto_frms, list) { - const unsigned char *crypto_data = qf_crypto->data; - size_t crypto_len = qf_crypto->len; - - /* Free this frame asap */ - LIST_DELETE(&qf_crypto->list); - pool_free(pool_head_qf_crypto, qf_crypto); - - if (!qc_ssl_provide_quic_data(&ncbuf, qel->level, ctx, - crypto_data, crypto_len)) - goto leave; - - TRACE_DEVEL("buffered crypto data were provided to TLS stack", - QUIC_EV_CONN_PHPKTS, qc, qel); - } - - if (!qel->cstream) + if (!cstream) continue; if (!qc_treat_rx_crypto_frms(qc, qel, ctx)) |