Commit Graph

1185 Commits

Author SHA1 Message Date
Lucas Clemente
1b57a9f317 Merge pull request #381 from lucas-clemente/wip-resetstreams
properly implement handling of RST_STREAM frames
2017-01-04 19:30:01 +01:00
Marten Seemann
fd5d5d35dd add tests for frame logging 2017-01-04 14:47:01 +07:00
Marten Seemann
bc2a610912 improve logging of AckFrames 2017-01-04 13:00:59 +07:00
Marten Seemann
863467f344 validate XLCT tag in client hello
fixes #363
2017-01-04 11:41:43 +07:00
Marten Seemann
98ff7ccb50 use FNV1a hash for cached certificates
fixes #383
2017-01-04 10:56:36 +07:00
Marten Seemann
8ce763682a send a RstStreamFrame when receiving a RstStreamFrame on an open stream
fixes #378
2017-01-03 17:51:56 +07:00
Marten Seemann
544a58a038 return total bytes sent when resetting a stream in the flow controller 2017-01-03 16:09:18 +07:00
Marten Seemann
9e09198df6 don’t return data for writing from a stream if it was closed with an error 2017-01-03 16:07:18 +07:00
Marten Seemann
bf0caf3c03 pass the byte offset of a RstStreamFrame to the flow controller
fixes #377
2017-01-03 12:37:45 +07:00
Marten Seemann
74edf9caad improve errors returned for flow control violations 2017-01-03 12:01:27 +07:00
Marten Seemann
fb3f753c94 add method to reset a stream at a byte offset to flow controller
ref #377
2017-01-03 11:32:42 +07:00
Marten Seemann
fe9da30cb2 update certificate for tests 2017-01-03 10:07:36 +07:00
Lucas Clemente
aa79516395 Merge pull request #376 from lucas-clemente/fix-360
prevent version downgrade attacks
2016-12-27 18:08:09 +01:00
Marten Seemann
d39c2a3027 validate version tag in CHLO to prevent version downgrade attacks
fixes #360
2016-12-23 15:31:52 +01:00
Marten Seemann
f72154e30b require version tag in CHLOs
ref #360
2016-12-23 15:31:52 +01:00
Marten Seemann
0fc42896e0 remove stray println in test 2016-12-22 14:37:55 +07:00
Lucas Clemente
294cef3354 Merge pull request #373 from lucas-clemente/fix-371
wait until the run loop has stopped before returning Session.Close()
2016-12-20 09:39:50 +01:00
Marten Seemann
0de6368bbb fix detection if the Session was already closed before 2016-12-20 10:23:44 +07:00
Marten Seemann
156c23f2b7 wait until the run loop has stopped before returning Session.Close()
fixes #371
2016-12-19 20:35:21 +07:00
Lucas Clemente
facaab7ff7 properly handle non-header h2 frames on stream 3
fixes #370
2016-12-14 11:54:26 +01:00
Lucas Clemente
bd3c7a96f9 add Google to license file 2016-12-14 11:54:01 +01:00
Marten Seemann
3b4feedb2c add support for server-side opened streams
fixes #296
2016-12-09 23:14:15 +07:00
Marten Seemann
10f8156951 remove unused function from streamsMap 2016-12-09 17:56:04 +07:00
Marten Seemann
c12508c3c9 use a mock ConnectionParametersManager in quic tests 2016-12-08 21:50:10 +07:00
Marten Seemann
ba85908fd7 use a mock ConnectionParameterManager in flow controller tests 2016-12-08 18:52:46 +07:00
Marten Seemann
ebc053dbe0 create interface for the ConnectionParametersManager 2016-12-08 18:39:14 +07:00
Marten Seemann
5af50c8fd0 correctly read MIDS and MSPC parameter
fixes #367
2016-12-08 16:15:31 +07:00
Marten Seemann
11d786fe28 log timestamp when packets are sent and received 2016-12-06 22:52:20 +07:00
Marten Seemann
f59544401b simplify truncated connection IDs in ConnectionParametersManager 2016-12-06 22:04:42 +07:00
Lucas Clemente
dfa18f8a5b Merge pull request #353 from carlosmn/no-gopath-certs
Don't rely on GOPATH to load the certificates or error codes
2016-12-03 16:44:50 +01:00
Marten Seemann
93cde5faa7 add Go 1.8beta1 for Travis 2016-12-03 14:31:19 +07:00
Marten Seemann
2213e567a2 update Go versions for CIs 2016-12-03 14:26:22 +07:00
Marten Seemann
4e8a2ee2b1 validate KEXS in client hellos
fixes #364
2016-12-03 14:24:55 +07:00
Marten Seemann
62a38f24d7 validate AEAD tag in client hellos
fixes #365
2016-12-03 14:16:54 +07:00
Marten Seemann
c6ea0e0b7a use VersionWhatever in AckFrame tests 2016-12-02 22:37:31 +07:00
Marten Seemann
295f6c78d9 correctly parse ACK frames with LargestAcked 0
fixes #362
2016-12-02 22:32:10 +07:00
Carlos Martín Nieto
327856e31c Don't rely on GOPATH to load the certificates or error codes
GOPATH is a list of paths, similar to PATH. If someone does have a list
set, the tests will try to use the full list as a path prefix to load
the certificates, which won't work.

But even handling GOPATH as a list does not solve the issue of what
certificate or error_codes.go file to load, since the code might not be
under the first one it finds.

Instead, use the runtime functionality to get the filename of the path
of the project at compilation time and perform the lookups relative to
that, which guarantees that we're loading the files from the path of the
code that is running.
2016-12-02 13:52:12 +01:00
Marten Seemann
3c7872c7b3 ignore delayed packets with a version mismatched
fixes #359
2016-12-02 13:48:48 +07:00
Marten Seemann
21c6a015de create ServerConfigs with random OBIT value
fixes #356
2016-11-28 19:52:23 +07:00
Marten Seemann
6602101288 verify OBIT value in client nonce
fixes #350
2016-11-28 19:26:46 +07:00
Marten Seemann
bbbc24c431 improve logging of StopWaitingFrames 2016-11-28 11:27:54 +07:00
Marten Seemann
cedbc819d3 only start new session if the client sends a version in the PublicHeader
fixes #349
2016-11-27 22:54:38 +07:00
Marten Seemann
2ae196761b reject CHLOs with wrong length client nonces
fixes #352
2016-11-27 21:18:14 +07:00
Lucas Clemente
6d6e8f941a Merge pull request #340 from lucas-clemente/fix-106
implement receive flow control window auto tuning
2016-11-18 22:10:39 +01:00
Marten Seemann
0d6356d9d8 rename PublicHeader.WritePublicHeader to PublicHeader.Write 2016-11-06 22:34:16 +07:00
Marten Seemann
877f62505f fix race condition in updConn
fixes #345
2016-11-02 20:03:19 +07:00
Marten Seemann
ca80df28d8 remove unnecessary mutex from receivedPacketHistory
fixes #335
2016-11-02 17:21:03 +07:00
Marten Seemann
9fba032637 set empty tls.ConnectionState in HTTP request
fixes #342
2016-11-02 16:48:17 +07:00
Marten Seemann
a2362f8575 fix flaky integration test suite setup 2016-11-02 13:30:08 +07:00
Marten Seemann
76cf0a2345 concatenate Cookie HPACK headers for the HTTP request
fixes #338
2016-11-01 19:54:14 +02:00