Marten Seemann
af9fa7a555
queue stream-related control frames in the respective stream ( #4610 )
...
* use a separate method for queueing control frames from the streams map
* queue stream-related control frames in the respective stream
2024-08-04 15:42:56 -07:00
Marten Seemann
a147bee190
simplify frame queuing logic on 0-RTT rejection ( #4607 )
...
Even though we currently don't do so, sending MAX_DATA, MAX_STREAM_DATA
and MAX_STREAMS is allowed in 0-RTT.
2024-08-03 17:00:41 -07:00
Marten Seemann
42f04d4e02
refactor frame packing to logic to not access the streams map ( #4596 )
...
* avoid accessing the streams map when packing stream data
* avoid accessing the streams map when packing flow control frames
* remove streamGetter interface
2024-07-28 12:32:54 -07:00
Marten Seemann
fc79a77ffe
remove unused framer interface ( #4599 )
...
No functional change expected.
2024-07-24 16:55:09 -07:00
Marten Seemann
4a99b816ae
close connection when an abnormally large number of frames are queued ( #4369 )
...
Under normal circumstances, we should be able to send out control frames
right away, so we don't expect any queue to build up. To defend against
resource exhaustion attacks, we limit the control frame queue to 16384
elements.
2024-03-17 17:29:00 -07:00
Marten Seemann
fbaa941ea1
protocol: rename VersionNumber to Version ( #4295 )
2024-01-31 21:57:33 -08:00
Marten Seemann
574dc84c0c
limit the number of queued PATH_RESPONSE frames to 256 ( #4199 )
2023-12-12 20:17:09 -08:00
Marten Seemann
2797f85fc0
switch from unmaintained golang/mock to go.uber.org/mock ( #4050 )
2023-08-28 02:23:55 -07:00
Marten Seemann
0438eada95
use ackhandler.Frame directly, not as a pointer, remove its sync.Pool ( #3835 )
2023-06-02 04:56:18 -07:00
Marten Seemann
f8d24ef1e9
don't use closures for passing OnLost and OnAcked STREAM frame callbacks ( #3833 )
2023-06-02 04:14:04 -07:00
Marten Seemann
58cedf7a4f
rename module, adjust import paths to quic-go/quic-go ( #3680 )
2023-01-21 19:53:57 -08:00
Marten Seemann
00624f623d
refactor the framer to remove the version param from the constructor
2023-01-18 21:49:27 +13:00
Marten Seemann
1646fd545e
refactor send stream to remove version from constructor
2023-01-18 20:51:59 +13:00
Marten Seemann
2aa71ff76b
use a sync.Pool for ackhandler.Frames ( #3656 )
2023-01-17 23:15:02 -08:00
Marten Seemann
870fbe7ab0
migrate to Ginkgo v2
2022-10-11 16:38:44 +04:00
Marten Seemann
1aced95d41
use an array instead of a byte slice for Connection IDs
2022-08-29 11:30:31 +03:00
Marten Seemann
c741b6fc09
drop STREAM and *_BLOCKED frames from queue when 0-RTT is rejected
2021-03-09 17:59:11 +08:00
Marten Seemann
fa07078d81
rename DataBlockedFrame.DataLimit to MaximumData
2020-07-02 16:41:43 +07:00
Marten Seemann
f4519cfd32
rename MaxDataFrame.ByteOffset to MaximumData
2020-07-02 16:41:43 +07:00
Marten Seemann
fa381fffa0
add a function to tell if the framer has data
2020-06-01 09:31:11 +07:00
Marten Seemann
0edb3f2b93
return ackhandler.Frames from sendStream.popStreamFrame
2019-08-31 17:34:54 +07:00
Marten Seemann
e622207822
assemble ackhandler.Frames, not wire.Frames, when packing a packet
2019-08-31 17:34:54 +07:00
Marten Seemann
c0286b0c2e
fix calculation of the length of appended STREAM frames
...
For the last STREAM frame we omit the Length field. When packing STREAM
frames, we need to account for this byte saving when calculating the
length of the payload.
2019-08-10 14:55:27 +07:00
Marten Seemann
dba964f735
fix packing of maximum-size packets
2019-04-27 00:35:55 +09:00
Marten Seemann
109bb3fe62
pass the length of the packet being packet around in the packet packer
2019-04-22 10:26:11 +09:00
Marten Seemann
fbe8844006
remove some unneccessary type conversions
2019-02-27 19:30:55 +09:00
Marten Seemann
387613aa20
rename the BLOCKED from to DATA_BLOCKED
2018-11-10 09:05:06 +07:00
Marten Seemann
82508f1562
use tls-tris instead of mint
2018-10-26 16:18:49 +07:00
Marten Seemann
25847cfc30
handle the crypto stream separately in the packet packer
2018-10-01 11:25:57 -07:00
Marten Seemann
06db39836b
move queueing of control frames to the framer
2018-09-28 21:04:57 -06:00