mirror of
https://github.com/refraction-networking/uquic.git
synced 2025-04-05 13:17:36 +03:00
ackhandler: remove error return value of SentPacketHandler.ResetForRetry (#4834)
This commit is contained in:
parent
f41a6a644d
commit
d87e2bb649
5 changed files with 14 additions and 23 deletions
|
@ -1086,10 +1086,7 @@ func (s *connection) handleRetryPacket(hdr *wire.Header, data []byte, rcvTime ti
|
|||
|
||||
newDestConnID := hdr.SrcConnectionID
|
||||
s.receivedRetry = true
|
||||
if err := s.sentPacketHandler.ResetForRetry(rcvTime); err != nil {
|
||||
s.closeLocal(err)
|
||||
return false
|
||||
}
|
||||
s.sentPacketHandler.ResetForRetry(rcvTime)
|
||||
s.handshakeDestConnID = newDestConnID
|
||||
s.retrySrcConnID = &newDestConnID
|
||||
s.cryptoStreamHandler.ChangeConnectionID(newDestConnID)
|
||||
|
|
|
@ -16,7 +16,7 @@ type SentPacketHandler interface {
|
|||
ReceivedAck(f *wire.AckFrame, encLevel protocol.EncryptionLevel, rcvTime time.Time) (bool /* 1-RTT packet acked */, error)
|
||||
ReceivedBytes(protocol.ByteCount)
|
||||
DropPackets(protocol.EncryptionLevel)
|
||||
ResetForRetry(rcvTime time.Time) error
|
||||
ResetForRetry(rcvTime time.Time)
|
||||
SetHandshakeConfirmed()
|
||||
|
||||
// The SendMode determines if and what kind of packets can be sent.
|
||||
|
|
|
@ -864,7 +864,7 @@ func (h *sentPacketHandler) queueFramesForRetransmission(p *packet) {
|
|||
p.Frames = nil
|
||||
}
|
||||
|
||||
func (h *sentPacketHandler) ResetForRetry(now time.Time) error {
|
||||
func (h *sentPacketHandler) ResetForRetry(now time.Time) {
|
||||
h.bytesInFlight = 0
|
||||
var firstPacketSendTime time.Time
|
||||
h.initialPackets.history.Iterate(func(p *packet) (bool, error) {
|
||||
|
@ -911,7 +911,6 @@ func (h *sentPacketHandler) ResetForRetry(now time.Time) error {
|
|||
}
|
||||
}
|
||||
h.ptoCount = 0
|
||||
return nil
|
||||
}
|
||||
|
||||
func (h *sentPacketHandler) SetHandshakeConfirmed() {
|
||||
|
|
|
@ -1325,16 +1325,13 @@ var _ = Describe("SentPacketHandler", func() {
|
|||
perspective = protocol.PerspectiveClient
|
||||
})
|
||||
|
||||
It("considers the server's address validated right away", func() {
|
||||
})
|
||||
|
||||
It("queues outstanding packets for retransmission, cancels alarms and resets PTO count when receiving a Retry", func() {
|
||||
sentPacket(initialPacket(&packet{PacketNumber: 42}))
|
||||
Expect(handler.GetLossDetectionTimeout()).ToNot(BeZero())
|
||||
Expect(handler.bytesInFlight).ToNot(BeZero())
|
||||
Expect(handler.SendMode(time.Now())).To(Equal(SendAny))
|
||||
// now receive a Retry
|
||||
Expect(handler.ResetForRetry(time.Now())).To(Succeed())
|
||||
handler.ResetForRetry(time.Now())
|
||||
Expect(lostPackets).To(Equal([]protocol.PacketNumber{42}))
|
||||
Expect(handler.bytesInFlight).To(BeZero())
|
||||
Expect(handler.GetLossDetectionTimeout()).To(BeZero())
|
||||
|
@ -1369,7 +1366,7 @@ var _ = Describe("SentPacketHandler", func() {
|
|||
})
|
||||
Expect(handler.bytesInFlight).ToNot(BeZero())
|
||||
// now receive a Retry
|
||||
Expect(handler.ResetForRetry(time.Now())).To(Succeed())
|
||||
handler.ResetForRetry(time.Now())
|
||||
Expect(handler.bytesInFlight).To(BeZero())
|
||||
Expect(lostInitial).To(BeTrue())
|
||||
Expect(lost0RTT).To(BeTrue())
|
||||
|
@ -1390,7 +1387,7 @@ var _ = Describe("SentPacketHandler", func() {
|
|||
EncryptionLevel: protocol.EncryptionInitial,
|
||||
SendTime: now.Add(500 * time.Millisecond),
|
||||
}))
|
||||
Expect(handler.ResetForRetry(now.Add(time.Second))).To(Succeed())
|
||||
handler.ResetForRetry(now.Add(time.Second))
|
||||
Expect(handler.rttStats.SmoothedRTT()).To(Equal(time.Second))
|
||||
})
|
||||
|
||||
|
@ -1406,7 +1403,7 @@ var _ = Describe("SentPacketHandler", func() {
|
|||
EncryptionLevel: protocol.EncryptionInitial,
|
||||
SendTime: now.Add(2 * time.Millisecond),
|
||||
}))
|
||||
Expect(handler.ResetForRetry(now.Add(4 * time.Millisecond))).To(Succeed())
|
||||
handler.ResetForRetry(now.Add(4 * time.Millisecond))
|
||||
Expect(minRTTAfterRetry).To(BeNumerically(">", 4*time.Millisecond))
|
||||
Expect(handler.rttStats.SmoothedRTT()).To(Equal(minRTTAfterRetry))
|
||||
})
|
||||
|
@ -1425,7 +1422,7 @@ var _ = Describe("SentPacketHandler", func() {
|
|||
EncryptionLevel: protocol.EncryptionInitial,
|
||||
SendTime: now.Add(500 * time.Millisecond),
|
||||
}))
|
||||
Expect(handler.ResetForRetry(now.Add(time.Second))).To(Succeed())
|
||||
handler.ResetForRetry(now.Add(time.Second))
|
||||
Expect(handler.rttStats.SmoothedRTT()).To(BeZero())
|
||||
})
|
||||
})
|
||||
|
|
|
@ -384,11 +384,9 @@ func (c *MockSentPacketHandlerReceivedBytesCall) DoAndReturn(f func(protocol.Byt
|
|||
}
|
||||
|
||||
// ResetForRetry mocks base method.
|
||||
func (m *MockSentPacketHandler) ResetForRetry(rcvTime time.Time) error {
|
||||
func (m *MockSentPacketHandler) ResetForRetry(rcvTime time.Time) {
|
||||
m.ctrl.T.Helper()
|
||||
ret := m.ctrl.Call(m, "ResetForRetry", rcvTime)
|
||||
ret0, _ := ret[0].(error)
|
||||
return ret0
|
||||
m.ctrl.Call(m, "ResetForRetry", rcvTime)
|
||||
}
|
||||
|
||||
// ResetForRetry indicates an expected call of ResetForRetry.
|
||||
|
@ -404,19 +402,19 @@ type MockSentPacketHandlerResetForRetryCall struct {
|
|||
}
|
||||
|
||||
// Return rewrite *gomock.Call.Return
|
||||
func (c *MockSentPacketHandlerResetForRetryCall) Return(arg0 error) *MockSentPacketHandlerResetForRetryCall {
|
||||
c.Call = c.Call.Return(arg0)
|
||||
func (c *MockSentPacketHandlerResetForRetryCall) Return() *MockSentPacketHandlerResetForRetryCall {
|
||||
c.Call = c.Call.Return()
|
||||
return c
|
||||
}
|
||||
|
||||
// Do rewrite *gomock.Call.Do
|
||||
func (c *MockSentPacketHandlerResetForRetryCall) Do(f func(time.Time) error) *MockSentPacketHandlerResetForRetryCall {
|
||||
func (c *MockSentPacketHandlerResetForRetryCall) Do(f func(time.Time)) *MockSentPacketHandlerResetForRetryCall {
|
||||
c.Call = c.Call.Do(f)
|
||||
return c
|
||||
}
|
||||
|
||||
// DoAndReturn rewrite *gomock.Call.DoAndReturn
|
||||
func (c *MockSentPacketHandlerResetForRetryCall) DoAndReturn(f func(time.Time) error) *MockSentPacketHandlerResetForRetryCall {
|
||||
func (c *MockSentPacketHandlerResetForRetryCall) DoAndReturn(f func(time.Time)) *MockSentPacketHandlerResetForRetryCall {
|
||||
c.Call = c.Call.DoAndReturn(f)
|
||||
return c
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue