Releases: litespeedtech/lsquic
Releases · litespeedtech/lsquic
Improve BBR at high BDP
New API to throttle send rate; bug fixes
- [API] Add per-connection send rate throttling.
- [BUGFIX] Fix data corruption in delayed mini-conn packets (#593).
- [BUGFIX] Allow split buffered packet to generate one packet. (This
can happen when DPLPMTUD increases a path's MTU.) (#505). - [BUGFIX] HTTP/3 client GOAWAY frame generation (#343).
- [TUNING] QUIC Interop: add zerortt support.
- Improve logs in the Extensible HTTP/3 Priority (HPI) module.
- Comment cleanup: update QUIC draft references to RFC references.
- Teach http_client to send "priority" header.
- Parallelize unit tests so that they finish faster.
- Include QUIC Interop Runner docker files in the distribution.
Fix MTU probe, no-progress timeout, and others
- [BUGFIX] Fix the no-progress timeout logic (issue #531, PR #574).
The idle timeout and the "user progress" timeout now use different
alarms for cleaner code. - [BUGFIX] Fix MTU probe packets causing stream write stalls (issue #541,
PR #576). MTU probes were incorrectly counted as delayed packets,
preventing streams from becoming writable and causing onwrite callbacks
to never fire. - [BUGFIX] Fix Docker image builds: add missing header includes (PR #558).
- [BUGFIX] Fix Android NDK build: disable address sanitizer (PR #570).
- [BUGFIX] Fix shared library path lookup for TLS library (PR #566).
- [BUGFIX] Remove assert for gQUIC special case (0 data size).
- [IMPROVEMENT] Add LSQUIC_LIBSSL build option to specify which SSL
library to use, skipping auto-detection. Use LIBSSL_LIB instead of
LIBSSL_DIR for searching library files. - [IMPROVEMENT] Align usage of EVP_MD_CTX for OpenSSL/BoringSSL
compatibility (PR #559). Switch from BoringSSL-only EVP_MD_CTX_init/
cleanup to cross-compatible EVP_MD_CTX_new/free. - [IMPROVEMENT] Condition CRYPTO_library_init to BoringSSL only (PR #560).
- [IMPROVEMENT] Fix Docker build: BoringSSL now requires cmake 3.22
(PR #575). - [IMPROVEMENT] Fix CMakeLists.txt: add missing "D" before
LSQUIC_WEBTRANSPORT_SERVER_SUPPORT (PR #567). - Make new SSL library detection code backward compatible with old
-DBORINGSSL_xxxx definitions.
Fix memory leak, tweaks for openssl, use inline functions
- Fix a memory leak in packet processing.
- Refactor macros to inline functions.
- Refactor build system and some crypto APIs to be compatible with OpenSSL.
WebTransport, amplification fix, server preferred address, connection info API
- Add WebTransport support. (#543)
- Fix IETF QUIC IP spoofing amplification attack.
- Improve preferred address migration implementation, pass interop tests.
- Add lsquic_conn_get_info() API to retrieve information about a connection.
Address hash flood attack, post-quantum support
- Address hash flood attack for lsquic_hash by switching to rapidhash with stronger random seed.
- Fix packet packing problem for post-quantum support.
- Add configuration to control version negotiation and amplification factor.
Infinite loop fix, API updates, QUICv2 fix, post-quantum fix
- Update to ls-qpack v2.6.1 to fix a infinite loop.
- Add lsquic_engine_get_conns_count() API
- Updated ea_generate_scid() API
- Fix retry packet SCID generation to follow the engine API.
- Fix QUICv2 header protection key when a retry packet is involved.
Fix busy loop
- Fix a busy loop due to WANT_WRITE flag for a closed stream.
Fix handshake padding, packet split
- Properly pad handshake packet to minimum 1200 bytes.
- Fix a corner case in packet split
Fix bpq_count
- Fix bpq_count (issue #504)