Commit Graph

2796 Commits

Author SHA1 Message Date
Marten Seemann
50397a979c only send BLOCKED frames if there is more data to send 2018-07-30 05:06:11 +07:00
Marten Seemann
fc87fbd354 Merge pull request #1456 from lucas-clemente/ack-ecn
implement parsing of ACK_ECN frames
2018-07-29 06:52:52 -04:00
Marten Seemann
3d087d522c implement parsing of ACK_ECN frames 2018-07-29 17:35:31 +07:00
Marten Seemann
6f0a027f0f Merge pull request #1442 from lucas-clemente/error-handling
split the session close method
2018-07-06 16:16:49 +07:00
Marten Seemann
469c4232b6 add a Changelog entry 2018-07-06 15:52:48 +07:00
Marten Seemann
6d3d6dc47d pass an error code to Session.CloseWithError 2018-07-06 15:51:38 +07:00
Marten Seemann
8b2992a243 split the Session.Close(error) in Close() and CloseWithError(error) 2018-07-06 15:51:35 +07:00
Marten Seemann
2bc5b7f532 Merge pull request #1445 from lucas-clemente/fix-1444
fix race condition when adding packet handlers to the multiplexer
2018-07-06 15:29:34 +07:00
Marten Seemann
17a1d7ce5d Merge pull request #1446 from lucas-clemente/remove-unused-null-aead
remove unused nullAEAD struct in the quic package
2018-07-06 15:29:00 +07:00
Marten Seemann
24c5023dd0 remove unused nullAEAD struct in the quic package 2018-07-06 13:17:04 +07:00
Marten Seemann
8b9662924f fix race condition when adding packet handlers to the multiplexer 2018-07-06 12:03:54 +07:00
Marten Seemann
e7f2c49198 Merge pull request #1441 from lucas-clemente/reuse-multiplexer
also use the multiplexer when dialing an address
2018-07-04 23:53:55 +07:00
Marten Seemann
595c396dc6 refactor packet handling in the multiplexer 2018-07-04 12:11:16 +07:00
Marten Seemann
f806f9146b also use the multiplexer when dialing an address 2018-07-04 10:38:40 +07:00
Marten Seemann
d24fb4b86d Merge pull request #1430 from lucas-clemente/conn-id-integration-test
add an integration test using different connection ID lengths
2018-07-03 19:40:54 +07:00
Marten Seemann
748bb42a21 add an integration test using different connection ID lengths 2018-07-03 18:58:40 +07:00
Marten Seemann
4d827a64d3 Merge pull request #1427 from lucas-clemente/connection-id-len
make the connection ID length configurable
2018-07-03 18:58:08 +07:00
Marten Seemann
f02dc92a32 make the connection ID length configurable 2018-07-03 18:34:31 +07:00
Marten Seemann
73f7636537 use a random length destination connection ID on the Initial packet
The destination connection ID on the Initial packet must be at least 8
bytes long. By using all valid values, we make sure that the everything
works correctly. The server chooses a new connection ID with the Retry
or Handshake packet it sends, so the overhead of this is negligible.
2018-07-03 18:01:41 +07:00
Marten Seemann
0bd7e744ff implement parsing of headers with different connection ID lengths 2018-07-03 18:01:41 +07:00
Marten Seemann
b26eb2705f Merge pull request #1436 from lucas-clemente/remove-closed-clients
remove closed clients from the multiplexer
2018-07-03 18:00:16 +07:00
Marten Seemann
b682af20cf add some more tests for the client multiplexer 2018-07-03 17:30:51 +07:00
Marten Seemann
0928e91e4d remove closed clients from the multiplexer 2018-07-03 17:30:49 +07:00
Marten Seemann
7658f10a51 Merge pull request #1429 from lucas-clemente/fix-1422
implement the disable_migration transport parameter and use it
2018-07-03 17:28:15 +07:00
Marten Seemann
680c392195 Merge pull request #1440 from lucas-clemente/fix-1439
fix race condition in client multiplexer test
2018-07-03 17:27:49 +07:00
Marten Seemann
b2978015fd fix race condition in client multiplexer test 2018-07-02 22:38:12 +07:00
Marten Seemann
6e299157d4 implement the disable_migration transport parameter and use it 2018-07-02 22:18:28 +07:00
Marten Seemann
eb8ee42d75 Merge pull request #1424 from lucas-clemente/header-refactoring
refactor header parsing
2018-07-02 21:46:06 +07:00
Marten Seemann
1d5fb4cec9 Merge pull request #1426 from lucas-clemente/fix-vnp-len
fix buffer size for version negotiation packets
2018-07-02 21:27:56 +07:00
Marten Seemann
3a1513e3a2 Merge pull request #1438 from lucas-clemente/fix-1437
fix a flaky proxy test
2018-07-02 21:26:57 +07:00
Marten Seemann
ff6a3d4c0b Merge pull request #1433 from lucas-clemente/multiplex-tests-quic-version
run multiplex integration tests with all supported QUIC versions
2018-07-02 21:25:49 +07:00
Marten Seemann
b54d0274f7 Merge pull request #1423 from lucas-clemente/fix-handshake-alarm
only fire the handshake alarm if handshake packets are outstanding
2018-07-02 21:24:10 +07:00
Marten Seemann
7772c67a2e Merge pull request #1432 from lucas-clemente/export-quic-42-43
export gQUIC versions 42 and 43
2018-07-02 21:22:55 +07:00
Marten Seemann
ace7f609a3 fix a flaky proxy test 2018-07-02 15:32:26 +07:00
Marten Seemann
879efb12b1 run multiplex integration tests with all supported QUIC versions 2018-07-02 10:49:44 +07:00
Marten Seemann
651d99d448 export gQUIC versions 42 and 43 2018-07-01 22:19:32 +07:00
Marten Seemann
1f4335ffce fix buffer size for version negotiation packets 2018-07-01 14:06:35 +07:00
Marten Seemann
4109c85c8a refactor header parsing in a version independent and dependent part 2018-07-01 09:01:30 +07:00
Marten Seemann
95ef15c6b1 only fire the handshake alarm if handshake packets are outstanding 2018-06-30 14:30:38 +07:00
Marten Seemann
74ed3f7037 remove writing of special Public Header packets
Version Negotiation Packets and Public Resets are written separately, so
we don't need to have code for that in the Public Header.
2018-06-30 12:48:42 +07:00
Marten Seemann
3f9212b5f7 Merge pull request #1354 from lucas-clemente/milestone-0.8.0
release 0.8.0
2018-06-27 09:56:43 +07:00
Marten Seemann
5cae625199 release 0.8.0 2018-06-26 16:38:01 +07:00
Marten Seemann
3aa6c99943 Merge pull request #1417 from lucas-clemente/remove-omit-conn-id
remove the OmitConnectionID field from the Header
2018-06-25 20:05:42 +07:00
Marten Seemann
7b96d158d2 remove the OmitConnectionID field from the Header struct
Instead, just look at the length of the destination connection ID.
2018-06-24 17:21:41 +07:00
Marten Seemann
fc57bf6c35 only set the destination connection ID for the Public Header 2018-06-24 16:47:59 +07:00
Marten Seemann
c9a9b57030 Merge pull request #1409 from lucas-clemente/multiplex-tests
add an integration test multiplexing multiple clients on one packet conn
2018-06-23 12:15:34 +07:00
Marten Seemann
e07411ebe6 add an integration test multiplexing two downloads on one connection 2018-06-23 11:33:56 +07:00
Marten Seemann
0b2e0c3146 Merge pull request #1407 from lucas-clemente/client-session-handling
multiplex multiple clients on one packet conn
2018-06-23 11:07:39 +07:00
Marten Seemann
8295a6b67c Merge pull request #1404 from lucas-clemente/self-rtt-integration-test
add a self integration test with different roundtrip times
2018-06-23 10:02:13 +07:00
Marten Seemann
2c05dbff07 multiplex multiple clients on one packet conn 2018-06-23 08:35:11 +07:00