Releases: litespeedtech/lsquic
Releases · litespeedtech/lsquic
Better HTTP/3 standard compliance
- Fix a few issues detected by h3spec for better compliance with HTTP/3 standard.
Bug fixes: push promises, misput HQ frames
- [BUGFIX] Infinite loop in stream: returned HQ frame can be at any point on the list.
- [BUGFIX] Fail push promise immediately if STREAM_NOPUSH is set.
Bug fixes: push promises, misput HQ frames
- [BUGFIX] Infinite loop in stream: returned HQ frame can be at any point on the list.
- [BUGFIX] Fail push promise immediately if STREAM_NOPUSH is set.
Bug fixes, minor improvements
- [BUGFIX] Do not send RESET_STREAM if writing to stream is already finished.
- perf_client: wait for all ACKs before exiting.
- Improve how generated RESET_STREAM is logged.
- Fix compilation in different combos of adv_tick/conn_stats flags.
- Move qpack warning disablement into src/liblsquic/CMakeLists.txt.
Fix gQUIC server handshake regression
- Fix regression in gQUIC server: bug #234.
perf utils; build improvements
- Make it possible to build the library and unit tests without libevent.
- Build all command-line utilities in
bin/
- Add
perf_client
andperf_server
command-line utilities to test performance according to the "perf" protocol.
IETF QUIC v1 and ID-34 support; bug fixes
- [FEATURE] QUIC and HTTP/3 Internet Draft 34 support and v1 support. The latter is turned off by default.
- Drop support for ID-28 and ID-32.
- [BUGFIX] IETF QUIC mini conn receive history (trechist): allow unlimited inserts by dropping smallest elements.
- [BUGFIX] gQUIC: set STTL to correct value, issue #226.
- [BUGFIX] Account for poison packet gap when MTU probe was too large.
New API calls and bug fixes
- [API] lsquic_ssl_sess_to_resume_info() is the new way to get session info.
- [API] Add user pointer to ea_generate_scid callback.
- [API] Add lsquic_dcid_from_packet() -- a fast function to parse out DCID.
- [API] Add es_max_batch_size to control outgoing packet batch size.
- [BUGFIX] Disallow sending of header while promise is being written.
- [BUGFIX] Flush stream when buffered bytes exhaust stream cap.
- [BUGFIX] Deactivate HQ frame if writing push promise fails.
- Perform sanity check on peer transport parameters and fail the handshake if some flow control limits are too low. This can be turned off, see es_check_tp_sanity.
- http_server: fix how requests are read in "hq" mode.
Bug fixes, QUIC Interop Runner support
- [BUGFIX] Replace dispatch read/write events assertion with a check.
- [BUGFIX] gQUIC connection close: there is no HEADERS stream without HTTP flag, see issue #220.
- http_client, http_server: add hq protocol support and other flags for use with QUIC Interop Runner.
- Fix: use IP_PMTUDISC_PROBE (not IP_PMTUDISC_DO) on Linux to set Don't-Fragment flag on outgoing packets.
- Fix send_packets_one_by_one on Windows platform when sending multiple iovs, see issue #218.
- Exit echo_client on Windows immediately, see issue #219.
Bug fixes: receive history, out-of-order assert, et al
- [BUGFIX] Assertion in send controller when path validation fails.
- [BUGFIX] Assertion in BBR when sending out-of-order packets is detected.
- [BUGFIX] Drop overflow receive history ranges when cloning.
- Log correct size of the incoming packet.
- Fix internal stream function.