Lucas Clemente
|
d77120a921
|
add some useful options to example server (commented out)
|
2016-05-20 13:09:44 +02:00 |
|
Lucas Clemente
|
52d734f644
|
fix 0-RTT handshakes by not requiring SNOs for initial encryption
fixes #118, fixes #119
|
2016-05-20 13:05:51 +02:00 |
|
Marten Seemann
|
a1ba23aebd
|
add garbage collector for ReceivedPacketHandler
fixes #7
|
2016-05-20 17:09:47 +07:00 |
|
Marten Seemann
|
283f75aa98
|
remove unused byte masks from WriteUint functions
|
2016-05-20 14:02:54 +07:00 |
|
Marten Seemann
|
d571c0bfd5
|
remove stream from BlockManager when a WindowUpdate increases its offset
fixes #130
|
2016-05-20 12:26:10 +07:00 |
|
Lucas Clemente
|
7f907a17c2
|
reduce slice allocations in TruncateConnectionID
|
2016-05-20 01:09:04 +02:00 |
|
Lucas Clemente
|
224524c8d3
|
move to a faster chacha20poly1305 implementation
refs #125
|
2016-05-20 00:43:08 +02:00 |
|
Lucas Clemente
|
f86875f746
|
reject small CHLOs to prevent amplification attacks
fixes #1
|
2016-05-19 16:20:22 +02:00 |
|
Marten Seemann
|
c748a8dfc0
|
create FlowController interface
|
2016-05-19 19:49:33 +07:00 |
|
Lucas Clemente
|
d148943bc8
|
add pprof support to example server
|
2016-05-19 14:28:37 +02:00 |
|
Lucas Clemente
|
f96282b4d4
|
don't set RTO and small packet timeout when we can't actually send
fixes #126
|
2016-05-19 14:24:35 +02:00 |
|
Lucas Clemente
|
bd6d893cc4
|
replace time.After in session with a single timer
fixes #128, fixes #127
|
2016-05-19 14:24:35 +02:00 |
|
Marten Seemann
|
55727ecd96
|
implement writing of RstStreamFrames
|
2016-05-19 16:39:32 +07:00 |
|
Marten Seemann
|
ce26ec2789
|
place BlockedFrames before the corresponding StreamFrame in a packet
fixes #114
|
2016-05-19 14:32:29 +07:00 |
|
Marten Seemann
|
52de95f21f
|
don't ignore queued control frames when packing a packet
|
2016-05-19 13:15:47 +07:00 |
|
Marten Seemann
|
9930de68c8
|
send stream-level Blocked frames at the right time
fixes #110
|
2016-05-19 11:53:51 +07:00 |
|
Marten Seemann
|
f751566f00
|
don't panic on failed type assertion in PacketPacker
related to #93
|
2016-05-19 10:55:34 +07:00 |
|
Lucas Clemente
|
d14a27f193
|
update roadmap
|
2016-05-18 23:22:34 +02:00 |
|
Lucas Clemente
|
838291cd14
|
don't set the small packets timer when no packet is ready for sending
|
2016-05-18 23:22:23 +02:00 |
|
Lucas Clemente
|
4822def788
|
implement timeout-based retransmission (RTO)
fixes #56
|
2016-05-18 23:21:33 +02:00 |
|
Lucas Clemente
|
0a233a39b9
|
add utils.InfDuration constant
|
2016-05-18 22:43:32 +02:00 |
|
Lucas Clemente
|
753f219638
|
implement RTO computation in sentPacketHandler
ref #56
|
2016-05-18 20:50:22 +02:00 |
|
Lucas Clemente
|
a0228a9049
|
move congestion control from session to ackhandler
this simplifies things a bit, especially in prep for #56
|
2016-05-18 19:35:31 +02:00 |
|
Lucas Clemente
|
7a97f34fac
|
don't panic 🤓
fixes #93
|
2016-05-18 18:29:42 +02:00 |
|
Lucas Clemente
|
3dc50821d6
|
close the rcv-end of a h2 stream when the HEADERS has END_STREAM set
fixes #109
|
2016-05-18 13:33:36 +02:00 |
|
Lucas Clemente
|
b185ea04e1
|
add CloseRemote method to stream
ref #109
|
2016-05-18 13:33:36 +02:00 |
|
Marten Seemann
|
ceb5ef48c4
|
improve WindowUpdate thresholds
fixes #111
|
2016-05-18 18:19:18 +07:00 |
|
Marten Seemann
|
f147ebc9bb
|
implement basic connection level flow control
fixes #39
|
2016-05-18 17:30:08 +07:00 |
|
Marten Seemann
|
7105b37f91
|
don't allow renegotiation of flow control parameters
|
2016-05-18 14:03:04 +07:00 |
|
Marten Seemann
|
9ecbfa65ac
|
add methods needed for connection-level FlowController
ref #39
|
2016-05-18 12:30:25 +07:00 |
|
Marten Seemann
|
e0801262bc
|
actually send Blocked frames
fixes #100
|
2016-05-18 12:06:14 +07:00 |
|
Marten Seemann
|
daeb601cdc
|
keep track of highest byte received in FlowController
ref #39
|
2016-05-18 09:32:36 +07:00 |
|
Lucas Clemente
|
d6ef71a54c
|
simplify and reorganize session tests
|
2016-05-17 19:37:16 +02:00 |
|
Lucas Clemente
|
2864c97a70
|
remove outdated TODOs
|
2016-05-17 19:24:49 +02:00 |
|
Lucas Clemente
|
e8b2d9748a
|
capitalize TODOs
|
2016-05-17 19:24:49 +02:00 |
|
Lucas Clemente
|
d04ee083a7
|
remove TODOs from server.go
we don't send public resets, since we don't have any connection info yet
|
2016-05-17 19:24:49 +02:00 |
|
Lucas Clemente
|
8451fcf39b
|
slightly simplify public reset writing
|
2016-05-17 19:24:49 +02:00 |
|
Marten Seemann
|
1ef224d9bf
|
make the BlockedFrame queue thread-safe
|
2016-05-18 00:20:43 +07:00 |
|
Marten Seemann
|
b9e141d277
|
make the FlowController thread-safe
|
2016-05-18 00:11:52 +07:00 |
|
Lucas Clemente
|
15e7fe6c73
|
don't block the server when too many packets are queued in a session
fixes #35
|
2016-05-17 16:52:55 +02:00 |
|
Lucas Clemente
|
68b529a54c
|
refactor session to remove second Close parameter
fixes #102
|
2016-05-17 14:56:33 +02:00 |
|
Marten Seemann
|
42f3091e1b
|
send Blocked frames for flow control blocked streams
fixes #100
|
2016-05-17 19:00:11 +07:00 |
|
Lucas Clemente
|
078b563526
|
don't ignore window updates for unknown streams, see #108
|
2016-05-17 13:11:57 +02:00 |
|
Marten Seemann
|
d2766cad02
|
add FlowController method to determine if we need to send a Blocked frame
ref #100
|
2016-05-17 17:59:18 +07:00 |
|
Lucas Clemente
|
e4a7386ca1
|
add error message to internal errors
reopens #107
|
2016-05-17 12:56:33 +02:00 |
|
Lucas Clemente
|
1359c0e49c
|
fix a linter warning
|
2016-05-17 12:56:33 +02:00 |
|
Lucas Clemente
|
90abb40ffc
|
ignore data for closed streams
|
2016-05-17 12:56:29 +02:00 |
|
Lucas Clemente
|
d0e6b993bb
|
use new error codes throughout the server
fixes #86
|
2016-05-17 12:49:59 +02:00 |
|
Lucas Clemente
|
287ff59138
|
import error codes from chrome
|
2016-05-17 11:58:52 +02:00 |
|
Lucas Clemente
|
fdfc7f5502
|
speed up packet number tests by reducing iterations
|
2016-05-17 11:57:45 +02:00 |
|