diff options
author | Glenn Strauss <gstrauss@gluelogic.com> | 2021-09-29 09:24:34 -0400 |
---|---|---|
committer | Glenn Strauss <gstrauss@gluelogic.com> | 2021-10-01 06:39:47 -0400 |
commit | b5d41691560540922a615a9b1d3e86f7a0c3a233 (patch) | |
tree | b07f61f0a988f065cc63e1313ea04d66ee228e77 /src | |
parent | 62dc817cafb3f9555d835ce20927538aa73c993a (diff) | |
download | lighttpd-git-b5d41691560540922a615a9b1d3e86f7a0c3a233.tar.gz |
[core] allow up to 32k of data frames per stream
allow up to 32k of data frames per stream per round
(previously limited to single max_frame_size (default 16k))
For 8 streams, 32k*8 is 256k, which is current lighttpd MAX_WRITE_LIMIT,
so each stream still gets a chance to write data (unless write queue
not emptied on previous attempt, reducing add limit this round)
Diffstat (limited to 'src')
-rw-r--r-- | src/connections.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/connections.c b/src/connections.c index 87f22772..12dd030d 100644 --- a/src/connections.c +++ b/src/connections.c @@ -1273,7 +1273,7 @@ connection_state_machine_h2 (request_st * const h2r, connection * const con) & (FDEVENT_STREAM_RESPONSE |FDEVENT_STREAM_RESPONSE_BUFMIN)))) { - uint32_t dlen = (uint32_t)max_bytes; + uint32_t dlen = max_bytes > 32768 ? 32768 : (uint32_t)max_bytes; dlen = h2_send_cqdata(r, con, &r->write_queue, dlen); max_bytes -= (off_t)dlen; |