forked from quic-go/quic-go
Merge pull request #1025 from lucas-clemente/fix-964
ignore STOP_WAITINGs, derive lower bound for packets to include in ACK
This commit is contained in:
@@ -523,8 +523,7 @@ func (s *session) handleFrames(fs []wire.Frame, encLevel protocol.EncryptionLeve
|
||||
s.closeRemote(qerr.Error(frame.ErrorCode, frame.ReasonPhrase))
|
||||
case *wire.GoawayFrame:
|
||||
err = errors.New("unimplemented: handling GOAWAY frames")
|
||||
case *wire.StopWaitingFrame:
|
||||
s.receivedPacketHandler.IgnoreBelow(frame.LeastUnacked)
|
||||
case *wire.StopWaitingFrame: // ignore STOP_WAITINGs
|
||||
case *wire.RstStreamFrame:
|
||||
err = s.handleRstStreamFrame(frame)
|
||||
case *wire.MaxDataFrame:
|
||||
@@ -616,7 +615,11 @@ func (s *session) handleRstStreamFrame(frame *wire.RstStreamFrame) error {
|
||||
}
|
||||
|
||||
func (s *session) handleAckFrame(frame *wire.AckFrame, encLevel protocol.EncryptionLevel) error {
|
||||
return s.sentPacketHandler.ReceivedAck(frame, s.lastRcvdPacketNumber, encLevel, s.lastNetworkActivityTime)
|
||||
if err := s.sentPacketHandler.ReceivedAck(frame, s.lastRcvdPacketNumber, encLevel, s.lastNetworkActivityTime); err != nil {
|
||||
return err
|
||||
}
|
||||
s.receivedPacketHandler.IgnoreBelow(s.sentPacketHandler.GetLowestPacketNotConfirmedAcked())
|
||||
return nil
|
||||
}
|
||||
|
||||
func (s *session) closeLocal(e error) {
|
||||
|
||||
Reference in New Issue
Block a user