Commit Graph

72 Commits

Author SHA1 Message Date
Carl Lerche
91aa1db2ff Misc protocol fixes
* Verify contiuation frame stream ID
* Fix sending RST_STREAM in certain cases.
2017-08-30 18:16:21 -04:00
Carl Lerche
0c8a94aa11 Fix send flow control bug
The send stream state is transitioned before data is buffered. As such,
the stream state could be closed while there is still data to be sent.
2017-08-30 18:16:21 -04:00
Carl Lerche
11d5f95236 Wire in trailers (#34)
Add send and receive trailer support.
2017-08-25 10:20:47 -07:00
Carl Lerche
b0e6867877 Fix warnings 2017-08-24 15:52:01 -07:00
Carl Lerche
6a6c9665cd Immediately apply initial window size to streams
The initial window size should be applied to streams once they leave the
IDLE state.
2017-08-24 11:03:33 -07:00
Carl Lerche
66dbde92ef Do not reuse next ptr for multiple linked lists
Because, you might think that each linked list has exclusive access to
the next pointer, but then there is an edge case that proves otherwise.
Also, debugging this kind of thing is annoying.
2017-08-23 20:35:53 -07:00
Carl Lerche
7e8c7fd2b8 Use FlowControl::available to size data frames (#29) 2017-08-23 20:34:58 -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
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
a1b03b7724 Trying to get something working 2017-08-10 13:15:40 -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
314b7a1848 Wire in PushPromise 2017-08-08 13:32:36 -07:00
Carl Lerche
1c55ad75ea More code 2017-08-04 17:25:39 -07:00
Carl Lerche
fc0a7eb898 More work 2017-08-04 12:12:22 -07:00
Carl Lerche
74b3852a58 Start working on prioritization 2017-08-03 22:44:19 -07:00