[nginx] QUIC: fixed client request timeout in 0-RTT scenarios.
noreply at nginx.com
noreply at nginx.com
Tue Dec 10 13:18:03 UTC 2024
details: https://github.com/nginx/nginx/commit/930caed3bfc84e43bf4bd034150c17604dc5dc73
branches: master
commit: 930caed3bfc84e43bf4bd034150c17604dc5dc73
user: nandsky <lishu.zy at alibaba-inc.com>
date: Mon, 25 Nov 2024 15:26:29 +0800
description:
QUIC: fixed client request timeout in 0-RTT scenarios.
Since 0-RTT and 1-RTT data exist in the same packet number space,
ngx_quic_discard_ctx incorrectly discards 1-RTT packets when
0-RTT keys are discarded.
The issue was introduced by 58b92177e7c3c50f77f807ab3846ad5c7bbf0ebe.
---
src/event/quic/ngx_event_quic.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/event/quic/ngx_event_quic.c b/src/event/quic/ngx_event_quic.c
index c03b1d003..308597e27 100644
--- a/src/event/quic/ngx_event_quic.c
+++ b/src/event/quic/ngx_event_quic.c
@@ -1029,7 +1029,7 @@ ngx_quic_handle_payload(ngx_connection_t *c, ngx_quic_header_t *pkt)
* After receiving a 1-RTT packet, servers MUST discard
* 0-RTT keys within a short time
*/
- ngx_quic_discard_ctx(c, ssl_encryption_early_data);
+ ngx_quic_keys_discard(qc->keys, ssl_encryption_early_data);
}
if (qc->closing) {
More information about the nginx-devel
mailing list