Commit Graph

2620 Commits

Author SHA1 Message Date
Dirkjan Ochtman 43f3ec0fc8 Clarify status of HTTP as unimplemented 2018-10-03 20:53:07 +02:00
Dirkjan Ochtman c07561744f Fix method name for set_certificate_authority() 2018-10-03 20:50:21 +02:00
Dirkjan Ochtman 042266aa81 Upgrade to rand-0.5 2018-10-03 20:34:46 +02:00
Dirkjan Ochtman 4e747108f0 Add CodeCov and Travis badges to Cargo manifest 2018-10-03 20:03:22 +02:00
Dirkjan Ochtman f4231eaa7d Use latest version of blake2
Instead of relying on digest directly, this uses the version of digest
exposed through the blake2 API. Since we're no longer using digest
for other crypto, this seems a simpler way to do things.
2018-10-03 20:00:14 +02:00
Dirkjan Ochtman 06e65f7c1e Reorder badges in README 2018-10-03 13:51:19 +02:00
Dirkjan Ochtman 00ecf41200 Add docs.rs badge 2018-10-03 13:51:19 +02:00
Dirkjan Ochtman f194663f94 Fix crates.io badge image URL 2018-10-03 13:51:19 +02:00
Dirkjan Ochtman b6489cdf83 Merge branch 'master' into quicr 2018-10-02 22:22:42 +02:00
Dirkjan Ochtman 487c389536 Order extern crate statements 0.1.0 2018-10-02 22:16:40 +02:00
Dirkjan Ochtman d9f0d93017 Restart version numbers from 0.1.0 2018-10-02 22:12:14 +02:00
Dirkjan Ochtman 3da54b178c Rename crates from quicr{,-core} to quinn{,-proto} 2018-10-02 21:58:17 +02:00
Dirkjan Ochtman 0a5a9fa70e Update rustls to 0.14 2018-10-02 21:52:42 +02:00
Dirkjan Ochtman dcfdf53f24 Merged README 2018-10-02 21:50:53 +02:00
Dirkjan Ochtman eb94a0a983 Order dependencies in Cargo manifests 2018-10-02 21:30:33 +02:00
Dirkjan Ochtman 62a9bf66e0 Add myself as crate author 2018-10-02 21:26:54 +02:00
Dirkjan Ochtman e26b47f371 Rename get_servername() to get_server_name() for consistency 2018-10-02 21:19:49 +02:00
Dirkjan Ochtman ed74848168 Fix deprecations 2018-10-02 21:19:49 +02:00
Dirkjan Ochtman a04dc1e4b9 Add Travis-CI configuration 2018-10-02 21:19:49 +02:00
Dirkjan Ochtman 3f09e982ff Flatten the workspace 2018-10-02 21:19:49 +02:00
Dirkjan Ochtman 8fc5fbbfc2 Pump test packets through sockets 2018-10-02 21:19:49 +02:00
Dirkjan Ochtman 9412d47762 Replace TLS backend with rustls 2018-10-02 21:19:49 +02:00
Dirkjan Ochtman bcdf6d6f21 Move set_payload_length() into packet module 2018-09-10 12:02:56 +02:00
Dirkjan Ochtman 97e4d584d4 Move most of Endpoint::close() into Connection 2018-09-09 14:02:00 +02:00
Dirkjan Ochtman 777bc132be Move Endpoint::close_common() into Connection 2018-09-09 13:57:30 +02:00
Dirkjan Ochtman 26f9dcb824 Move Endpoint::io into Context 2018-09-09 13:51:54 +02:00
Dirkjan Ochtman f57b2d7605 Let Connection handle processing on handshake completion 2018-09-09 13:34:23 +02:00
Dirkjan Ochtman a59849f5be Split server-side TLS handshake handling out into separate function 2018-09-09 13:25:36 +02:00
Dirkjan Ochtman 017c9c88b8 Move parse_initial() from endpoint to connection module 2018-09-09 11:01:16 +02:00
Dirkjan Ochtman 07bb1f15d1 Improve API interface for parse_initial() 2018-09-09 10:59:40 +02:00
Dirkjan Ochtman 05a3fd1421 Tweak style based on clippy suggestions 2018-09-08 20:52:57 +02:00
Dirkjan Ochtman 6b4f5db9f5 Change decryption API to require no allocations 2018-09-08 20:28:43 +02:00
Dirkjan Ochtman c9c6869209 Store packet payload as BytesMut 2018-09-08 20:28:28 +02:00
Dirkjan Ochtman 05dc97524e Split Packet creation out of parsing code 2018-09-07 21:10:43 +02:00
Dirkjan Ochtman e29c5245d1 Simplify logic for picking decryption Crypto 2018-09-07 17:38:45 +02:00
Dirkjan Ochtman 2782d3268a Improve Crypto encrypt() interface to reduce code duplication 2018-09-07 17:38:05 +02:00
Dirkjan Ochtman d447c58632 Move remaining crypto logic into Crypto type 2018-09-07 15:14:45 +02:00
Dirkjan Ochtman f37e4f1785 Move encryption/decryption logic into Crypto type
This deduplicates encrypt() and decrypt() functionality.

For now, Connection::encrypt() is left as a method that doesn't take &self
in order to prevent borrowing issues. As the interface for encrypt() can
be improved now that there is no duplicate code, this will be fixed.
2018-09-07 15:04:54 +02:00
Dirkjan Ochtman cf6f737f11 Move creation of client-side TLS stream into crypto module 2018-09-06 21:23:18 +02:00
Dirkjan Ochtman 406718fb67 Extract new packet module for packet (de)serialization logic 2018-09-06 17:14:48 +02:00
Dirkjan Ochtman 13e0281fe8 Redistribute const definitions to be more sensible 2018-09-06 16:07:50 +02:00
Dirkjan Ochtman eff921f902 Move Endpoint::handle_connected_inner() into Connection 2018-09-06 16:07:48 +02:00
Dirkjan Ochtman 6e4268919a Move Endpoint::drive_tls() into Connection 2018-09-06 16:07:15 +02:00
Dirkjan Ochtman 0a6470e967 Merge Endpoint::on_packet_authenticated() into Connection::on_packet_authenticated() 2018-09-06 16:06:44 +02:00
Dirkjan Ochtman 5468e6b993 Move Endpoint::reset_idle_timeout() into Connection 2018-09-06 16:06:44 +02:00
Dirkjan Ochtman 7f141bf459 Move Endpoint::process_payload() into Connection 2018-09-06 16:06:44 +02:00
Dirkjan Ochtman fcfe1b3b6c Move ConnectionError into connection module 2018-09-06 16:06:44 +02:00
Dirkjan Ochtman 13b2221d43 Merge Endpoint::on_ack_received() into Connection::on_ack_received() 2018-09-06 16:06:44 +02:00
Dirkjan Ochtman fb13ce1eed Move connect() implementation into Connection type 2018-09-06 16:06:41 +02:00
Dirkjan Ochtman 7cc68816cd Move reset() method implementation into Connection 2018-09-06 16:05:04 +02:00