Commit Graph

  • d43a86af24 Add static table for header fields evolix1 2018-05-27 16:38:18 +01:00
  • 23371294c0 Use Cow to prepare for static table evolix1 2018-05-27 16:38:02 +01:00
  • 9e6ee3e646 Moved qpack into module evolix1 2018-05-27 15:51:29 +01:00
  • 6f3196aed8 Dynamic table management for QPACK evolix1 2018-05-27 15:01:40 +01:00
  • 174b3f49eb Assorted clippy fixes Dirkjan Ochtman 2019-02-07 22:02:17 +01:00
  • 6331d4bcde Skip draining period on idle timeout Benjamin Saunders 2019-02-06 17:08:34 -08:00
  • 9e80bed884 Bound handshake retransmit backoff Benjamin Saunders 2019-02-06 17:08:13 -08:00
  • 3b8e8d14f5 Update version to draft 18 Benjamin Saunders 2019-02-06 17:06:33 -08:00
  • b27eb99e38 Implement keep-alive timer Benjamin Saunders 2019-02-02 11:05:07 -08:00
  • 44cb7f6739 Extract timer count constant Benjamin Saunders 2019-02-02 11:02:26 -08:00
  • fc4240c08f Treat all PINGs and PATH_RESPONSE as ack-eliciting Benjamin Saunders 2019-02-02 10:45:59 -08:00
  • 6cb4b49f89 Compute negotiated idle timeout up front Benjamin Saunders 2019-02-02 10:45:24 -08:00
  • 2e373c154e Hoist MAX_PTO_EXPONENT out to module scope Dirkjan Ochtman 2019-02-02 22:20:18 +01:00
  • f4fcd6dc80 Use Duration for RttEstimator Dirkjan Ochtman 2019-02-02 22:17:43 +01:00
  • 5df68a21a1 Use Instant and Duration for timing Dirkjan Ochtman 2019-02-02 21:44:08 +01:00
  • 4c083ee915 Use Option instead of sentinel values for time values Dirkjan Ochtman 2019-02-02 21:18:49 +01:00
  • 273b7322dd Fix code duplication Benjamin Saunders 2019-01-31 17:23:40 -08:00
  • be801edd10 Fix incomplete stream state reset on 0-RTT rejection Benjamin Saunders 2019-02-03 23:55:49 -08:00
  • 47bc2886c2 Improve reason descriptions for TLS errors Dirkjan Ochtman 2019-01-30 08:39:54 +01:00
  • eb01d30be0 Turn HeaderCrypto into a trait Dirkjan Ochtman 2019-01-28 12:49:36 +01:00
  • 891db4c51d Privatize some parts of the Crypto API Dirkjan Ochtman 2019-01-28 12:40:52 +01:00
  • d2796a2926 Move early_data_accepted() handling into CryptoSession API Dirkjan Ochtman 2019-01-28 12:35:19 +01:00
  • 2e0ee41aea Replace TLSError with TransportError in CryptoSession interface Dirkjan Ochtman 2019-01-28 12:29:22 +01:00
  • ee19ea7c8c Only extract early Crypto once Dirkjan Ochtman 2019-01-28 08:41:05 +01:00
  • e3347954e4 Hide 0-RTT Crypto creation behind CryptoSession interface Dirkjan Ochtman 2019-01-28 08:36:20 +01:00
  • c4fe6b38fa Fix packet number used as timestamp Benjamin Saunders 2019-01-29 20:13:24 -08:00
  • ecaecab5d0 Style tweak Benjamin Saunders 2019-01-29 19:22:54 -08:00
  • cad3da1b09 Strengthen flow control tests Benjamin Saunders 2019-01-27 16:12:59 -08:00
  • aea40cfafe Fix Frame::Stream type accessor Benjamin Saunders 2019-01-27 15:57:00 -08:00
  • 15de1a933a Add some useful testing options to the example client Benjamin Saunders 2019-01-27 12:53:04 -08:00
  • 316f965f99 Test rebinding in interop tool Benjamin Saunders 2019-01-27 12:26:10 -08:00
  • cff075c785 Prioritize retransmitted stream/handshake data Benjamin Saunders 2019-01-27 00:52:32 -08:00
  • 32369976be Improve logging Benjamin Saunders 2019-01-27 00:47:44 -08:00
  • f65264c270 Improve logging Benjamin Saunders 2019-01-26 20:48:44 -08:00
  • 2039d7b928 Handle interop testing vs. IP addrs Benjamin Saunders 2019-01-26 19:56:04 -08:00
  • e98e5622fc Report StreamReadable when reading is unblocked, not every frame Benjamin Saunders 2019-01-26 15:31:17 -08:00
  • f623b76b60 Simplify finished stream reporting Benjamin Saunders 2019-01-26 14:41:43 -08:00
  • 6e9621c9d7 Test zero-length CIDs Benjamin Saunders 2019-01-26 14:24:13 -08:00
  • 97d093ff17 Add missing cleanup Benjamin Saunders 2019-01-26 14:22:13 -08:00
  • eba8048a58 Unblock streams on STOP_SENDING Benjamin Saunders 2019-01-26 14:14:49 -08:00
  • 56a6629c18 MAX_STREAM_DATA can open streams Benjamin Saunders 2019-01-26 14:11:17 -08:00
  • 1f2c0e87c1 Centralize stream activity handling Benjamin Saunders 2019-01-26 14:08:26 -08:00
  • 5b5d07e92e Improve ALPN documentation Benjamin Saunders 2019-01-25 17:43:43 -08:00
  • b8e6ff127c Tweak builder method naming Benjamin Saunders 2019-01-25 17:42:40 -08:00
  • bf456e4792 Don't panic on non-unique Arc in ServerConfigBuilder Benjamin Saunders 2019-01-25 17:38:05 -08:00
  • 06b4873257 Isolate per-endpoint and per-connection configuration Benjamin Saunders 2019-01-25 17:37:23 -08:00
  • 222c2d88c6 Implicit stream opening Benjamin Saunders 2019-01-23 21:16:44 -08:00
  • cd4607d7d8 Don't panic on missing client transport parameters Benjamin Saunders 2019-01-23 21:51:16 -08:00
  • 8d3abded71 Add helper method to determine side from TlsSession variant Dirkjan Ochtman 2019-01-23 08:27:44 +01:00
  • 48414a07f7 Add trait and impl for CryptoServerConfig Dirkjan Ochtman 2019-01-22 21:59:30 +01:00
  • 4e527d9925 Add trait and impl for CryptoClientConfig Dirkjan Ochtman 2019-01-22 21:49:01 +01:00
  • 4f4b8e6696 Extend the CryptoSession interface some more Dirkjan Ochtman 2019-01-22 21:33:48 +01:00
  • 9e48a0977a Use trait to abstract over TlsSession type Dirkjan Ochtman 2019-01-22 20:36:20 +01:00
  • b144b9a86b Hide creation of Crypto in TlsSession Dirkjan Ochtman 2019-01-22 20:36:15 +01:00
  • afe712f328 Move TransportParameters parsing into TlsSession Dirkjan Ochtman 2019-01-22 20:36:07 +01:00
  • 088c45e26a Remove identity conversions Benjamin Saunders 2019-01-23 01:17:31 -08:00
  • e85c320e7d Improve configuration error checking Benjamin Saunders 2019-01-23 01:17:22 -08:00
  • 1f35a803d8 Draft 18 recovery fixes Benjamin Saunders 2019-01-23 00:53:27 -08:00
  • 1dad005637 Draft 18 preferred_address Benjamin Saunders 2019-01-22 22:31:37 -08:00
  • bd3ec80990 Validate max_ack_delay parameter Benjamin Saunders 2019-01-22 22:02:06 -08:00
  • 008e197030 Rich transport errors Benjamin Saunders 2019-01-22 20:40:52 -08:00
  • 25d61416e9 Remove redundant logging Benjamin Saunders 2019-01-22 20:31:04 -08:00
  • 6f7ac12c9a Remove redundant error check Benjamin Saunders 2019-01-22 20:11:06 -08:00
  • ebf9decfb2 Don't reject longer-than-necessary frame type encodings Benjamin Saunders 2019-01-22 20:09:12 -08:00
  • 64ac5fde0d Only validate 0-RTT transport parameters if 0-RTT is accepted Benjamin Saunders 2019-01-22 19:42:06 -08:00
  • aab4ff41cb Fix panic on Debug for weird TLS alerts Benjamin Saunders 2019-01-22 18:34:52 -08:00
  • 8037e5e7e3 Track latest received packet per packet number space Benjamin Saunders 2019-01-22 17:54:05 -08:00
  • 1404c752b7 Update to latest STOP_SENDING validation logic Benjamin Saunders 2019-01-22 17:53:08 -08:00
  • 6a1fbf9940 Improve timeout counter overflow robustness Benjamin Saunders 2019-01-22 17:52:37 -08:00
  • 5cecb68f48 Handle overflow in idle timeout computation Benjamin Saunders 2019-01-22 17:50:36 -08:00
  • adc41e4b2d Upper bound to PTO interval Benjamin Saunders 2019-01-22 17:49:17 -08:00
  • d80efde3e9 Fix handling of idle timeout 0 Benjamin Saunders 2019-01-22 17:48:49 -08:00
  • dfd9a5d740 More robust idle timeout test Benjamin Saunders 2019-01-22 17:48:15 -08:00
  • 3a05cbc331 Update to latest idle timeout logic Benjamin Saunders 2019-01-22 17:43:37 -08:00
  • ef64df4664 Disable unidirectional streams explicitly in server example Benjamin Saunders 2019-01-22 17:41:19 -08:00
  • 9992be8fa1 Remove dead feature flag Benjamin Saunders 2019-01-21 16:31:27 -08:00
  • d5ad558181 Bump versions 0.2.0 Benjamin Saunders 2019-01-20 16:35:15 -08:00
  • 1831489dae Don't drop tokio state until connections are dropped AND drained Benjamin Saunders 2019-01-20 16:34:02 -08:00
  • 460a704254 Update to crates.io version of rustls est31 2019-01-20 21:47:38 +01:00
  • 530e511609 Wake up driver on connect Benjamin Saunders 2019-01-19 21:31:15 -08:00
  • 76f7097776 Drop tokio connection state on drained, not drop Benjamin Saunders 2019-01-19 21:25:26 -08:00
  • 4eae666c6b Isolate packet transmit and timer update Benjamin Saunders 2019-01-19 15:31:05 -08:00
  • 82059b57fd Don't retransmit CONNECTION_CLOSE in response to offpath packets Benjamin Saunders 2019-01-19 14:17:52 -08:00
  • 92f59031de Stop idle timer when connection starts to close Benjamin Saunders 2019-01-19 14:06:02 -08:00
  • 98edfa103f Allow callers to determine when a close has been acknowledged Benjamin Saunders 2019-01-14 18:58:02 -08:00
  • a9d43c34d6 Emit Handshaking event for incoming connections Benjamin Saunders 2019-01-14 18:56:49 -08:00
  • 3a1b5584ed Only call handle_coalesced() if necessary Dirkjan Ochtman 2019-01-18 08:32:47 +01:00
  • b8adc7a8d9 Always pass all datagram contents to Connection in one go Dirkjan Ochtman 2019-01-17 16:51:36 +01:00
  • ea7aa02091 Move conn_ready() around to improve readability Dirkjan Ochtman 2019-01-17 16:26:05 +01:00
  • 5ee5d5d5ee Improve ordering of items in quinn crate root Dirkjan Ochtman 2019-01-17 15:56:50 +01:00
  • c5c591f5b9 Reflow comments in quinn crate root Dirkjan Ochtman 2019-01-17 15:47:20 +01:00
  • ab68eacfd5 Move ConnectionHandle into endpoint module Dirkjan Ochtman 2019-01-17 15:04:30 +01:00
  • 536cbe4c50 Use Index/IndexMut to abstract use of ConnectionHandle Dirkjan Ochtman 2019-01-17 14:33:35 +01:00
  • f95e89e3bd Improve naming of ConnectionHandle variable bindings Dirkjan Ochtman 2019-01-12 14:38:05 +01:00
  • e73fadaa6f Support user-supplied DER certificates in the server example Benjamin Saunders 2019-01-17 22:20:48 -08:00
  • 2b96ccee36 Typo fix Benjamin Saunders 2019-01-17 22:19:46 -08:00
  • 5e75853bdd Add a missing STREAM_STATE_ERROR, correct PROTOCOL_VIOLATIONs Benjamin Saunders 2019-01-17 22:18:39 -08:00
  • 44bdb84a8a Discard queued 0-RTT frames on 0-RTT rejected. Benjamin Saunders 2019-01-16 21:53:01 -08:00
  • 87761b8569 Don't send RESET_STREAM or STOP_SENDING in 0-RTT Benjamin Saunders 2019-01-16 21:49:57 -08:00
  • 95430342c4 STOP_STREAM opens remotely initiated bidirectional streams Benjamin Saunders 2019-01-16 21:36:32 -08:00