Floris Bruynooghe 2cc515adbc refactor: split poll_transmit into per-path and per-space parts (#338)
* split up poll_transmit per path and per space

* refactor: return last_packet_number

* cleanup status enums

* refactor: streamline mtu probe building

* refactor: extract remote cid exhaustion handling into function

* refactor: move remote_cid check per path

* refactor: simplify send space check

* fixup

* docs(proto): describe enums

* wip

* friday was too short. make it work, maybe

* Do coalescing right

* tweak comments, logs

* remove redundant size-setting

* fix path scheduling description, add bug description

* fixup path stats

* wording, wording

* weird off path enum variants are no longer needed!

* fix fmt

* Make TransmitBuf in each loop and collate off-path work

This make the construction of the TransmitBuf a little less weird, but
still a bit weird.

* Consistent naming for now

* missing rename

* fix merge

* Pass around a Vec while no transmit has been started yet

* expand on what is meant here, link to new issue

* pointless return

---------

Co-authored-by: dignifiedquire <me@dignifiedquire.com>
Co-authored-by: Diva Martínez <26765164+divagant-martian@users.noreply.github.com>
Co-authored-by: Diva Martínez <git@divma.net>
2026-01-26 15:31:59 +00:00
2025-12-02 12:11:05 +01:00
2026-01-09 07:35:28 +01:00
2025-03-24 15:57:34 +00:00
2020-01-27 10:21:10 -08:00
2025-12-02 13:24:18 +01:00
2025-12-02 12:39:06 +00:00
2025-02-23 11:52:46 +00:00

Iroh Quinn

This is a fork based on quinn, maintained by n0. Currently published to crates.io under iroh-quinn.

Main differences to upstream quinn

  • Small API improvements
  • Implements additional QUIC extensions
    • Multipath
    • QAD
    • QNT
  • Expanded support for QLOG

Quinn is a pure-rust, async-compatible implementation of the IETF [QUIC][quic] transport protocol.

  • Simultaneous client/server operation
  • Ordered and unordered stream reads for improved performance
  • Works on stable Rust, tested on Linux, macOS and Windows
  • Pluggable cryptography, with a standard implementation backed by [rustls][rustls] and [ring][ring]
  • Application-layer datagrams for small, unreliable messages
  • Future-based async API
  • Minimum supported Rust version of 1.83.0

License

Copyright 2025 The quinn developers Copyright 2025 N0, INC.

This project is licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in this project by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

S
Description
noq, a QUIC implementation in Rust
Readme 109 MiB
Languages
Rust 99.3%
Python 0.5%
Shell 0.2%