Commit Graph

1935 Commits

Author SHA1 Message Date
Benjamin Saunders 5774071b48 Spawn driver tasks implicitly 2020-01-13 09:54:26 +01:00
Benjamin Saunders debaabeaf3 Compare reset tokens in constant time 2020-01-13 08:56:22 +01:00
Benjamin Saunders 16e670c9f3 Simplify example common module 2020-01-13 08:54:04 +01:00
Benjamin Saunders 527444ed77 Simplify single_socket example 2020-01-13 08:54:04 +01:00
Benjamin Saunders 42ca1cc0a5 Simplify insecure_connection example 2020-01-13 08:54:04 +01:00
Benjamin Saunders 9a9d940e81 Simplify connection example 2020-01-13 08:54:04 +01:00
Benjamin Saunders ad34d334bb Mention datagrams in crate docs 2020-01-13 08:54:04 +01:00
Benjamin Saunders b28a6a8793 Mention quinn-proto in crate docs 2020-01-13 08:54:04 +01:00
Benjamin Saunders 0bf723009d Reference SendStream::finish from Connection::close 2020-01-13 08:54:04 +01:00
Benjamin Saunders aa13434d43 Replace fixed-point factors with floating point
Allows for much more obviously correct arithmetic.
2020-01-13 08:53:05 +01:00
Benjamin Saunders f34ce8b199 Richer time types in config structs 2020-01-13 08:53:05 +01:00
Benjamin Saunders ba734786f2 Remove vestigal config option 2020-01-13 08:53:05 +01:00
Benjamin Saunders 4386f4ce52 Store cryptographic keys directly in config structs 2020-01-13 08:53:05 +01:00
Benjamin Saunders 09729ebd23 Opaque config structs
Only exposing setters improves forwards compatibility and error
checking.
2020-01-13 08:53:05 +01:00
Demi M. Obenour 44267ec0d1 Expose the underlying TLS session 2020-01-12 10:14:50 +01:00
Benjamin Saunders 505e79e6ed Naming consistency 2020-01-12 10:07:04 +01:00
Benjamin Saunders 325e5938f5 Document instability of Connection::remote_address 2020-01-12 10:07:04 +01:00
Benjamin Saunders b17bc14662 Don't expose connection IDs
These aren't particularly interesting to users and can change
unpredictably, so exposing them is an unnecessary footgun.
2020-01-12 10:07:04 +01:00
Benjamin Saunders 14098a586e Fix timer updates not being applied while a timer was active
Fixes a bug introduced in 9676f3e982.
2020-01-12 10:04:47 +01:00
Benjamin Saunders 29dfcab51f Fix explicit close causing early connection driver termination 2020-01-07 08:53:43 +01:00
Benjamin Saunders 195135a39b Remove vestigal IoQueue struct 2020-01-07 08:53:43 +01:00
Benjamin Saunders 9676f3e982 Expose a single timer per Connection
Zero-cost simplification.
2020-01-07 08:53:43 +01:00
Dirkjan Ochtman 715ab1678d Update CI badge to point to GitHub Actions 2020-01-02 14:56:43 -08:00
stammw c07cc7f9d2 H3: poll control on opening instead of twice per loop 2019-12-31 09:33:55 +01:00
stammw 3befe15c16 H3: default path is "/", not "" 2019-12-31 09:33:55 +01:00
stammw 6fc82a1ffd H3: Fix header len count in request constructor 2019-12-31 09:33:55 +01:00
stammw 0b4fa10b97 H3: spawn each incoming connection in server example 2019-12-31 09:33:55 +01:00
stammw 21f9cc9d33 H3: accept directly http::Uri in client example args 2019-12-31 09:33:55 +01:00
stammw f9965e473f H3: avoid panics in server example critical path 2019-12-31 09:33:55 +01:00
stammw cf1cac3587 H3: poll control before anything in driver 2019-12-31 09:33:55 +01:00
stammw 71d39699d4 H3: remove unlegitimate IOError in body reader 2019-12-31 09:33:55 +01:00
stammw 311c0b6d07 h3 only interop for picoquic 2019-12-31 09:33:55 +01:00
stammw 86227f4b45 H3: send a Set DynamicTable Size on encoding enable 2019-12-31 09:33:55 +01:00
stammw 1d827856a3 H3: tracing for Uni streams 2019-12-31 09:33:55 +01:00
stammw 23597158bd H3: rename push_id field into id 2019-12-31 09:33:55 +01:00
stammw 5f803f5615 H3: tracing for received frames 2019-12-31 09:33:55 +01:00
stammw 13b6be2c26 Make a sequential interop test possible via args 2019-12-31 09:33:55 +01:00
stammw 731a4a832f Send an :authority in h3 interop client 2019-12-31 09:33:55 +01:00
stammw 03fbc79f00 H3: consume reserved frames payload 2019-12-31 09:33:55 +01:00
stammw f21f01ded6 H3: default scheme to https 2019-12-31 09:33:55 +01:00
Dirkjan Ochtman f078ca955b Make TransportParameters public (fixes #565) 2019-12-23 17:39:10 -08:00
Dirkjan Ochtman 9ae6befdaf Remove unused VersionNegotation error variant 2019-12-23 17:39:10 -08:00
Dirkjan Ochtman f4b8cbeac2 Fix tokio feature flags in interop 2019-12-22 14:28:02 -08:00
Dirkjan Ochtman 102f537d40 Fix remaining lints 2019-12-22 14:28:02 -08:00
Dirkjan Ochtman e6498db8df Force tokio update to deal with deadlock issue 2019-12-22 22:21:49 +01:00
Benjamin Saunders ffb224e216 Switch CI to github actions 2019-12-22 21:13:31 +01:00
Benjamin Saunders 1bbb65b6a1 Lint cleanup 2019-12-22 21:13:31 +01:00
Benjamin Saunders 4d3fc4117d Update poll method docs to reflect privatization of timers 2019-12-22 21:12:46 +01:00
Benjamin Saunders 4a83c6c361 Tolerate double-polling of ConnectionDriver
We rely on this to expose failed incoming handshakes to the
application. An alternative approach would be to swallow those errors
entirely; this would slightly simplify the implementation, but make it
more difficult to detect abuse and certain bugs in logs.
2019-12-22 09:30:02 +01:00
Benjamin Saunders e7342f53ba Remove no-longer-necessary workaround 2019-12-22 09:30:02 +01:00