TUN-5623: Configure quic max datagram frame size to 1350 bytes for none Windows platforms

This commit is contained in:
cthuang
2022-01-06 12:17:10 +00:00
parent ef3152f334
commit 6fa58aadba
44 changed files with 11652 additions and 57 deletions

View File

@@ -316,7 +316,10 @@ var newSession = func(
RetrySourceConnectionID: retrySrcConnID,
}
if s.config.EnableDatagrams {
params.MaxDatagramFrameSize = protocol.MaxDatagramFrameSize
params.MaxDatagramFrameSize = protocol.ByteCount(s.config.MaxDatagramFrameSize)
if params.MaxDatagramFrameSize == 0 {
params.MaxDatagramFrameSize = protocol.DefaultMaxDatagramFrameSize
}
}
if s.tracer != nil {
s.tracer.SentTransportParameters(params)
@@ -440,7 +443,7 @@ var newClientSession = func(
InitialSourceConnectionID: srcConnID,
}
if s.config.EnableDatagrams {
params.MaxDatagramFrameSize = protocol.MaxDatagramFrameSize
params.MaxDatagramFrameSize = protocol.ByteCount(s.config.MaxDatagramFrameSize)
}
if s.tracer != nil {
s.tracer.SentTransportParameters(params)
@@ -1409,7 +1412,7 @@ func (s *session) handleAckFrame(frame *wire.AckFrame, encLevel protocol.Encrypt
}
func (s *session) handleDatagramFrame(f *wire.DatagramFrame) error {
if f.Length(s.version) > protocol.MaxDatagramFrameSize {
if f.Length(s.version) > protocol.ByteCount(s.config.MaxDatagramFrameSize) {
return &qerr.TransportError{
ErrorCode: qerr.ProtocolViolation,
ErrorMessage: "DATAGRAM frame too large",