diff options
author | Roman Arutyunyan <arut@nginx.com> | 2023-08-01 11:21:59 +0400 |
---|---|---|
committer | Roman Arutyunyan <arut@nginx.com> | 2023-08-01 11:21:59 +0400 |
commit | 842a930b88c6103a793d210826813f09d7fa84a7 (patch) | |
tree | 3a63fe3a36cdfd1d4daaaa2eb53be8d3464fb30c | |
parent | 57f87d61639d7fc0f5df187056ef03fcec3236a8 (diff) | |
download | nginx-842a930b88c6103a793d210826813f09d7fa84a7.tar.gz nginx-842a930b88c6103a793d210826813f09d7fa84a7.zip |
QUIC: fixed PTO expiration condition.
Previously, PTO handler analyzed the first packet in the sent queue for the
timeout expiration. However, the last sent packet should be analyzed instead.
An example is timeout calculation in ngx_quic_set_lost_timer().
-rw-r--r-- | src/event/quic/ngx_event_quic_ack.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/event/quic/ngx_event_quic_ack.c b/src/event/quic/ngx_event_quic_ack.c index e6210653a..04fc66760 100644 --- a/src/event/quic/ngx_event_quic_ack.c +++ b/src/event/quic/ngx_event_quic_ack.c @@ -840,7 +840,7 @@ ngx_quic_pto_handler(ngx_event_t *ev) continue; } - q = ngx_queue_head(&ctx->sent); + q = ngx_queue_last(&ctx->sent); f = ngx_queue_data(q, ngx_quic_frame_t, queue); if (f->pnum <= ctx->largest_ack |