mirror of
https://git.haproxy.org/git/haproxy.git/
synced 2025-08-07 23:56:57 +02:00
BUG/MINOR: quic: Dysfunctional 01RTT packet number space probing
This bug arrived with this commit: "MINOR: quic: implement qc_notify_send()". The ->tx.pto_probe variable was no more set when qc_processt_timer() the timer task for the connection responsible of detecting packet loss and probing upon PTO expiration leading to interrupted stream transfers. This was revealed by blackhole interop failed tests where one could see that qc_process_timer() was wakeup without traces as follows in the log file: "needs to probe 01RTT packet number space" Must be backported to 2.7 and to 2.6 if the commit mentionned above is backported to 2.6 in the meantime.
This commit is contained in:
parent
c664e644eb
commit
e25fce03eb
@ -5158,7 +5158,10 @@ struct task *qc_process_timer(struct task *task, void *ctx, unsigned int state)
|
||||
|
||||
if (qc->path->in_flight) {
|
||||
pktns = quic_pto_pktns(qc, qc->state >= QUIC_HS_ST_CONFIRMED, NULL);
|
||||
if (!qc_notify_send(qc)) {
|
||||
if (qc_notify_send(qc)) {
|
||||
pktns->tx.pto_probe = QUIC_MAX_NB_PTO_DGRAMS;
|
||||
}
|
||||
else {
|
||||
if (pktns == &qc->pktns[QUIC_TLS_PKTNS_INITIAL]) {
|
||||
if (qc_may_probe_ipktns(qc)) {
|
||||
qc->flags |= QUIC_FL_CONN_RETRANS_NEEDED;
|
||||
|
Loading…
Reference in New Issue
Block a user