62 Commits

Author SHA1 Message Date
dependabot-preview[bot] 7326d2ef33 Update structopt requirement from 0.2.7 to 0.3.0
Updates the requirements on [structopt](https://github.com/TeXitoi/structopt) to permit the latest version.
- [Release notes](https://github.com/TeXitoi/structopt/releases)
- [Changelog](https://github.com/TeXitoi/structopt/blob/master/CHANGELOG.md)
- [Commits](https://github.com/TeXitoi/structopt/compare/v0.2.7...v0.3.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-02 07:05:29 +02:00
Dirkjan Ochtman a6cc48a23b Upgrade to ring 0.16 2019-08-27 07:57:50 -07:00
Benjamin Saunders f50dd9f54a Restore NewConnection struct for parts of a connection
This enables forwards-compatibility with future extensions such as
a datagram stream.
2019-08-25 14:50:01 -07:00
Benjamin Saunders e7929713cd Handle unclear interop ALPN 2019-07-11 20:52:19 +02:00
Benjamin Saunders 3921be6fd9 Don't test key update until after 1-RTT data has been exchanged 2019-07-11 20:52:19 +02:00
Benjamin Saunders 5fbe96f46a Public VarInt type
Ensures correctness of application error codes without panics or
adding new internal failure paths.
2019-07-11 20:52:19 +02:00
Benjamin Saunders b502306ab3 Refactor ReadToEnd helper to work after reads 2019-07-05 08:35:26 +02:00
Benjamin Saunders 1885904782 Fix warnings in tests 2019-06-26 07:10:37 +02:00
Benjamin Saunders 747d5a263b Colorful logging in examples 2019-06-24 19:31:38 +02:00
Dirkjan Ochtman 7b507d82b1 Move ALPN_QUIC_HTTP from library to examples/interop code 2019-06-20 12:30:02 -07:00
Dirkjan Ochtman 886a137703 Move H3 ALPN token into quinn-h3 2019-06-20 12:30:02 -07:00
stammw 79d07bd67f H3: let encoder pass an iterator instead of a slice 2019-06-07 20:13:27 +02:00
stammw eab98c19f8 H3: move codecs to a new proto module 2019-06-07 20:13:27 +02:00
stammw 2053e564f4 H3: add QPACK Settings in h3::frame::Settings 2019-06-07 20:13:27 +02:00
Dirkjan Ochtman 32188d429f Add ClientConfig::new() method for use in interop 2019-06-04 19:50:57 +02:00
Dirkjan Ochtman 2254203e0f Parametrize protocol types with crypto implementations 2019-06-04 19:50:57 +02:00
Dirkjan Ochtman a00de7894d Add local wrappers around rustls ClientConfig and ServerConfig 2019-06-04 19:50:57 +02:00
Benjamin Saunders dcaa80c170 Define helper future for finishing streams
More convenient than the tokio::io shutdown helper, and preserves
specific error information.
2019-04-27 20:57:19 +02:00
Dirkjan Ochtman 41c3162276 Fix clippy suggestions in qif interop code 2019-04-27 07:02:14 +02:00
Dirkjan Ochtman c544a0d7a1 Fix clippy suggestions in interop tool 2019-04-26 22:01:17 +02:00
Benjamin Saunders 9eea392e35 Restrict read_to_end to unread streams 2019-04-25 06:46:09 +02:00
Benjamin Saunders 8966c7e2d1 Don't yield stream from ReadToEnd
This was left over from before bidirectional streams were decoupled.
2019-04-25 06:46:09 +02:00
stammw ba2eff5fe9 QPACK: fix default values for settings 2019-04-18 14:36:14 +02:00
Dirkjan Ochtman 734978e59e Rename quinn::Endpoint::new() to builder() 2019-04-16 17:55:13 -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
Benjamin Saunders c10de33593 Test 0-RTT in interop tool 2019-04-13 20:58:16 +02:00
Dirkjan Ochtman 16e4b96f4b Simplify high-level streams API 2019-04-12 19:59:23 +02:00
Benjamin Saunders 6ec3b021cb Move ClientConfig into quinn-proto 2019-04-08 07:12:21 +02:00
Артём Павлов [Artyom Pavlov] e4f5a75867 if let cleanup 2019-04-05 08:50:04 +02:00
Dirkjan Ochtman aae9edecd4 Return new connections as tuples 2019-04-01 10:56:38 +02:00
Dirkjan Ochtman c0c40891b4 Return driver as first member of endpoint tuple 2019-04-01 10:56:38 +02:00
Benjamin Saunders 25d60cca9f Refactor close behavior
Closing the connection is now considered an instantaneous operation,
which causes outstanding I/O futures to fail immediately with a
distinct error and gracefully terminates IncomingStreams and, one
draining has completed, ConnectionDriver.
2019-03-30 16:34:16 -07:00
Benjamin Saunders 6c0c72b1f1 Fast idle timeout in interop tool 2019-03-30 16:34:16 -07:00
Benjamin Saunders 3e56beee3c Spawn connection driver in client example and interop tool 2019-03-28 08:28:01 +01:00
stammw 9c1128aa3f Remove useless assert 2019-02-08 20:33:17 +01:00
stammw d99f332dd3 Use a separate client for H3 interop test 2019-02-08 20:33:17 +01:00
stammw f939f8ebe4 H3: StreamType for unidirectional streams 2019-02-08 20:33:17 +01:00
stammw f874a8dad6 QIF: use max blocked stream in encoding and check validity on decoding 2019-02-08 20:33:17 +01:00
stammw 5561effe56 Simple H3 get for the interop tool 2019-02-08 20:33:17 +01:00
stammw fd2940c5da Add jc.begue contributor name 2019-02-08 20:33:17 +01:00
stammw 15b3cbb346 QIF: Handle blocked streams 2019-02-08 20:33:17 +01:00
stammw 9dc05fe5d8 QIF: use cli args when encoding a single file 2019-02-08 20:33:17 +01:00
stammw 0c37a8a994 QIF: get encoder settings from cli args 2019-02-08 20:33:17 +01:00
stammw b710fcc1a5 QIF: gather encoding results 2019-02-08 20:33:17 +01:00
stammw b76271280b QIF: handle encoded files for all impls, generalize failure display 2019-02-08 20:33:17 +01:00
stammw a1cc9caebb QIF: implement acknowledgement mode 2019-02-08 20:33:17 +01:00
stammw 06654e2e7f QIF: iterate over qif sir and generate all encode cases 2019-02-08 20:33:17 +01:00
stammw 2997382aa9 QIF: encode one file, without configuration 2019-02-08 20:33:17 +01:00
stammw a2dea7c640 QIF: correctly set max table size 2019-02-08 20:33:17 +01:00
stammw d9bc7ce8de QIF: get path from cli args 2019-02-08 20:33:17 +01:00