Commit Graph

3074 Commits

Author SHA1 Message Date
Marten Seemann
fd646ff877 include the packet number len in the length calculation for long headers 2018-11-25 14:16:28 +07:00
Marten Seemann
34dd046cb6 Merge pull request #1616 from lucas-clemente/drop-short-header-packets
drop short header packets for unknown sessions
2018-11-20 16:01:09 +07:00
Marten Seemann
44513a528c drop short header packets for unknown sessions 2018-11-20 12:21:26 +07:00
Marten Seemann
9edd783983 Merge pull request #1612 from lucas-clemente/stateless-reset-receiving
implement receiving of stateless resets
2018-11-20 10:22:43 +07:00
Marten Seemann
39e1e9a6f8 implement receiving of stateless resets 2018-11-20 10:07:30 +07:00
Marten Seemann
54c287c7e6 Merge pull request #1614 from lucas-clemente/rename-params-file
rename the file containing the parameters
2018-11-19 20:46:16 +07:00
Marten Seemann
590df11604 Merge pull request #1613 from lucas-clemente/remove-pnlen-6
remove 6 byte packet numbers
2018-11-19 20:45:42 +07:00
Marten Seemann
4f24750c6b Merge pull request #1609 from lucas-clemente/remove-late-packet-handling
remove late packet handling in packet handler map
2018-11-19 20:44:34 +07:00
Marten Seemann
e27e1cfdfb Merge pull request #1611 from lucas-clemente/simplify-packet-receiving
remove special case for testing when receiving packets in the session
2018-11-19 20:43:39 +07:00
Marten Seemann
b2783b2697 Merge pull request #1605 from lucas-clemente/fix-mock-filename
fix the file name of the mock crypto data handler
2018-11-19 20:42:46 +07:00
Marten Seemann
e654a71345 Merge pull request #1607 from lucas-clemente/fix-flaky-appveyor-test
fix a flaky packet handler map unit test on AppVeyor
2018-11-19 20:42:09 +07:00
Marten Seemann
7696bf59ea remove 6 byte packet numbers 2018-11-19 16:15:02 +07:00
Marten Seemann
82cfd38537 rename the file containing the parameters 2018-11-19 16:06:37 +07:00
Marten Seemann
6c7fbc4a79 remove special case for testing when receiving packets in the session 2018-11-19 15:08:08 +07:00
Marten Seemann
f0a7b6e6c3 remove late packet handling in packet handler map 2018-11-17 17:20:34 +07:00
Marten Seemann
26911583ae fix a flaky packet handler map unit test on AppVeyor 2018-11-17 09:02:00 +07:00
Marten Seemann
bd6567afe1 Merge pull request #1602 from lucas-clemente/fix-1597
immediately remove sessions that were closed remotely
2018-11-17 08:52:23 +07:00
Marten Seemann
001f76559a reduce the duration we keep the mapping for retired connection IDs alive
This duration only needs to cover typical reordering on the network.
5 seconds should be plenty.
2018-11-17 08:16:06 +07:00
Marten Seemann
e0bc72451b fix the file name of the mock crypto data handler 2018-11-17 08:08:48 +07:00
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