Remove non-retransmittable logic from packer, this is now in ackhandler

This commit is contained in:
Lucas Clemente
2017-06-19 18:29:07 +02:00
parent e50a03148d
commit f1c2163f14
3 changed files with 2 additions and 54 deletions

View File

@@ -118,17 +118,8 @@ func (p *packetPacker) packPacket(leastUnacked protocol.PacketNumber, handshakeP
if p.stopWaiting == nil {
return nil, errors.New("PacketPacker BUG: Handshake retransmissions must contain a StopWaitingFrame")
}
payloadFrames = append(payloadFrames, p.stopWaiting)
// don't retransmit Acks and StopWaitings
for _, f := range handshakePacketToRetransmit.Frames {
switch f.(type) {
case *frames.AckFrame:
continue
case *frames.StopWaitingFrame:
continue
}
payloadFrames = append(payloadFrames, f)
}
payloadFrames = []frames.Frame{p.stopWaiting}
payloadFrames = append(payloadFrames, handshakePacketToRetransmit.Frames...)
} else if isCryptoStreamFrame {
maxLen := protocol.MaxFrameAndPublicHeaderSize - protocol.NonForwardSecurePacketSizeReduction - publicHeaderLength
payloadFrames = []frames.Frame{p.streamFramer.PopCryptoStreamFrame(maxLen)}