Commit Graph

737 Commits

Author SHA1 Message Date
Benjamin Saunders 0ba3461a6d Strip down ConnectionEvent to reflect its sole remaining purpose 2023-06-25 12:10:54 -07:00
Benjamin Saunders 8e6401a27a Notify endpoint of drained connections synchronously 2023-06-25 12:10:54 -07:00
Benjamin Saunders 89507692f3 Request CIDs from the endpoint synchronously 2023-06-25 12:10:54 -07:00
Benjamin Saunders c114a0c75d Handle proto endpoint events directly in connection drivers 2023-06-25 12:10:54 -07:00
Benjamin Saunders ded8d62b02 Lift proto::Endpoint out of the endpoint driver mutex
Locking the whole thing is no longer necessary now that Endpoint uses
interior mutability.
2023-06-25 12:10:54 -07:00
dependabot[bot] 790ff720a9 Update rcgen requirement from 0.10.0 to 0.11.1
Updates the requirements on [rcgen](https://github.com/est31/rcgen) to permit the latest version.
- [Changelog](https://github.com/est31/rcgen/blob/master/CHANGELOG.md)
- [Commits](https://github.com/est31/rcgen/compare/v0.10.0...v0.11.1)

---
updated-dependencies:
- dependency-name: rcgen
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-06-19 16:20:46 +02:00
Benjamin Saunders 7914468e27 Merge redundant impl Connecting blocks 2023-06-12 14:12:15 -07:00
Benjamin Saunders 926f927135 Fix panic on redundant finish calls 2023-06-12 14:12:15 -07:00
Jonathan Johnson 98f5fe2a3f Added Endpoint::reject_new_connections (#1585)
This commit adds a new function that refuses new connections without
impacting existing connections. Internally, this just sets the
connection limit to 0, which causes incoming connections to be rejected.
This is the same approach that was taken in 0.8.5 when `Incoming` was
dropped.
2023-06-07 10:15:52 +02:00
Benjamin Saunders c1d412c7aa Bump versions to reflect API breakage 2023-06-03 14:58:29 -07:00
Benjamin Saunders 951761f7e6 Yield endpoint-generated responses directly rather than buffering 2023-06-03 14:58:29 -07:00
Benjamin Saunders 8b67ae483c Move ConnectionHandle into DatagramEvent
Simplifies signatures and prepares for non-connection-related datagram
events.
2023-06-03 14:58:29 -07:00
Dirk Stolle 01e77e0ce6 Fix some typos 2023-05-23 17:29:01 -07:00
Daniel McCarney 4b309cd46b bump quinn, quinn-proto crate versions. 2023-05-11 23:06:29 +02:00
Daniel McCarney 2f72a5b847 deps: remove webpki dependency.
This commit updates the existing Quinn sub-crate dependencies to remove
the explicit `webpki` v0.22 dependency. It's not used by directly
anywhere and can be a transitive dependency through rustls as required.
2023-05-11 23:06:29 +02:00
Benjamin Saunders 044eab53ff Update clap 2023-05-11 14:10:19 +02:00
Dirkjan Ochtman 92ab791486 Upgrade socket2 to 0.5 2023-05-11 04:47:59 +02:00
Benjamin Saunders 092a7686a4 Enable PMTUD by default when appropriate 2023-05-06 08:05:17 +02:00
Benjamin Saunders f79b31babf Bump MSRV to 1.63
More than six months old, and required by time 0.3.20.
2023-04-24 07:58:42 +02:00
link2xt ec7a459174 Bump quinn-udp version to 0.4.0
It includes a fallback for old Linux and Android systems
which do not support setting ECN flag on UDP packets.
2023-04-19 19:50:13 +02:00
Dirkjan Ochtman 297f875065 Duplicate Transmit and EcnCodepoint across -proto and -udp
This removes the dependency from -udp -> -proto, which seems more correct.
2023-04-19 10:59:06 +02:00
Dirkjan Ochtman 3eb26361db quinn: take Arc<dyn Runtime> directly 2023-04-14 16:08:01 -07:00
Dirkjan Ochtman 4fd2df30b0 quinn: warn on unreachable_pub 2023-04-11 10:47:44 +02:00
Dirkjan Ochtman e1674feb92 Warn on clippy's use_self lint 2023-04-05 10:08:26 +02:00
Adolfo Ochagavía 2d48482180 Use PLPMTUD in bench, perf and examples
Sponsored by Stormshield
2023-04-04 17:40:20 -07:00
Adolfo Ochagavía ddc7ee16b5 Implement PLPMTUD
Sponsored by Stormshield
2023-04-04 17:40:20 -07:00
Benjamin Saunders 07b1405bbd Don't rely on sleeping in 0-RTT test
This is unnecessarily racy, at least in principle.
2023-04-03 13:43:50 +02:00
Daniel McCarney 5d1f7bccf2 deps: upgrade rustls v0.20.3 -> v0.21.0.
This commit updates Quinn's dependency on Rustls from v0.20.3 to
v0.21.0.

This release includes a handful of small breaking changes which are
resolved alongside the upgrade.
2023-04-01 12:18:23 -07:00
dignifiedquire 75524fcb0b refactor: do not require &mut self in AsyncUdpSocket::poll_send 2023-03-24 10:16:50 +01:00
Benjamin Saunders 7424372f49 Bump version 2023-03-05 08:52:31 +01:00
Benjamin Saunders 90a99193a9 Borrow self in read_to_end, rather than consuming
Allows `RecvStream::stop` to be called with custom error codes if
`ReadToEndError::TooLong` is encountered.
2023-03-05 08:52:31 +01:00
Floris Bruynooghe dfc1f33886 better wording 2023-02-28 16:40:50 -08:00
Floris Bruynooghe 03f615ab05 Properly fix up example code 2023-02-28 16:40:50 -08:00
Floris Bruynooghe 06e1a1a8c5 Update quinn/src/recv_stream.rs
Co-authored-by: Benjamin Saunders <ben.e.saunders@gmail.com>
2023-02-28 16:40:50 -08:00
Floris Bruynooghe b95e50fb1f Update quinn/src/recv_stream.rs
Co-authored-by: Benjamin Saunders <ben.e.saunders@gmail.com>
2023-02-28 16:40:50 -08:00
Floris Bruynooghe 162032d184 improve description of effect of calling stop 2023-02-28 16:40:50 -08:00
Floris Bruynooghe b833c0e626 Remove EOF terminology completely 2023-02-28 16:40:50 -08:00
Floris Bruynooghe 9f6f6e78e0 Use read_to_end 2023-02-28 16:40:50 -08:00
Floris Bruynooghe 01fa7a4eaa improve wording, correct example 2023-02-28 16:40:50 -08:00
Floris Bruynooghe 69348e54f1 Apply suggestions from code review
Co-authored-by: Benjamin Saunders <ben.e.saunders@gmail.com>
2023-02-28 16:40:50 -08:00
Floris Bruynooghe 88bf165b1f Document how to close a stream correctly
It is not trivial to correctly close a stream without errors and
knowing everything is fully acknowledged.  Describe some details
around this.
2023-02-28 16:40:50 -08:00
Dirkjan Ochtman f7354ef6ac Inline format arguments 2023-02-27 07:34:35 +01:00
Max Inden c17315fa10 docs(quinn): remove restriction to tokio
With https://github.com/quinn-rs/quinn/pull/1364 `quinn` is no longer restricted
to `tokio`. Commit updates the crate heading accordingly.
2023-02-24 10:34:34 -08:00
Benjamin Saunders af4c4caeb2 Fix racy Endpoint::wait_idle 2023-01-08 06:37:22 +01:00
XOR-op c88a6ecd7b reexport whole quinn-udp module 2023-01-07 21:59:19 +01:00
XOR-op 50a474d7ab reexport udp::{RecvMeta, UdpState} for AsyncUdpSocket 2023-01-07 21:59:19 +01:00
Benjamin Saunders 49cdfa553e Route logs via log crate by default when tracing isn't used 2022-12-24 21:37:50 +01:00
Dirkjan Ochtman 2c6aa43610 Apply clippy suggestions from Rust 1.66 2022-12-19 10:13:01 -08:00
StygianLightning 0d366990f1 Removed an obsolete lint control annotation.
The lint issue that made the workaround necessary has been resolved.
2022-12-10 11:07:03 -08:00
StygianLightning b170993bd1 Fixed a typo. 2022-12-10 11:07:03 -08:00