Commit Graph

3262 Commits

Author SHA1 Message Date
Benjamin Saunders c1d412c7aa Bump versions to reflect API breakage 2023-06-03 14:58:29 -07:00
Benjamin Saunders b73ed0b73a Rename issue_cids to issue_first_cids to better reflect its role 2023-06-03 14:58:29 -07:00
Benjamin Saunders 6d2d9fda4c Allocate persistent connection IDs immediately when generated
Guards against future bugs where multiple (e.g. concurrent) calls to
`new_cid` might otherwise lead to an undetected collision.
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
Benjamin Saunders 97ccc4f611 Factor connection lookup out into a dedicated struct 2023-06-03 14:58:29 -07:00
Benjamin Saunders 85d9a5c6c9 Remove redundant/obsolete Endpoint::reject_new_connections
This was previously used by the `quinn` layer to stop accepting
connections when the `Incoming` stream was dropped. That stream has
since been replaced by an async function. Users who still want this
can use set_server_config directly.
2023-06-03 14:58:29 -07:00
Benjamin Saunders 1373443ad0 Fix invalid CIDs being ignored when using zero-length CIDs 2023-06-03 14:58:29 -07:00
Benjamin Saunders 23ad201255 Fix obsolete debug struct name 2023-06-03 14:58:29 -07:00
Benjamin Saunders fb91cf4706 Reduce ConnectionId copying 2023-06-03 14:58:29 -07:00
Dirk Stolle a604759336 Replace unmaintained actions-rs/* actions in CI workflows
Basically all of the `actions-rs/*` actions are unmaintained. See
<https://github.com/actions-rs/toolchain/issues/216> for more
information. Due to their age they generate several warnings in
CI runs.

To get rid of those warnings the occurrences of
`actions-rs/toolchain` are replaced by `dtolnay/rust-toolchain`,
and the occurrences of `actions-rs/cargo` are replaced by direct
invocations of `cargo`.
2023-06-02 14:35:20 -07:00
Dirk Stolle c3aef84315 Extend Dependabot configuration to keep GitHub Actions up to date 2023-06-02 22:59:53 +02:00
Alexandre Seo 33e3f1603b Use fullchain.pem in the certbot example 2023-05-27 10:50:45 -07:00
Samuel Moelius ede43442f2 Allow compilation with --cfg fuzzing but not --features=arbitrary 2023-05-27 07:57:21 +02:00
Dirk Stolle 0c6b743f18 Update actions/checkout in GitHub Actions workflows to v3 2023-05-23 17:29:52 -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. 0.10.1 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
ljedrz c0b9d4233e docs: update the MSRV in the README
Signed-off-by: ljedrz <ljedrz@gmail.com>
2023-05-11 14:49:44 +02:00
Benjamin Saunders 044eab53ff Update clap 2023-05-11 14:10:19 +02:00
Dirkjan Ochtman a66ee19797 Only check libraries against MSRV 0.10.0 2023-05-11 04:47:59 +02:00
Dirkjan Ochtman 1dd88e6883 Update remaining crates to 2021 2023-05-11 04:47:59 +02:00
Dirkjan Ochtman 92ab791486 Upgrade socket2 to 0.5 2023-05-11 04:47:59 +02:00
Dirkjan Ochtman 9e26ea98bd Fix visibility warnings on non-Unix platforms 2023-05-11 04:47:59 +02:00
dignifiedquire 7d006c0d58 switch to Bytes to allow cheap cloning 2023-05-09 17:15:40 +02:00
dignifiedquire d08ad01e40 perf: specialize slice extension in Datagram::encode 2023-05-09 17:15:40 +02:00
dignifiedquire 89b527c9a1 feat: use BytesMut for Transmit content 2023-05-09 17:15:40 +02:00
Maksim Vykhota 37e7b742cb Fail FreeBSD CI if any step fails 2023-05-06 11:29:28 -07:00
Maksim Vykhota aeda2e2146 Fix build and tests on FreeBSD 2023-05-06 11:06:43 -07:00
Benjamin Saunders a55fd51c95 Delete redundant set_socket_option 2023-05-06 08:05:17 +02:00
Benjamin Saunders 092a7686a4 Enable PMTUD by default when appropriate 2023-05-06 08:05:17 +02:00
Benjamin Saunders f4384e6edb udp: expose whether IP_DONTFRAG semantics apply 2023-05-06 08:05:17 +02:00
Benjamin Saunders 23b1416a01 udp: improve fragmentation suppression on *nix 2023-05-06 08:05:17 +02:00
Benjamin Saunders f6c1bb3b93 Add missing exports of stats types 2023-05-04 10:26:24 +02:00
Benjamin Saunders 99e462f8c8 Rename min_guaranteed_mtu to min_mtu for clarity 2023-05-03 12:30:50 +02:00
Adolfo Ochagavía 030a0e8d72 Use mtu instead of max_udp_payload_size in names
Sponsored by Stormshield
2023-05-03 09:29:12 +02:00
Adolfo Ochagavía 7e495e2909 Make max_guaranteed_udp_payload_size user-configurable
Sponsored by Stormshield
2023-05-03 09:29:12 +02:00
Adolfo Ochagavía bef7198e96 Notify congestion controllers of MTU updates
Sponsored by Stormshield
2023-05-03 09:29:12 +02:00
Adolfo Ochagavía f02dfc2f26 Detect black holes based on loss bursts for robustness
Sponsored by Stormshield
2023-05-03 09:29:12 +02:00
Adolfo Ochagavía bbc13413b2 Use 65527 instead of 1480 as default max_udp_payload_size
Sponsored by Stormshield
2023-05-03 09:29:12 +02:00
Adolfo Ochagavía 74d3689962 Fix no-protection option in perf crate
Sponsored by Stormshield
2023-04-26 13:18:42 -07: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 aaa58fc501 udp: avoid warning about unused set_sendmsg_einval() method 2023-04-19 10:59:06 +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
Benjamin Saunders bffa86dcfb Remove unnecessary pubs from quinn-udp fallback logic 2023-04-14 07:24:25 +02:00
Dirkjan Ochtman 1cd3343b73 Fix use_self suggestions for MTU discovery additions 2023-04-11 10:47:44 +02:00
Dirkjan Ochtman eab8728f05 udp: warn on unreachable_pub 2023-04-11 10:47:44 +02:00
Dirkjan Ochtman 4fd2df30b0 quinn: warn on unreachable_pub 2023-04-11 10:47:44 +02:00