summaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
authorRoman Arutyunyan <arut@nginx.com>2020-12-08 17:10:22 +0000
committerRoman Arutyunyan <arut@nginx.com>2020-12-08 17:10:22 +0000
commite5c10dce5ee651d467e6e70952f539cd7bbb7d8f (patch)
treef8b1da13c2f2f2a9303c65976d2d28613daeb1a8 /src
parentfc3f04b11198dc2a352fd6e5c1e5d7cb6c2c957a (diff)
downloadnginx-e5c10dce5ee651d467e6e70952f539cd7bbb7d8f.tar.gz
nginx-e5c10dce5ee651d467e6e70952f539cd7bbb7d8f.tar.bz2
QUIC: resend handshake packets along with initial.
To speed up handshake, resend both initial and handshake packets if there's at least one unacknowledged initial packet.
Diffstat (limited to 'src')
-rw-r--r--src/event/ngx_event_quic.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/event/ngx_event_quic.c b/src/event/ngx_event_quic.c
index 95f92ed21..ace2de749 100644
--- a/src/event/ngx_event_quic.c
+++ b/src/event/ngx_event_quic.c
@@ -3717,6 +3717,11 @@ ngx_quic_handle_crypto_frame(ngx_connection_t *c, ngx_quic_header_t *pkt,
if (!ngx_queue_empty(&ctx->sent)) {
ngx_quic_resend_frames(c, ctx);
+
+ ctx = ngx_quic_get_send_ctx(qc, ssl_encryption_handshake);
+ while (!ngx_queue_empty(&ctx->sent)) {
+ ngx_quic_resend_frames(c, ctx);
+ }
}
}