Commit Graph

1625 Commits

Author SHA1 Message Date
Lucas Clemente
8b6a662223 Move flow control mocks to a separate package
This allows the other mocks to be used in the FC tests.
2017-06-09 12:08:26 +02:00
Lucas Clemente
050358bbc5 Mock CPM in streams map using gomock 2017-06-09 11:58:09 +02:00
Lucas Clemente
eeb2d8d821 Mock FlowControlManager using gomock 2017-06-08 16:06:31 +02:00
Lucas Clemente
94843e1919 Merge pull request #651 from lucas-clemente/simplify-streams
Remove unnecessary error return value in newStream
2017-06-08 11:42:22 +02:00
Lucas Clemente
1311629830 Remove unnecessary error return value in newStream 2017-06-08 11:09:11 +02:00
Lucas Clemente
df230ca1e2 Merge pull request #650 from lucas-clemente/timer
Extract timer wrapper out of the session
2017-06-07 23:16:00 +02:00
Lucas Clemente
d62703fc15 Extract timer wrapper out of the session 2017-06-07 20:07:16 +02:00
Lucas Clemente
7d1f3c6282 Merge pull request #646 from lucas-clemente/simplify-session
Simplification and refactoring of the session
2017-06-07 13:32:30 +02:00
Lucas Clemente
bfc4f36c81 Remove duplicate code in session creation 2017-06-07 11:41:03 +02:00
Lucas Clemente
f2959aa74a Simplify session closing 2017-06-07 11:41:03 +02:00
Marten Seemann
6be03b54d2 Merge pull request #645 from qdeconinck/fix-connection-stall-wuf-0
fix stalls when retransmitting connection-level Window Update Frames
2017-06-07 11:01:51 +02:00
Quentin De Coninck
48ed55a01d fix stalls when retransmitting connection-level Window Update Frames
When a Window Update Frame with streamID 0 is lost, we want to know
the receive window when retransmitting the frame. However, the connection
flow controller is not in streamFlowController, leading to map access errors
and then connections stalls since the sender is stuck by the not-updated
receive window it previously received.
2017-06-07 10:38:36 +02:00
Marten Seemann
a5be7c6928 Merge pull request #643 from lucas-clemente/fix-640
fix race condition when handling the header stream fails in h2quic client
2017-06-07 10:19:08 +02:00
Marten Seemann
05d7bc91ef fix race condition when handling the header stream fails in h2quic client 2017-06-06 17:08:00 +02:00
Lucas Clemente
500d9889f5 Merge pull request #637 from lucas-clemente/555-always-retransmit
Always send retransmissions, irrespective of congestion state
2017-06-06 14:35:44 +02:00
Lucas Clemente
e44298a9cc Always send retransmissions, irrespective of congestion state
This should probably only apply to RTOs, but we currently don't have a signal to distinguish them in the queue.
2017-06-06 13:16:33 +02:00
Lucas Clemente
5321723ef1 Merge pull request #639 from lucas-clemente/improve-drop-tests
Improve drop test scopes
2017-06-06 13:16:05 +02:00
Lucas Clemente
f33e12831e Improve drop test scopes 2017-06-06 11:45:18 +02:00
Lucas Clemente
67a5a1bda5 Merge pull request #635 from lucas-clemente/gosimple
Run gosimple on our tree
2017-06-06 09:49:37 +02:00
Lucas Clemente
4f93969101 Run gosimple on our tree 2017-06-06 09:33:46 +02:00
Marten Seemann
2f551a7cbe Merge pull request #631 from lucas-clemente/fix-620
simplify the dialing logic in the h2quic client, fix mutex in roundtripper held to long
2017-06-06 09:12:37 +02:00
Marten Seemann
c122428cb6 simply the dialing in the h2quic client
Fixes #620.
Dialing is now done lazily, when a request is executed.
2017-06-04 09:41:51 +02:00
Marten Seemann
c2a89e6b78 improve error message in the h2quic client 2017-06-03 17:41:17 +02:00
Marten Seemann
9054e5205f don't pass the roundtripper to the h2quic client 2017-06-02 23:08:14 +02:00
Marten Seemann
4d26d8bbd0 Merge pull request #630 from lucas-clemente/fix-521
add a quic.Config option to set the handshake timeout
2017-06-02 18:42:19 +02:00
Marten Seemann
4c3d4960bb privatize the h2quic client 2017-06-01 20:14:07 +02:00
Marten Seemann
37366ef882 add a handshake integration test for the handshake timeout 2017-06-01 20:08:07 +02:00
Marten Seemann
13a25a5ba5 use the correct error code for handshake timeouts 2017-06-01 20:02:57 +02:00
Marten Seemann
9040fd25e7 add a quic.Config option to set the handshake timeout 2017-06-01 19:47:28 +02:00
Marten Seemann
a025e89f03 Merge pull request #626 from lucas-clemente/fix-538
add tests measuring how many RTTs a handshake takes
2017-06-01 19:35:48 +02:00
Lucas Clemente
d7f7d234e7 Merge pull request #629 from twdkeule/add-multiple-drop-test
Added possibility to drop multiple packets in a row.

Fixes #575
2017-05-31 16:01:24 +02:00
Thomas De Keulenaer
0e0d62e809 Drop focus 2017-05-31 15:40:29 +02:00
Thomas De Keulenaer
a07eaac1fd Added possibility to drop multiple packets in a row. 2017-05-29 12:15:02 +02:00
Marten Seemann
f2ada4eef1 add tests using the source address validation 2017-05-27 18:53:28 +08:00
Marten Seemann
6b3165928f add tests measuring how many RTTs a handshake takes 2017-05-27 13:28:44 +08:00
Marten Seemann
15a51c06c3 Merge pull request #627 from lucas-clemente/fix-303
add a quic.Config option to verify source address tokens
2017-05-27 13:23:50 +08:00
Marten Seemann
f1985b98ff add a Changelog entry for the STK validation quic.Config option 2017-05-27 11:58:57 +08:00
Marten Seemann
6144ebed21 don’t panic if the STK doesn’t contain any data 2017-05-26 23:26:42 +08:00
Marten Seemann
ac21fc3349 Merge pull request #619 from lucas-clemente/fix-444
improve logging
2017-05-26 17:53:03 +08:00
Marten Seemann
0dbbb8d1b3 use the standard library log package for logging 2017-05-25 20:31:45 +08:00
Marten Seemann
ef4699adef use ASN1 to marshal source address tokens 2017-05-25 11:49:24 +08:00
Marten Seemann
afc9b11715 use a prefix to distinguish IPs and net.Addrs in source address tokens 2017-05-25 11:49:24 +08:00
Marten Seemann
87df63dd5f add a quic.Config option to verify source address tokes 2017-05-25 11:49:19 +08:00
Marten Seemann
eb72b494b2 generate valid tokens for remote addresses that are not UDP addresses 2017-05-20 23:27:40 +08:00
Marten Seemann
8e01921495 move comparison of the source address in the STK to the STKGenerator 2017-05-20 23:27:40 +08:00
Marten Seemann
9562df5838 move the STK generation from the ServerConfig to a separate struct 2017-05-20 23:27:40 +08:00
Marten Seemann
6cc6d49a10 save the STK expiry time as a time.Duration 2017-05-20 23:27:40 +08:00
Marten Seemann
81985f44bd move the STK expiration check to the cryptoSetup 2017-05-20 23:27:39 +08:00
Marten Seemann
e68e2d287a pass remote address to cryptoSetupServer 2017-05-20 23:27:38 +08:00
Marten Seemann
8489c94f4d Merge pull request #622 from lucas-clemente/travis-goversion
always use current minor Go version for Travis
2017-05-16 16:18:08 +08:00