Marten Seemann
767dbdd545
put back packet buffers after processing a packet
...
This introduces a reference counter in the packet buffer, which will be
used to process coalesced packets.
2019-01-01 09:50:29 +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
9bcedd988d
move parsing of version negotiation packets to the wire.Header
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
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
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
fd646ff877
include the packet number len in the length calculation for long headers
2018-11-25 14:16:28 +07:00
Marten Seemann
44513a528c
drop short header packets for unknown sessions
2018-11-20 12:21:26 +07:00
Marten Seemann
39e1e9a6f8
implement receiving of stateless resets
2018-11-20 10:07:30 +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
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
9d06b2cfff
retransmit the CONNECTION_CLOSE packet when late packets arrive
2018-11-15 16:52:02 +07:00
Marten Seemann
3266e36811
drop support for gQUIC
2018-10-30 10:20:39 +07:00
Marten Seemann
46f8c07daa
improve the version negotiation integration test
2018-08-27 09:29:26 +07:00
Marten Seemann
ad5a3e2fa0
also use the multiplexer for the server
2018-08-08 10:03:22 +07:00
Marten Seemann
c8d20e86d7
move listening from the multiplexer to the packet handler map
2018-08-08 10:03:20 +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
2c05dbff07
multiplex multiple clients on one packet conn
2018-06-23 08:35:11 +07:00
Marten Seemann
dacc94ccba
rename the sessionMap to packetHandlerMap
2018-06-23 08:20:29 +07:00