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
Dirkjan Ochtman
134ef97bdd
proto: warn on unreachable_pub
...
I have found this makes it easier to see whether changes affect the public
API, which can be hard especially in reviews when context is limited.
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
Adolfo Ochagavía
d3e752c32a
Process all endpoint events in TestEndpoint::drive before returning
...
Sponsored by Stormshield
2023-04-04 17:40:20 -07:00
dependabot[bot]
fdd590fecc
Update hex-literal requirement from 0.3.0 to 0.4.0
...
Updates the requirements on [hex-literal](https://github.com/RustCrypto/utils ) to permit the latest version.
- [Release notes](https://github.com/RustCrypto/utils/releases )
- [Commits](https://github.com/RustCrypto/utils/compare/hex-literal-v0.3.0...hex-literal-v0.4.0 )
---
updated-dependencies:
- dependency-name: hex-literal
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com >
2023-04-03 16:32:58 +02:00
dependabot[bot]
76d4405b20
Update windows-sys requirement from 0.45.0 to 0.48.0
...
Updates the requirements on [windows-sys](https://github.com/microsoft/windows-rs ) to permit the latest version.
- [Release notes](https://github.com/microsoft/windows-rs/releases )
- [Commits](https://github.com/microsoft/windows-rs/compare/0.45.0...0.48.0 )
---
updated-dependencies:
- dependency-name: windows-sys
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com >
2023-04-03 16:31:34 +02: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
b56d60bbec
quinn-proto: bump version 0.9.3 -> 0.10.0.
...
As part of upgrading the quinn-proto rustls dependency we must do
a semver incompatible version bump since rustls is exposed as part of
the public API.
2023-04-01 12:18:23 -07: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
Nathan Mittler
ef20b50608
Bump quinn-proto version
...
Provides API changes needed by https://github.com/quinn-rs/quinn-boring/pull/2 .
2023-03-28 09:32:23 +02:00
dignifiedquire
75524fcb0b
refactor: do not require &mut self in AsyncUdpSocket::poll_send
2023-03-24 10:16:50 +01:00
Nathan Mittler
88897e7122
Support external crypto implementations.
...
These changes are needed for the BoringSSL crypto provider (#1488 ),
which will reside in a separate repository.
2023-03-22 10:39:43 +01:00
Florian Uekermann
93e726980e
Getters for stream concurrency metrics and related documentation
2023-03-21 10:18:31 +01:00
link2xt
11b34a7b26
Fallback to not using ECN if IP_TOS is not supported ( #1516 )
...
On Linux <3.13 sendmsg/sendmmsg system calls
return EINVAL without sending anything if they encounter
an `IP_TOS` cmsg. To ensure we can still send
on such systems, remember if we got an EINVAL error
and switch to "fallback mode" in which we do not try
to transmit ECN at all and only use well-supported features.
2023-03-17 23:15:15 +01:00
Dirkjan Ochtman
d31597f181
Apply suggestions from clippy 1.68
2023-03-15 18:11:11 -07:00
Dirkjan Ochtman
02037e72fa
Switch CI coverage test to use cargo-llvm-cov
2023-03-08 10:26:54 -08:00
Dirkjan Ochtman
25a067bc88
Update maintenance branches in CI config
2023-03-08 10:26:54 -08:00
link2xt
e6f184489e
Implement fallback for sendmmsg and recvmmsg
...
Some Android phones use older 2.x kernels
and do not support `sendmmsg`
which is available only since Linux 3.0.
Similarly, `recvmmsg` is only available
since Linux 2.6.34.
2023-03-08 12:22:14 +01:00
Benjamin Saunders
7424372f49
Bump version
2023-03-05 08:52:31 +01:00