mirror of
https://github.com/n0-computer/noq.git
synced 2026-10-14 00:30:05 +00:00
fb9190a0b6b07c9d8a39c943f4d290800e34f1a7
Not explicitly shutting down TLS connections caused OpenSSL to omit them from the anti-replay cache, preventing resumption. Additionally, the wrong header type was being used when sending 0-RTT packes.
quicr
quicr is an implementation of the QUIC network protocol undergoing
standardization by the IETF. It is currently suitable for experimental use. The
implementation is split up into the state macine crate quicr-core which performs no IO internally and can be tested
deterministically, and a high-level tokio-compatible API in quicr. See quicr/examples/ for usage.
Features
- Simultaneous client/server operation
- Ordered and unordered reads for improved performance
Status
- QUIC draft 11 with TLS 1.3 draft 28
- Cryptographic handshake
- Stream data w/ flow control and congestion control
- Connection close
- Stateless retry
- Migration
- 0-RTT data
- Session resumption
Building
Because TLS1.3 is a new standard, OpenSSL 1.1.1-pre6 (or later) is required for quicr to build. For compatibility with
most other QUIC implementations as of this writing, it should be patched with openssl-tls-28.patch in this repository.
Description
Languages
Rust
99.3%
Python
0.5%
Shell
0.2%