Commit Graph

3305 Commits

Author SHA1 Message Date
Marten Seemann
65cca7b726 immediately remove sessions that were closed remotely
We only need to keep sessions that were closed locally, in order to
retransmit the CONNECTION_CLOSE packet. For sessions that were closed by
the peer, we don't need to wait for any more packets, and there's also
no CONNECTION_CLOSE to retransmit. The same applies for sessions that
were destroyed when receiving a Version Negotiation or a Retry packet.
2018-11-16 21:22:32 +07:00
Marten Seemann
1dd0b9a635 rename the duration that we keep old connection ID mappings alive 2018-11-16 21:22:32 +07:00
Marten Seemann
a3831b2134 rename removing of connection IDs to retiring 2018-11-16 21:22:32 +07:00
Marten Seemann
c8ae4fada0 remove the close callback from the client 2018-11-16 21:22:32 +07:00
Marten Seemann
f94ad6840c Merge pull request #1601 from lucas-clemente/retransmit-connection-close
retransmit the CONNECTION_CLOSE packet when late packets arrive
2018-11-16 16:49:07 +07:00
Marten Seemann
9d06b2cfff retransmit the CONNECTION_CLOSE packet when late packets arrive 2018-11-15 16:52:02 +07:00
Marten Seemann
5e9e445f5b Merge pull request #1598 from lucas-clemente/conn-id-frames
implement the connection ID management frames
2018-11-13 21:50:45 +07:00
Marten Seemann
42edcf6258 implement the RETIRE_CONNECTION_ID frame 2018-11-13 17:21:19 +07:00
Marten Seemann
2021a21916 implement the NEW_CONNECTION_ID frame 2018-11-13 17:21:14 +07:00
Marten Seemann
b422876a73 Merge pull request #1593 from lucas-clemente/flow-control-params
use more reasonable flow control parameters
2018-11-13 10:36:35 +07:00
Marten Seemann
1bc83cb4cf Merge pull request #1591 from lucas-clemente/new-token-frame
implement the NEW_TOKEN frame
2018-11-12 23:55:50 +07:00
Marten Seemann
df7c6a221b use higher initial flow control windows 2018-11-12 23:38:07 +07:00
Marten Seemann
4b37ecb2b5 use the same default max flow control window sizes for client and server 2018-11-12 23:38:07 +07:00
Marten Seemann
cf104db629 implement parsing and writing of the NEW_TOKEN frame 2018-11-12 23:37:44 +07:00
Marten Seemann
c89c1f4cee Merge pull request #1590 from lucas-clemente/renumber-frames
renumber frames
2018-11-12 23:36:41 +07:00
Marten Seemann
190d1dcc59 Merge pull request #1595 from lucas-clemente/fix-1529
authenticate retries
2018-11-12 18:00:22 +07:00
Marten Seemann
59ab139720 renumber frame types 2018-11-12 17:26:42 +07:00
Marten Seemann
9065ec3410 use a single error for frame parsing errors 2018-11-12 17:25:46 +07:00
Marten Seemann
c37b698f68 Merge pull request #1596 from lucas-clemente/internalize-errors
internalize the qerr package
2018-11-12 15:54:39 +07:00
Marten Seemann
a0adcd71f6 Merge pull request #1589 from lucas-clemente/fix-1563
use stream counts
2018-11-12 15:46:44 +07:00
Marten Seemann
2b6a698792 Merge pull request #1592 from lucas-clemente/disable-flaky-appveyor-test
disable flaky client unit test on AppVeyor
2018-11-12 15:46:06 +07:00
Marten Seemann
3ffea5d8c4 internalize the qerr package 2018-11-11 12:44:16 +07:00
Marten Seemann
70cb67bd2a check that the server sends the correct original_connection_id 2018-11-11 11:00:40 +07:00
Marten Seemann
73ca6a06eb encode the original connection ID into the cookie 2018-11-10 17:12:50 +07:00
Marten Seemann
8c103be876 simplify the crypto setup constructors 2018-11-10 17:01:13 +07:00
Marten Seemann
c2aac727b9 implement the original_connection_id transport parameter 2018-11-10 16:41:11 +07:00
Marten Seemann
a56b85a49a disable flaky client unit test on AppVeyor 2018-11-10 10:06:20 +07:00
Marten Seemann
dd9ce2e668 replace the STREAM_ID_BLOCKED with the STREAMS_BLOCKED frame 2018-11-10 09:38:57 +07:00
Marten Seemann
9518c90c0a implement and use the MAX_STREAMS frame 2018-11-10 09:38:50 +07:00
Marten Seemann
0f931ca54e use a uint64 for stream counts 2018-11-10 09:05:33 +07:00
Marten Seemann
e8de94485c move more stream ID logic to the protocol package 2018-11-10 09:05:33 +07:00
Marten Seemann
05ecf9bc02 rename the STREAM_BLOCKED frame to STREAM_DATA_BLOCKED 2018-11-10 09:05:27 +07:00
Marten Seemann
387613aa20 rename the BLOCKED from to DATA_BLOCKED 2018-11-10 09:05:06 +07:00
Marten Seemann
4d3bafd44d Merge pull request #1587 from lucas-clemente/fix-stream-allowance
fix stream limit increase in the case of many open streams
2018-11-08 17:57:28 +07:00
Marten Seemann
c671e7b79c Merge pull request #1588 from lucas-clemente/renumber-transport-parameters
renumber transport parameters
2018-11-08 17:40:56 +07:00
Marten Seemann
6da4ef356f rename the initial stream limit transport parameters 2018-11-08 16:21:26 +07:00
Marten Seemann
f8612cda2c renumber the transport parameters 2018-11-08 16:19:45 +07:00
Marten Seemann
e7b6d6af00 fix stream limit increase in the case of many open streams 2018-11-08 15:09:11 +07:00
Marten Seemann
768004c4bc Merge pull request #1578 from lucas-clemente/transport-parameter-validity-check
check the validity of transport parameters when unmarshalling
2018-11-05 16:47:37 +07:00
Marten Seemann
c302d8ff81 check the validity of transport parameters when unmarshalling 2018-11-05 15:37:22 +07:00
Marten Seemann
8cdb903a1c Merge pull request #1584 from lucas-clemente/varint-transport-parameters
use varints for numeric transport parameters
2018-11-05 15:30:14 +07:00
Marten Seemann
cfc7c45f94 Merge pull request #1577 from lucas-clemente/remove-quic-clemente-io-from-client
replace quic.clemente.io by localhost in the client unit tests
2018-11-05 15:29:46 +07:00
Marten Seemann
b9eaa4f059 Merge pull request #1582 from lucas-clemente/rename-rst-stream-frame
rename the RST_STREAM frame to RESET_STREAM frame
2018-11-05 15:29:27 +07:00
Marten Seemann
66a72a1199 use varints for numeric transport parameters 2018-11-05 12:33:32 +07:00
Marten Seemann
022189dfda rename the RST_STREAM frame to RESET_STREAM frame 2018-11-04 12:26:02 +07:00
Marten Seemann
7087a16c7f Merge pull request #1573 from lucas-clemente/remove-hdr-from-frame-parsing
remove the header parameter for parsing frames
2018-11-03 09:35:14 +07:00
Marten Seemann
ce257f3f23 replace quic.clemente.io by localhost in the client unit tests 2018-11-03 09:31:45 +07:00
Marten Seemann
2eed03c747 remove the header parameter for parsing frames
It was only needed for parsing STOP_WAITING frames.
2018-11-03 09:23:22 +07:00
Marten Seemann
f0354c0d94 Merge pull request #1574 from lucas-clemente/one-packet-unpacker
combine packetUnpackerBase and packetUnpacker
2018-11-02 19:18:49 +07:00
Marten Seemann
bc359abf73 Merge pull request #1572 from lucas-clemente/remove-dup-streamsMap-init
remove duplicate initialization of the streamsMap
2018-11-02 19:01:21 +07:00