Commit Graph

586 Commits

Author SHA1 Message Date
Lucas Clemente
c0b2bfa247 fix two typos 2016-06-01 14:19:46 +02:00
Marten Seemann
4df007dc99 reduce MaxPacketSize to the value used by Chromium
ref #94, #117
2016-06-01 17:19:32 +07:00
Lucas Clemente
a6c62d1a26 add a stub for CloseGracefully to h2quic.Server
ref #153, #124
2016-06-01 12:07:06 +02:00
Marten Seemann
443fd530db send OverlappingStreamData errors for overlapping StreamFrame data
fixes #115
2016-06-01 16:57:01 +07:00
Marten Seemann
d10766906c limit number of gaps in received StreamFrame data
fixes #159
2016-06-01 15:41:29 +07:00
Lucas Clemente
dbaae7fc2b improve readme 2016-06-01 10:35:21 +02:00
Marten Seemann
9476ae499c implement a buffer for received StreamFrames
fixes #116, ref #115
2016-06-01 14:33:12 +07:00
Marten Seemann
2f49a9525a add DataLen function to StreamFrame 2016-06-01 09:23:26 +07:00
Lucas Clemente
981d4e7fb8 add support for ECDSA private keys
fixes #158
2016-05-31 23:06:38 +02:00
Lucas Clemente
8fa3e62de9 implement parsing and writing of GOAWAY frames 2016-05-31 19:22:27 +02:00
Lucas Clemente
4b2ab55435 fix a race when multiple requests were handled at the same time
fixes #157
2016-05-31 19:05:33 +02:00
Lucas Clemente
a7afffe700 add a SetQuicHeaders function to h2quic.Server
fixes #156
2016-05-31 16:02:39 +02:00
Lucas Clemente
ae778fc042 add mock close method to h2quic.Server 2016-05-31 14:13:03 +02:00
Lucas Clemente
33edcc5e88 make h2quic.Server.Serve panic
ref #124
2016-05-30 17:18:10 +02:00
Lucas Clemente
25c34723a3 implement h2quic.Server.ListenAndServeTLS
ref #124
2016-05-30 17:14:59 +02:00
Lucas Clemente
6b1669c116 add ListenAndServeQUIC convenience function 2016-05-30 14:41:21 +02:00
Lucas Clemente
bf3d89c795 improve public quic and h2 APIs, embedding http.Server in h2quic.Server
ref #124
2016-05-30 14:19:25 +02:00
Lucas Clemente
b0bc84c5aa improve crypto test coverage 2016-05-30 10:16:25 +02:00
Lucas Clemente
576253ba71 improve utils tests to 100% coverage 2016-05-28 08:12:04 +02:00
Lucas Clemente
a4773eb5ff validate length of crypto message
refs #123
2016-05-27 23:25:51 +02:00
Lucas Clemente
7c23ba7b07 validate lengths when parsing frames
ref #123
2016-05-27 23:07:29 +02:00
Lucas Clemente
c546f5c9dc enforce max streams per connection limit
fixes #13
2016-05-27 22:39:37 +02:00
Lucas Clemente
4af8ab3e9c fix a typo 2016-05-27 21:44:57 +02:00
Marten Seemann
ffbd68770e remove closed streams from WindowUpdateManager
fixes #99
2016-05-27 19:08:05 +07:00
Marten Seemann
d906492ae7 don't retransmit a packet after receiving a belated ACK
fixes #139
2016-05-27 18:36:28 +07:00
Marten Seemann
26d18976ff implement round-robin scheduling in StreamFrameQueue
fixes #148
2016-05-27 13:38:39 +07:00
Lucas Clemente
cdcd120d49 remove unnecessary cubic test
fixes #18
2016-05-26 17:16:56 +02:00
Marten Seemann
a152d2399c fix byte length calculation for split frames in StreamFrameQueue 2016-05-26 16:20:37 +07:00
Marten Seemann
a5e03bef8a cache length of StreamFrameQueue 2016-05-26 16:16:57 +07:00
Marten Seemann
c66fd78eaf improve StreamFrameQueue tests 2016-05-26 11:52:11 +07:00
Marten Seemann
91b4bdffd9 efficiently calculate the byte length of the StreamFrameQueue
fixes #146
2016-05-26 11:40:38 +07:00
Marten Seemann
758334f6aa move splitting of StreamFrames to StreamFrameQueue
work towards #146
2016-05-26 11:14:38 +07:00
Marten Seemann
93771708ae fix Writing of multiple StreamFrames in Stream.Write method
fixes #147
2016-05-26 11:04:48 +07:00
Marten Seemann
3a08041ab3 small improvements of Stream tests 2016-05-26 09:18:07 +07:00
Marten Seemann
be34c9e3f4 never write too much data in Stream.Write()
ref #145
2016-05-26 09:13:14 +07:00
Lucas Clemente
17865dbba7 fix a panic in stream with large window updates
fixes #143
2016-05-25 13:12:06 +02:00
Lucas Clemente
9e0d211f5e fix and optimize RTO computation
fixes #144
2016-05-25 12:34:54 +02:00
Lucas Clemente
d4a189b2d1 refactor timer calculation in sesssion to reduce syscalls 2016-05-24 17:42:47 +02:00
Lucas Clemente
55fe1390b3 remove some allocations
ref #129
2016-05-24 15:36:35 +02:00
Lucas Clemente
6c2932a872 small session fixes 2016-05-24 13:22:10 +02:00
Lucas Clemente
8e66aaf38d allow multiple bind parameters in example server
fixes #103
2016-05-24 13:01:57 +02:00
Lucas Clemente
fa2e34d360 require and generate source address tokens in crypto setup
fixes #121
2016-05-24 11:20:16 +02:00
Marten Seemann
e2254f1bbd limit number of packets stored in SentPacketHandler
fixes #140
2016-05-24 16:06:48 +07:00
Marten Seemann
931687e9a4 better function name in SentPacketHandler 2016-05-24 15:39:48 +07:00
Lucas Clemente
9539169fa4 implement source address token generation and validation
ref #121
2016-05-23 18:13:39 +02:00
Marten Seemann
c3f8837dfe improve StreamFrame tests 2016-05-23 12:39:02 +07:00
Marten Seemann
5dc7f8b0ca add missing test for StopWaitingManager call in SentPacketHandler 2016-05-22 23:59:23 +07:00
Marten Seemann
f33058c504 move the RetransmissionThreshold to the server parameters 2016-05-22 23:45:09 +07:00
Marten Seemann
33de224ce0 return error empty StreamFrames that don't have the FinBit set 2016-05-22 12:55:21 +07:00
Marten Seemann
68f450d549 log ConnectionClose packets in debug log 2016-05-22 12:01:32 +07:00