Commit Graph

635 Commits

Author SHA1 Message Date
Carl Lerche
7e8c7fd2b8 Use FlowControl::available to size data frames (#29) 2017-08-23 20:34:58 -07:00
Oliver Gould
f839443ece implement h2::server::Stream::send_reset(Reason) and Body::is_empty() (#22) 2017-08-23 12:48:00 -07:00
Carl Lerche
e8f757457b Update server example 2017-08-23 11:24:54 -07:00
Carl Lerche
807d2b7317 Wire in recv flow control (#26) 2017-08-23 11:22:24 -07:00
Carl Lerche
a623ab68b5 New send flow control (#25)
Restructure send flow control such that sending data is always accepted by `Stream`. Data frames will be buffered until there is available window to send them. Producers can monitor the available window capacity to decide if data should be produced.
2017-08-21 13:52:58 -07:00
Carl Lerche
41b25a4a56 Fix README example 2017-08-17 07:22:26 -07:00
Carl Lerche
cd2bc41adc Improve the README 2017-08-16 22:23:45 -07:00
Carl Lerche
8ea99dd3ff Use travis to run CI 2017-08-16 21:49:25 -07:00
Brian Smith
2992594552 Switch Akamai example from rust-openssl to Rustls. (#24)
With this change, h2 can build and run without any manual configuration steps for -msvc targets. Previously manual installation of OpenSSL libraries was required.
2017-08-16 21:43:35 -07:00
Brian Smith
72f1d372af Fix build by upgrading tokio-io dependency to tokio-io 0.1.3. (#23)
tokio-io 0.1.3 has been published so the "replace" for tokio-io 0.1.2 is no longer useful and it breaks the build with some (but apparently not all) versions of Cargo.

Update the dependency to tokio-io 0.1.3 since that is the version that's what's been verified to work.
2017-08-16 21:40:53 -07:00
Carl Lerche
de96b2f410 Add another test 2017-08-16 12:43:48 -07:00
Oliver Gould
e015d7bfba Implement Client::poll_ready (#21)
Client::poll_ready ensures that the connection is ale to to initiate a new request stream to the remote server.  When the server is at capacity, a task is stored to be notified when capacity is available.
2017-08-15 13:46:55 -07:00
Carl Lerche
150c3160be Get large body writes working 2017-08-12 11:02:50 -07:00
Carl Lerche
570962353b Work on prioritization 2017-08-11 21:57:44 -07:00
Carl Lerche
3b2ad536d9 Fix bug in prioritization 2017-08-11 19:01:54 -07:00
Carl Lerche
8a15663ed2 Progress towards allowing large writes 2017-08-11 16:57:51 -07:00
Carl Lerche
32d4c2d5a9 Many more changes 2017-08-11 12:00:22 -07:00
Carl Lerche
012646ab46 Validate settings 2017-08-10 23:25:36 -07:00
Carl Lerche
23b2ef49cc Stub out priority 2017-08-10 23:17:21 -07:00
Carl Lerche
c439232ed2 Handle more H2 details 2017-08-10 21:08:57 -07:00
Carl Lerche
e2fac3e823 More tweaks 2017-08-10 20:35:41 -07:00
Carl Lerche
10fd4ae7ed Wire up trailers 2017-08-10 20:24:52 -07:00
Carl Lerche
48c9734249 Support receiving continuation frames 2017-08-10 20:14:00 -07:00
Carl Lerche
0d61832bf3 Extra log output 2017-08-10 16:13:36 -07:00
Carl Lerche
a61562f6b8 Add GoAway support 2017-08-10 14:19:46 -07:00
Carl Lerche
1974780504 Add a quick README 2017-08-10 14:00:51 -07:00
Carl Lerche
50e0ad2f2a Handle padding & stream priority when parsing headers frame 2017-08-10 13:55:36 -07:00
Carl Lerche
e7c07b0b12 More debug output 2017-08-10 13:34:04 -07:00
Carl Lerche
a1b03b7724 Trying to get something working 2017-08-10 13:15:40 -07:00
Carl Lerche
6c962491c6 Test and fix store::List::retain 2017-08-10 10:14:22 -07:00
Carl Lerche
7107e9fc06 More work on window updates 2017-08-09 22:34:22 -07:00
Carl Lerche
c118f86517 More flow control work 2017-08-09 16:42:55 -07:00
Carl Lerche
95bb95af01 More send flow control 2017-08-09 14:37:41 -07:00
Carl Lerche
a8c8cdb8e9 Fix build 2017-08-09 14:17:55 -07:00
Carl Lerche
dfec401fdf WIP: send flow control 2017-08-09 14:16:32 -07:00
Carl Lerche
87c4d36b0c Delete comments 2017-08-09 11:47:15 -07:00
Carl Lerche
0bf0e79132 Tweaks 2017-08-09 11:43:55 -07:00
Carl Lerche
f39e983af0 Actually get server working (maybe) 2017-08-09 10:49:49 -07:00
Carl Lerche
8f2b69c280 Get server working again (mostly) 2017-08-09 10:36:03 -07:00
Carl Lerche
38762a9711 Get server module compiling again 2017-08-08 22:25:05 -07:00
Carl Lerche
26df3a3698 Remove P generic from type 2017-08-08 22:11:11 -07:00
Carl Lerche
6a84a93f2e Merge pull request #12 from carllerche/stream-api
Restructure API using a handle per stream
2017-08-08 15:42:24 -07:00
Carl Lerche
8a5e0c3046 More tweaks 2017-08-08 14:26:38 -07:00
Carl Lerche
8485bf91e7 Start hooking up reset 2017-08-08 13:48:29 -07:00
Carl Lerche
314b7a1848 Wire in PushPromise 2017-08-08 13:32:36 -07:00
Carl Lerche
fa66323cec Akamai request kind of works 2017-08-08 09:47:29 -07:00
Carl Lerche
441a8416c6 Handle the remote returning a protocol error 2017-08-07 22:35:29 -07:00
Carl Lerche
71da8d121f Start hooking up sending data 2017-08-07 21:01:15 -07:00
Carl Lerche
6053ee059d Get receiving data working 2017-08-07 12:48:50 -07:00
Carl Lerche
71acfe3961 Start hooking up data receiving 2017-08-07 12:17:52 -07:00