summaryrefslogtreecommitdiffhomepage
path: root/src/event/quic/ngx_event_quic.h
diff options
context:
space:
mode:
authorRoman Arutyunyan <arut@nginx.com>2021-06-07 10:12:46 +0300
committerRoman Arutyunyan <arut@nginx.com>2021-06-07 10:12:46 +0300
commit64586eaa36f1dbc5e21e9007a372c6fb049a6986 (patch)
tree353897ab7fcf961452dcdae91a4e4aece03665d3 /src/event/quic/ngx_event_quic.h
parentdcdf62549f25f030b6cf518b9adb3d2a84313ea5 (diff)
downloadnginx-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.h1
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;