Dirkjan Ochtman
b1997b02b7
Rename EndpointBuilder::from_socket() to with_socket()
2019-04-16 17:55:13 -07:00
Dirkjan Ochtman
734978e59e
Rename quinn::Endpoint::new() to builder()
2019-04-16 17:55:13 -07:00
Dirkjan Ochtman
d2885aa402
Use explicit conversion for integer widening
...
As suggested by Clippy.
2019-04-16 17:55:13 -07:00
Dirkjan Ochtman
0aa0b16e6e
Fix clippy warnings in quinn-proto
2019-04-16 17:55:13 -07:00
Dirkjan Ochtman
851b6e296c
Fix clippy errors
2019-04-16 17:55:13 -07:00
Dirkjan Ochtman
5f9a2213c3
Initial attempt at documenting public quinn-proto API
2019-04-16 16:47:28 +02:00
Benjamin Saunders
5d6ec3445e
Draft 19 transport parameter encoding
2019-04-15 07:14:46 -07:00
Benjamin Saunders
227f8b3262
Fix stateless transmits
2019-04-14 12:01:27 +02:00
Benjamin Saunders
adada8624b
Fix panic on drop of rejected 0-RTT streams
2019-04-14 12:01:27 +02:00
Dirkjan Ochtman
7d71876689
Fix typo as suggested
2019-04-13 12:38:14 -07:00
Benjamin Saunders
fab7522af0
Remove a gratuitous Box<[u8]>
...
Converting from Vec to Box will introduce an unnecessary copy if the
capacity is not exactly equal to the length.
2019-04-13 20:58:16 +02:00
Dirkjan Ochtman
da5c97c3cd
Split streams module out of quinn::connection
2019-04-13 20:58:16 +02:00
Benjamin Saunders
9ba0641866
Update README
2019-04-13 20:58:16 +02:00
Benjamin Saunders
c10de33593
Test 0-RTT in interop tool
2019-04-13 20:58:16 +02:00
Benjamin Saunders
f6ec7e8b33
Only set reset token on client handshake completion
...
0-RTT doesn't imply CID reuse, and servers never receive reset tokens
in transport parameters regardless.
2019-04-13 20:58:16 +02:00
Dirkjan Ochtman
2fb15b9a07
Add high-level API for 0-RTT support
2019-04-13 20:58:16 +02:00
Dirkjan Ochtman
784367f364
No longer need to extract driver on handover
2019-04-13 20:58:16 +02:00
Dirkjan Ochtman
97d38787fd
Rename ConnectingFuture to Connecting
2019-04-13 20:58:16 +02:00
Dirkjan Ochtman
16e4b96f4b
Simplify high-level streams API
2019-04-12 19:59:23 +02:00
Povilas Balciunas
84959a773b
Add many connections to one endpoint test
...
Adds integration test for numerous connections concurrently
transmitting 1 MB of data.
2019-04-12 07:19:09 +02:00
Benjamin Saunders
4ba31453ca
3*PTO lower-bound for idle timeout
2019-04-12 07:18:34 +02:00
Benjamin Saunders
4857ea9202
Don't prematurely deem handshake packets lost
...
This was a misunderstanding of the draft.
2019-04-12 07:18:34 +02:00
Benjamin Saunders
0dfa1fbb70
More conservative handshake key discard timer
...
Protects against connection loss due to severe packet loss following
handshake completion, which could occur because the client must elicit
and receive an ACK of its handshake CFIN message before the server
discards the handshake keys.
2019-04-09 10:11:47 -07:00
Benjamin Saunders
237084787e
Fix stateless reset routing
2019-04-09 10:11:47 -07:00
Benjamin Saunders
e0f4177167
ResetToken type
2019-04-09 10:11:47 -07:00
Benjamin Saunders
0631950b33
Preserve original error when converting to io::Error
2019-04-08 07:12:21 +02:00
Benjamin Saunders
0428c8693d
More consistent config filed naming
2019-04-08 07:12:21 +02:00
Benjamin Saunders
95b49ec0fe
Fail connection attempts without an endpoint driver immediately
2019-04-08 07:12:21 +02:00
Benjamin Saunders
6ec3b021cb
Move ClientConfig into quinn-proto
2019-04-08 07:12:21 +02:00
Benjamin Saunders
204c0786c8
Strengthen server_busy test
2019-04-08 07:12:21 +02:00
Benjamin Saunders
588cb74bff
Delete redundant test
...
This is subsumed by instant_close.
2019-04-08 07:12:21 +02:00
Benjamin Saunders
94a37e399e
Enable 0-RTT by default at TLS layer
...
Applications can still choose whether or not to send or process data
before a connection is established, so this was just an annoying
gotcha.
2019-04-08 07:12:21 +02:00
Benjamin Saunders
20c2770796
Update comment
2019-04-08 07:12:21 +02:00
Benjamin Saunders
b71ca0efb8
Expose per-Connection loggers
...
Helpful for debugging in highly concurrent environments
2019-04-08 07:12:21 +02:00
Benjamin Saunders
6b15147891
Graceful close in HTTP/0.9 client example
2019-04-07 00:34:15 -07:00
Benjamin Saunders
7fce27d84a
Ignore trailing garbage in HTTP/0.9 example server
2019-04-07 00:34:15 -07:00
Benjamin Saunders
35557794c8
More consistent/readable handling of handshake retransmit state
...
Doesn't correct any known bugs, but is slightly more precise and
accurate to the specified behavior.
2019-04-07 00:34:15 -07:00
Benjamin Saunders
3e61bba16a
Fix reordered data packets being incorrectly acknowledged
...
This lead the peer to believe we've processed data that we haven't,
causing all manner of inconsistent state.
2019-04-07 00:34:15 -07:00
Benjamin Saunders
94b3819c04
Remove DriverLost event in favor of stream termination
2019-04-06 13:32:49 -07:00
Benjamin Saunders
32ab3fe015
Improve behavior of Incoming and new connections after driver loss
2019-04-06 13:32:49 -07:00
Benjamin Saunders
ad6f15a266
Endpoint::close helper to close all connections
2019-04-06 13:32:49 -07:00
Benjamin Saunders
7541b5ef0f
Remove verbose error from test output
2019-04-06 13:32:49 -07:00
Benjamin Saunders
cc5bab3f69
Terminate connection driver when endpoint driver is lost
2019-04-06 13:32:49 -07:00
Benjamin Saunders
ab7e228f11
Fix local CID leak
2019-04-05 12:08:58 +02:00
Benjamin Saunders
818dadd671
Connection::close by reference
2019-04-05 12:08:58 +02:00
Benjamin Saunders
d5da7c0cdd
Improve robustness to non-monotonic Instant::now
...
It's unclear if Instant is monotonic when sampled across threads, and
we do not require Connections to remain on a single thread.
2019-04-05 12:08:58 +02:00
Benjamin Saunders
4e567f03ee
Update current timestamp on each driver loop iteration
...
Ensures a reasonable upper bound for error.
2019-04-05 12:08:58 +02:00
Benjamin Saunders
1f9a8fc337
Fix outdated comment
2019-04-05 12:08:58 +02:00
Dirkjan Ochtman
ec950055e5
Change code coverage command to make build job fail when appropriate
2019-04-05 01:04:45 -07:00
Артём Павлов [Artyom Pavlov]
e4f5a75867
if let cleanup
2019-04-05 08:50:04 +02:00