Skip to content

Releases: litespeedtech/lsquic

Client 0-RTT support; bug fixes

13 Oct 16:46
Compare
Choose a tag to compare
  • [FEATURE] IETF Client 0-RTT support.
  • [BUGFIX] Do not schedule MTU probe on first tick.
  • [BUGFIX] Parsing DATAGRAM frame.
  • [BUGFIX] If push promise fails, do not invoke hset destructor.
  • [BUGFIX] Client: When connections are IDed by port number, check DCID. Fixes issue #176.
  • [BUGFIX] Regression introduced in 2.22.0: use correct number of PNSs for IETF mini conn during promotion.
  • Revert the 2.22.1 lsquic_is_valid_hs_packet change. All that was necessary is a change to the way we call it in lsquic_engine. No change to the function itself is required.

Fix function that checks validity of handshake packets

08 Oct 13:18
Compare
Choose a tag to compare
Release 2.12.11

- [BUGFIX] Function that checks validity of handshake packets

Extensible HTTP Priorities and more; bug fixes

07 Oct 15:21
Compare
Choose a tag to compare
  • [FEATURE] Extensible HTTP Priorities (HTTP/3 only).
  • [FEATURE] Add conn context to packet-out memory interface (PR #175).
  • [BUGFIX] gQUIC proof generation: allocate buffer big enough for signature (issue #173).
  • [BUGFIX] Make library thread-safe: drop use of global variables (issue #133, issue #167).
  • [BUGFIX] Deactivate only recent HQ frame, not any HQ frame.
  • [BUGFIX] gQUIC server: associate compressed cert with SSL_CTX, instead of keeping them in a separate hash, potentially leading to mismatches.
  • [BUGFIX] Stream data discard infinite loop: break on FIN.
  • cmake: add install target via -DCMAKE_INSTALL_PREFIX (PR #171).
  • Support randomized packet number to begin a connection.
  • Mini and full IETF connection size optimization.
  • http_client: specify HTTP priorities based on stream conditions.

Fix HQ frame deactivation

06 Oct 21:03
Compare
Choose a tag to compare
Release 2.12.10

- [BUGFIX] Deactivate only *recent* HQ frame, not any HQ frame.

Features: ID-31, connection ID steering, shared library

29 Sep 13:11
Compare
Choose a tag to compare
  • [FEATURE] QUIC and HTTP/3 Internet Draft 31 support.
  • [API] Let user generate Souce Connection IDs.
  • [FEATURE] Allow building lsquic as shared library.
  • [OPTIMIZATION] Receive history: use a single contiguous memory block for everything.
  • Deprecate QUIC versions ID-27 and ID-30.

Fix memory leaks

25 Sep 14:29
Compare
Choose a tag to compare
  • [BUGFIX] Memory leak: free pushed promise when refcnt is zero.
  • [BUGFIX] Memory leak in IETF full conn dtor: cleanup closed IDs sets.

Fix memory leaks

25 Sep 14:11
Compare
Choose a tag to compare
  • [BUGFIX] Memory leak in IETF full conn dtor: cleanup closed IDs sets.
  • [BUGFIX] Memory leak: free pushed promise when refcnt is zero.

Minor bug fix; some refactoring

23 Sep 15:25
Compare
Choose a tag to compare
  • [BUGFIX] Typo in new "validate peer addr by DCID" code. It is a benign bug (works either way), but better to fix it.
  • Simplify Stream Priority Iterator (SPI).
  • Minor documentation updates.

Features: ID-30, datagrams, adaptive CC support; bug fixes

15 Sep 21:35
Compare
Choose a tag to compare
  • [FEATURE] QUIC and HTTP/3 Internet Draft 30 support.
  • [FEATURE] Unreliable Datagram Extension support.
  • [FEATURE] Adaptive congestion controller.
  • [BUGFIX] Do not send MAX_STREAM_DATA frames on crypto streams.
  • [BUGFIX] Fail with CRYPTO_BUFFER_EXCEEDED when too much CRYPTO data comes in.
  • [BUFFIX] Spin bit is now strictly per path; value is reset on DCID change.
  • [BUGFIX] Check that max value of max_streams_uni and max_streams_bidi TPs is 2^60.
  • [BUGFIX] Close IETF mini conn immediately if crypto session cannot be initialized.
  • Deprecate ID-28 (no browser uses it): it's no longer in the default versions list.
  • New programs duck_server and duck_client that implement the experimental siduck-00 protocol. They quack!
  • IETF crypto streams: don't limit ourselves from sending.
  • Command-line programs: turn off QL loss bits if -G is used, as Wireshark cannot decrypt QUIC packets when this extension is used.
  • Turn all h3 framing unit tests back on.
  • Fix malo initialization when compiled in no-pool mode.

Feature: pwritev; bug fixes

08 Sep 18:51
Compare
Choose a tag to compare
  • [FEATURE] Add lsquic_stream_pwritev(). This function allows one to reduce the number of system calls required to read a file from disk by using lsquic_stream_pwritev() together with preadv(2).
  • [BUGFIX] When stream is reset, it is writeable -- let user collect the error.
  • [BUGFIX] Calculate correct conn flow control if reading ends early.
  • [BUGFIX] Remove stream from read and write queues on internal shutdown. This is a regression introduced in 2.19.7.
  • [BUGFIX] Swapped arguments in IETF RESET_FRAME generation.
  • Turn off mini conn history when compiling with Visual Studio; this allows the project to compile on Windows again.
  • http_client: Add -3 flag to stop reading from streams early; code cleanup.
  • Don't use -Werror.