dignifiedquire
2bbe8e76d9
bump msrv
2024-05-17 16:01:18 +02:00
dignifiedquire
e716cae17b
add wasm build ci
2024-05-17 15:57:33 +02:00
dignifiedquire
cb811bd225
add wasm runtime
2024-05-17 15:53:22 +02:00
dignifiedquire
5f8cc801c6
fix time
2024-05-17 15:38:46 +02:00
dignifiedquire
8e16fe6ceb
quinn-udp and quinn-proto compile
2024-05-17 15:01:11 +02:00
Dirkjan Ochtman
8bd0600089
proto: support creating config wrappers from Arc-wrapped configs
2024-05-14 18:53:52 +02:00
Dirkjan Ochtman
690736cb2f
proto: add rustls constructors with explicit initial
2024-05-14 18:53:52 +02:00
Benjamin Saunders
393b617ef1
Use previous path CID for previous path validation
2024-05-12 20:45:07 -07:00
Benjamin Saunders
e0a15513fc
Store active CID with previous path
2024-05-12 20:45:07 -07:00
Benjamin Saunders
664d341007
Pass destination CID explicitly to PacketBuilder
...
Groundwork for breaking linkability when transmitting off-path.
2024-05-12 20:45:07 -07:00
Benjamin Saunders
aeb520cf36
Remove redundant version argument
2024-05-12 20:45:07 -07:00
Benjamin Saunders
d613895194
Invert condition to reduce rightward drift
2024-05-12 11:13:39 +02:00
Benjamin Saunders
4416e03d93
Remove newly redundant branch
2024-05-12 11:13:39 +02:00
Benjamin Saunders
7db395b1e7
Fold 0-RTT send readiness check into initial branch
2024-05-12 11:13:39 +02:00
Benjamin Saunders
04c049d52c
Fold can_send_1rtt check into initial branch
2024-05-12 11:13:39 +02:00
Benjamin Saunders
b2784e970a
Remove redundant branch
...
When this check fails, indicating that `can_send ==
SendableFrames::empty()`, we return `SendableFrames::empty()` anyway.
2024-05-12 11:13:39 +02:00
Benjamin Saunders
1d73078d79
Test voluntary acks when sending max-size datagrams
2024-05-09 13:51:09 +02:00
Benjamin Saunders
a35ad73f97
Bump version
0.11.1
2024-05-08 23:21:39 +02:00
Benjamin Saunders
50708cf120
Test interaction between large datagram frames and ACKs
2024-05-08 23:21:39 +02:00
Benjamin Saunders
55be92985a
Fix empty packets when segment size is too small for queued data
...
The prior logic could even produce panics if segment size falls below
MIN_PACKET_SPACE.
2024-05-08 23:21:39 +02:00
Benjamin Saunders
d52e7f6cb0
Suppress ACK-only packet sanity-check when datagrams are queued
2024-05-08 23:21:39 +02:00
Benjamin Saunders
f0dff01d4f
Fail GSO truncation test if packets are lost
2024-05-08 20:24:49 +02:00
叶落寒塘
23f9f45228
Fix corruption of trailing packet in truncated GSO batch
2024-05-08 20:24:49 +02:00
Dirkjan Ochtman
1e547588e8
quinn: alphabetize default features
2024-05-07 11:21:24 +02:00
Benjamin Saunders
359c0c7dae
Add ring to default features
...
Required for `Endpoint::{client, server}` and various other helpers
intended to simplify getting started.
2024-05-07 11:21:24 +02:00
Benjamin Saunders
0e9a19665a
Rename UnknownStream to ClosedStream for clarity
0.11.0
2024-05-03 11:52:44 -07:00
Benjamin Saunders
130d956efc
Don't treat UnknownStream as an error in SendStream::stopped
...
UnknownStream here corresponds to graceful stream shutdown, which is
not an error case.
2024-05-03 11:52:44 -07:00
Benjamin Saunders
b42e21e74d
Make SendStream::finish synchronous
...
`await`ing on this was error-prone and not very useful, since it gave
little insight into application state, and was redundant to `stopped`.
2024-05-03 11:52:44 -07:00
Dirkjan Ochtman
f28cb3d8d6
Check compilation without default features in CI
...
Other workspace members enable some features, so check in isolation.
2024-05-03 11:38:05 -07:00
Dirkjan Ochtman
272dd5d45f
quinn: add proper guards to Endpoint constructor helpers
2024-05-03 11:38:05 -07:00
Dirkjan Ochtman
74c035822b
quinn: UdpPoller::new() is only called if a runtime is enabled
2024-05-03 11:38:05 -07:00
Dirkjan Ochtman
faf7dbc051
quinn: require rustls for insecure_connection example
2024-05-03 11:38:05 -07:00
Dirkjan Ochtman
e764fe48ce
proto: remove incorrect feature guard
...
`HashedConnectionIdGenerator::new()` uses the mandatory rand crate to
generate a key by default, not the *ring* crate.
2024-05-03 11:38:05 -07:00
Dirkjan Ochtman
7af5296dc3
proto: guard rustls-specific types
2024-05-03 11:38:05 -07:00
Dirkjan Ochtman
de3f63737b
Apply clippy suggestions from Rust 1.78
2024-05-03 16:11:44 +02:00
Dirkjan Ochtman
5b722706b3
proto: take advantage of rustls::quic::Suite being Copy
2024-05-02 15:39:30 -07:00
Benjamin Saunders
d5fc528930
Truncate GSO when necessary to avoid excessive padding
2024-05-01 09:41:03 -07:00
Benjamin Saunders
003b1d54b5
Don't try to send datagrams that won't fit in a GSO batch
2024-05-01 09:41:03 -07:00
Benjamin Saunders
9d8ee9f068
Factor packet overhead math out of Datagrams::max_size
2024-05-01 09:41:03 -07:00
Benjamin Saunders
ad4919babc
Match GSO segment size to the first datagram, not the MTU
...
Reduces the amount of padding required when sending homogeneously
sized non-fragmentable data like application datagrams.
2024-05-01 09:41:03 -07:00
Benjamin Saunders
bbff686a32
Factor GSO segment size out into a local variable
2024-05-01 09:41:03 -07:00
Benjamin Saunders
fe6989bdf4
Track starting offset of the current datagram explicitly
2024-05-01 09:41:03 -07:00
Benjamin Saunders
8c89b79e15
Delete dead comment
2024-05-01 09:33:38 -07:00
Benjamin Saunders
3089e8739a
Additional trace logs
2024-05-01 09:33:38 -07:00
Benjamin Saunders
ff8609b6d4
Verify that GSO is used for simple large streams
2024-05-01 09:33:38 -07:00
Benjamin Saunders
c76c378aaa
Fix unit test time travel
...
The current system time must only be sampled once to establish the
unit test epoch. Because test time doesn't advance unless told to,
this was causing connections to sometimes receive packets from before
they were created, causing odd warnings and potentially other
unintended behavior.
2024-05-01 09:33:38 -07:00
Benjamin Saunders
7056581575
Fix loss detection timer sometimes lingering after close
2024-05-01 09:33:38 -07:00
Benjamin Saunders
6053163874
Use RAII span guard in PacketBuilder
...
Prevents spans from leaking when packets aren't finished
2024-05-01 09:33:38 -07:00
Benjamin Saunders
7b2351556b
Drop outgoing datagrams forbidden by current MTU
2024-05-01 09:33:38 -07:00
Benjamin Saunders
e4f2629af2
Notify congestion control of MTU reductions
2024-05-01 09:33:38 -07:00