Commit Graph

3094 Commits

Author SHA1 Message Date
Marten Seemann
fb550aaa10 remove unused constant MaxClientHellos 2018-11-27 09:28:17 +07:00
Marten Seemann
dd81dfdbdd Merge pull request #1629 from lucas-clemente/remove-unused-uint
remove unused ReadUint64 and WriteUint64 functions
2018-11-26 17:52:27 +07:00
Marten Seemann
6058f580be remove unused ReadUint64 and WriteUint64 functions 2018-11-26 16:48:36 +07:00
Marten Seemann
42b74c7b87 Merge pull request #1626 from lucas-clemente/move-header-parsing
move header parsing to the session
2018-11-26 16:18:57 +07:00
Marten Seemann
c5ca6fd7e5 parse the extended header in the session 2018-11-26 15:57:54 +07:00
Marten Seemann
70ce6a5814 parse the whole Long Header, if the version is known 2018-11-26 15:57:54 +07:00
Marten Seemann
b740d57c61 embed the Header in the ExtendedHeader 2018-11-26 15:57:54 +07:00
Marten Seemann
af157408de move parsing of extended headers to the same file as the struct 2018-11-26 15:57:54 +07:00
Marten Seemann
9bcedd988d move parsing of version negotiation packets to the wire.Header 2018-11-26 15:57:54 +07:00
Marten Seemann
5581fee684 don't log the packet number for undecryptable packets
The packet number will be covered by header encryption, so we won't be
able to read it if a packet is undecryptable.
2018-11-26 15:57:54 +07:00
Marten Seemann
7b91ba56b6 rename the wire.InvariantHeader to Header 2018-11-26 15:57:54 +07:00
Marten Seemann
bf96707f48 rename the wire.Header to ExtendedHeader
It's not encrypted yet.
2018-11-26 15:57:54 +07:00
Marten Seemann
cef26922b4 when parsing the header from the invariant header, start from first byte
This will be needed once we implement header encryption, because the
flags in the first byte are encrypted.
2018-11-26 15:57:54 +07:00
Marten Seemann
8856384b83 Merge pull request #1627 from lucas-clemente/remove-header-writing-perspective
remove unused perspective from header writing
2018-11-26 15:47:00 +07:00
Marten Seemann
cfb911bd94 Merge pull request #1624 from lucas-clemente/remove-last-rcvd-packet-number
remove the lastRcvdPacketNumber from the session
2018-11-26 15:46:19 +07:00
Marten Seemann
00f097b25d Merge pull request #1625 from lucas-clemente/remove-header-parsing-perspective
remove unused perspective from header parsing
2018-11-26 15:45:48 +07:00
Marten Seemann
6150c19dcb remove unused perspective from header writing 2018-11-26 13:43:27 +07:00
Marten Seemann
902853784b remove unused perspective from header parsing 2018-11-26 11:14:39 +07:00
Marten Seemann
a3f91d3c98 remove the lastRcvdPacketNumber from the session
This variable was only used to pass the packet number an ACK was
received with to the SentPacketHandler. The better way to do this is by
passing the value to handleAckFrame() directly.
2018-11-26 08:47:02 +07:00
Marten Seemann
8a0fa1f8c6 Merge pull request #1623 from lucas-clemente/fix-1377
include the packet number length in the length calculation for long headers
2018-11-25 14:40:04 +07:00
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