Commit Graph

3653 Commits

Author SHA1 Message Date
Benjamin Saunders de8e934109 Increase use of coding extension methods 2018-04-18 22:35:57 -07:00
Benjamin Saunders 6ef424009e Retransmit RST_STREAM and STOP_SENDING 2018-04-18 22:25:35 -07:00
Benjamin Saunders f2fa9d47c3 Stream/flow control fixes 2018-04-18 22:09:18 -07:00
Dirkjan Ochtman 07f47a9f8d Improvements for crypto API 2018-04-18 16:47:58 +02:00
Dirkjan Ochtman 19906addb3 Rename hkdf module to crypto 2018-04-18 16:26:43 +02:00
Dirkjan Ochtman ac9b78d161 Implement packet protection for handshake packets 2018-04-18 16:25:27 +02:00
Benjamin Saunders 4afb21c434 Match key phase in stateless reset 2018-04-18 00:46:42 -07:00
Benjamin Saunders cff5825810 Draft flow control 2018-04-18 00:41:03 -07:00
Benjamin Saunders bb2bc79582 Cleanup 2018-04-17 21:53:13 -07:00
Dirkjan Ochtman 6881f19d84 Encapsulate AEAD interface and minimize allocations 2018-04-17 11:28:34 +02:00
Dirkjan Ochtman f84c5e4405 Implement support for QHKDF (for client handshake) 2018-04-17 10:59:39 +02:00
Benjamin Saunders 138e8d093c Update long header, Arc<Config> 2018-04-16 18:42:49 -07:00
Dirkjan Ochtman 676f250fff Expose Server API from library 2018-04-16 12:12:52 +02:00
Dirkjan Ochtman 544e8fab33 Keep server running after serving response 2018-04-16 12:05:10 +02:00
Dirkjan Ochtman 7ce9a21e53 Move packet number into the header 2018-04-16 12:05:10 +02:00
Dirkjan Ochtman 1a68ee6c07 Let the server send some random bytes in response 2018-04-16 10:54:44 +02:00
Benjamin Saunders 7debd7e10f Update for packet coalescion 2018-04-14 16:21:15 -07:00
Benjamin Saunders 474f5e9e46 Fix connection lifetime
Connections are now never disposed of unless the application has called
close. This prevents certain panics and unexpected behavior between the
time a connection is lost and the time an application processes that
event.
2018-04-14 16:06:26 -07:00
Benjamin Saunders f7a7825522 Fix example 2018-04-14 14:44:32 -07:00
Benjamin Saunders 7985d4df1d Fix missing cleanup 2018-04-14 12:30:21 -07:00
Benjamin Saunders 11563856f0 Additional documentation 2018-04-14 12:29:21 -07:00
Dirkjan Ochtman 89d0a7faea Properly size the response buffer 2018-04-12 12:30:55 +02:00
Dirkjan Ochtman 5bc0b8664e Send ALPN protocol identifier 2018-04-12 12:13:15 +02:00
Dirkjan Ochtman 6c94b3af38 Add initial implementation of server side 2018-04-12 12:11:05 +02:00
Benjamin Saunders 5c9839086c Don't ignore result in test 2018-04-12 00:00:06 -07:00
Benjamin Saunders 4e5083865b Simplify blocking events 2018-04-11 23:59:55 -07:00
Benjamin Saunders 1c460de39b Additional documentation 2018-04-11 23:25:00 -07:00
Benjamin Saunders 9ccb503b91 Towards flow control and a usable API 2018-04-11 23:24:50 -07:00
Dirkjan Ochtman 38552bbfac Take server host name as an argument 2018-04-10 11:03:58 +02:00
Dirkjan Ochtman e02263761d Fix frame length calculation for Stream frames 2018-04-10 10:59:19 +02:00
Dirkjan Ochtman 4f8d773f3e Fix header length calculation for long headers 2018-04-10 10:58:53 +02:00
Dirkjan Ochtman 8aec2d8f4e Encode the Stream ID for Stream frames 2018-04-10 10:41:46 +02:00
Dirkjan Ochtman bc428af22b Silence some warnings 2018-04-10 10:35:46 +02:00
Dirkjan Ochtman b76c299aaf Move codec types into codec module 2018-04-10 10:32:06 +02:00
Dirkjan Ochtman 67a57b698a Move Frame and related types into frame module 2018-04-10 10:25:42 +02:00
Dirkjan Ochtman 9fd0379637 Correctly set version to draft 10 2018-04-10 10:19:15 +02:00
Dirkjan Ochtman 5cd86ad770 Start sending and receiving datagrams 2018-04-10 10:18:30 +02:00
Benjamin Saunders 33d34c93a5 Separate send/recv stream states 2018-04-09 19:00:23 -07:00
Dirkjan Ochtman bcfe0a3d92 Properly include is_fin bit in stream frame type 2018-04-09 21:24:46 +02:00
Dirkjan Ochtman 2955090061 Add padding if necessary 2018-04-09 21:23:35 +02:00
Dirkjan Ochtman 6b6a38d7de Start implementing basic UDP handling 2018-04-09 21:10:57 +02:00
Dirkjan Ochtman 95326b71ec Implement basic support for encoding Packets 2018-04-09 17:04:53 +02:00
Dirkjan Ochtman 841c4de4c7 Add traits and types to help with encoding 2018-04-09 16:46:39 +02:00
Dirkjan Ochtman 85e88e0981 Start work on codec for QUIC packets 2018-04-09 13:22:17 +02:00
Benjamin Saunders 791a19889f Fix missing test log values 2018-04-08 21:07:21 -07:00
Benjamin Saunders b4699397ab Clean up timer logic 2018-04-08 21:06:27 -07:00
Benjamin Saunders 2ce982a538 Graceful example shutdown 2018-04-08 20:31:47 -07:00
Benjamin Saunders 719f36fef5 Minimal working HTTP/0.9 get, cleanup 2018-04-08 20:04:03 -07:00
Benjamin Saunders 8ad6da173e Idle timeouts 2018-04-08 18:02:27 -07:00
Benjamin Saunders 5963763595 Transport parameters cleanup 2018-04-08 14:22:52 -07:00