mirror of
https://github.com/nginx/nginx.git
synced 2025-01-19 18:13:01 +08:00
QUIC: fixed padding of initial packets in case of limited path.
Previously, non-padded initial packet could be sent as a result of the following situation: - initial queue is not empty (so padding to 1200 is required) - handshake queue is not empty (so padding is to be added after h/s packet) - path is limited If serializing handshake packet would violate path limit, such packet was omitted, and the non-padded initial packet was sent. The fix is to avoid sending the packet at all in such case. This follows the original intention introduced in c5155a0cb12f.
This commit is contained in:
parent
5a79f55dab
commit
3b4d10caf6
@ -158,7 +158,14 @@ ngx_quic_create_datagrams(ngx_connection_t *c)
|
||||
? NGX_QUIC_MIN_INITIAL_SIZE - (p - dst) : 0;
|
||||
|
||||
if (min > len) {
|
||||
continue;
|
||||
/* padding can't be applied - avoid sending the packet */
|
||||
|
||||
for (i = 0; i < NGX_QUIC_SEND_CTX_LAST; i++) {
|
||||
ctx = &qc->send_ctx[i];
|
||||
ngx_quic_revert_send(c, ctx, preserved_pnum[i]);
|
||||
}
|
||||
|
||||
return NGX_OK;
|
||||
}
|
||||
|
||||
n = ngx_quic_output_packet(c, ctx, p, len, min);
|
||||
|
Loading…
Reference in New Issue
Block a user