Oliver Gould
50545963c9
update stream tracker TODOs
2017-07-17 22:42:56 +00:00
Oliver Gould
79d3aee1dc
refuse streams that would violate max concurrency settings.
...
improve ping control API
2017-07-17 22:18:03 +00:00
Oliver Gould
fb4f0bc5af
resets too
2017-07-17 08:18:38 +00:00
Oliver Gould
76cb8e15fd
move streammap to state.rs
2017-07-17 05:02:11 +00:00
Oliver Gould
990e5c5aae
hooray! we don't have to track data_len on its own
2017-07-17 04:27:44 +00:00
Oliver Gould
c1f9ff8fd8
wip: problems with Frame::len()
2017-07-17 01:07:21 +00:00
Oliver Gould
d448c53472
expose a ControlPing api
...
document transports
properly handle connection flow control tracking.
2017-07-16 23:37:31 +00:00
Oliver Gould
b0fd2bfac0
test flow control state
2017-07-16 20:11:36 +00:00
Oliver Gould
06d9978c53
nit on naming
2017-07-16 17:08:39 +00:00
Oliver Gould
76dbb5d285
wire up flow control polling through connection
2017-07-16 16:10:01 +00:00
Oliver Gould
85626f5a79
reintroduce state tracking, separate from flow tracking
2017-07-16 02:15:37 +00:00
Oliver Gould
e90a6e9250
wip: start splitting out stream management
2017-07-15 22:50:13 +00:00
Oliver Gould
59c92e1089
wire up remote settings application
2017-07-15 21:07:21 +00:00
Oliver Gould
1ed4b7e56a
wip: Sketch out stream state refactor
...
introduce the StreamTransporter trait, which exposes a map containing
all active stream states.
add skeletons for StreamTracker and FlowControl. StreamTracker drives
all state changes
2017-07-15 18:39:45 +00:00
Oliver Gould
d0c55c52e9
clarify terminology and fix several obvious bugs in the process
2017-07-13 06:43:28 +00:00
Oliver Gould
cc97653fd7
hmmmmm two tests are failing... handshake and get_with_204_response
2017-07-13 03:47:31 +00:00
Oliver Gould
052ff83e24
logging
2017-07-13 03:07:10 +00:00
Oliver Gould
cbd3e17283
ok, starting to look good
2017-07-13 02:24:36 +00:00
Carl Lerche
c061777663
Add large body test
2017-07-12 14:42:08 -07:00
Oliver Gould
41ffd1d44f
closer to flow control
2017-07-12 21:04:58 +00:00
Carl Lerche
36a1c6f045
More tests
2017-07-11 20:50:41 -07:00
Carl Lerche
fab9fa8ed2
More tests
2017-07-11 14:28:40 -07:00
Carl Lerche
4e0e01aa5c
More tests
2017-07-11 14:01:25 -07:00
Oliver Gould
b9f3556070
Merge branch 'master' into ver/flowio
2017-07-10 01:15:36 +00:00
Oliver Gould
d269029dd6
wip
2017-07-10 00:46:20 +00:00
Oliver Gould
d7b82cd50b
wip
2017-07-09 06:01:42 +00:00
Carl Lerche
6d1d54f104
Stub out window update
2017-07-08 22:36:24 -07:00
Carl Lerche
981af88838
Get data frames working
2017-07-08 22:23:44 -07:00
Oliver Gould
7632a016df
Merge branch 'master' into ver/flowio
2017-07-09 03:34:44 +00:00
Oliver Gould
36aa0892c2
wip
2017-07-09 03:34:31 +00:00
Carl Lerche
f6b6d0c7e8
Start state transition verification + refactors
2017-07-07 10:33:04 -07:00
Carl Lerche
a15f06ea7c
Add a test for reading client preface
2017-07-06 18:34:17 -07:00
Carl Lerche
4c389282e6
Fix bug with server reading preface
2017-07-06 15:03:27 -07:00
Carl Lerche
5982113c7a
Get a server working
2017-07-06 14:55:35 -07:00
Carl Lerche
cb5130e3c6
Start working on server
2017-06-30 14:36:13 -07:00
Oliver Gould
7f21954724
Implement ping_pong ( #1 )
...
* comments
* wip
* wip
* Sketch out pingpong and keepalive stack modules
PingPong responds to ping requests with acknowledgements.
KeepAlive issues ping requests on idle connections.
* remove keepalive for now
* commentary
* prettify ping_pong's poll
* test ping pong and passthrough
* add buffering test
* Use a fixed-size slice for ping payloads
* Improve pong dispatch
pong messages should be buffered until Stream::poll returns
Async::NotReady or Async::Ready(None) (i.e. such that it is not expected
to be polled again). pong messages are now dispatched when no more data
may be polled or the Sink half is activated.
* revert name change
* touchup
* wip
* Simplify Stream::poll
Now PingPong only holds at most one pending pong and the stream will not
produce additional frames unti the ping has been sent.
Furthermore, we shouldn't have to call inner.poll_complete quite so
frequently.
* avoid Bytes::split_to
* only use buf internally to Ping::load
2017-06-30 13:58:14 -07:00
Carl Lerche
a7b92d5ec2
Restructure hpack tests
2017-06-29 23:11:35 -07:00
Carl Lerche
63ffea61f5
Start writing tests
2017-06-29 20:59:21 -07:00
Carl Lerche
0564747121
Tweaks
2017-06-29 20:41:46 -07:00
Carl Lerche
076bf204e7
Point io-dump to the github repo
2017-06-29 10:11:26 -07:00
Carl Lerche
1842cb5dfc
Use latest tokio-timer
2017-06-27 13:31:46 -07:00
Carl Lerche
8e16e22172
question...
2017-06-27 12:49:27 -07:00
Carl Lerche
fee43a09c8
Fix warnings
2017-06-27 12:23:57 -07:00
Carl Lerche
79aa11ad32
Shuffle types around
2017-06-27 11:04:36 -07:00
Carl Lerche
1f85d54cff
Process response
2017-06-27 01:34:37 -07:00
Carl Lerche
7897b770e9
Get a request sent
2017-06-26 22:25:25 -07:00
Carl Lerche
ac2959e956
Get settings handshake working + other junk
2017-06-23 15:51:00 -07:00
Carl Lerche
fa21970656
Much work
2017-06-23 13:13:50 -07:00
Carl Lerche
a3950354aa
Header frame decoding
2017-06-20 09:16:21 -07:00
Carl Lerche
29951da962
FramedWrite
2017-06-19 13:34:08 -07:00