diff options
| author | Roman Arutyunyan <arut@nginx.com> | 2021-06-07 10:12:46 +0300 |
|---|---|---|
| committer | Roman Arutyunyan <arut@nginx.com> | 2021-06-07 10:12:46 +0300 |
| commit | 64586eaa36f1dbc5e21e9007a372c6fb049a6986 (patch) | |
| tree | 353897ab7fcf961452dcdae91a4e4aece03665d3 /src/event/quic/ngx_event_quic.h | |
| parent | dcdf62549f25f030b6cf518b9adb3d2a84313ea5 (diff) | |
| download | nginx-64586eaa36f1dbc5e21e9007a372c6fb049a6986.tar.gz nginx-64586eaa36f1dbc5e21e9007a372c6fb049a6986.tar.bz2 | |
QUIC: stream flow control refactored.
- Function ngx_quic_control_flow() is introduced. This functions does
both MAX_DATA and MAX_STREAM_DATA flow controls. The function is called
from STREAM and RESET_STREAM frame handlers. Previously, flow control
was only accounted for STREAM. Also, MAX_DATA flow control was not accounted
at all.
- Function ngx_quic_update_flow() is introduced. This function advances flow
control windows and sends MAX_DATA/MAX_STREAM_DATA. The function is called
from RESET_STREAM frame handler, stream cleanup handler and stream recv()
handler.
Diffstat (limited to 'src/event/quic/ngx_event_quic.h')
| -rw-r--r-- | src/event/quic/ngx_event_quic.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/event/quic/ngx_event_quic.h b/src/event/quic/ngx_event_quic.h index 6d4308afa..fe0f7fef3 100644 --- a/src/event/quic/ngx_event_quic.h +++ b/src/event/quic/ngx_event_quic.h @@ -75,6 +75,7 @@ struct ngx_quic_stream_s { uint64_t send_max_data; uint64_t recv_max_data; uint64_t recv_offset; + uint64_t recv_window; uint64_t recv_last; uint64_t final_size; ngx_chain_t *in; |
