forked from quic-go/quic-go
Merge pull request #1647 from lucas-clemente/remove-packet-packer-cansenddata
remove unneeded check if stream data can be sent in packet packer
This commit is contained in:
@@ -279,7 +279,7 @@ func (p *packetPacker) PackPacket() (*packedPacket, error) {
|
||||
}
|
||||
|
||||
maxSize := p.maxPacketSize - protocol.ByteCount(sealer.Overhead()) - headerLen
|
||||
frames, err := p.composeNextPacket(maxSize, p.canSendData(encLevel))
|
||||
frames, err := p.composeNextPacket(maxSize)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
@@ -351,10 +351,7 @@ func (p *packetPacker) maybePackCryptoPacket() (*packedPacket, error) {
|
||||
}, nil
|
||||
}
|
||||
|
||||
func (p *packetPacker) composeNextPacket(
|
||||
maxFrameSize protocol.ByteCount,
|
||||
canSendStreamFrames bool,
|
||||
) ([]wire.Frame, error) {
|
||||
func (p *packetPacker) composeNextPacket(maxFrameSize protocol.ByteCount) ([]wire.Frame, error) {
|
||||
var length protocol.ByteCount
|
||||
var frames []wire.Frame
|
||||
|
||||
@@ -368,10 +365,6 @@ func (p *packetPacker) composeNextPacket(
|
||||
frames, lengthAdded = p.framer.AppendControlFrames(frames, maxFrameSize-length)
|
||||
length += lengthAdded
|
||||
|
||||
if !canSendStreamFrames {
|
||||
return frames, nil
|
||||
}
|
||||
|
||||
// temporarily increase the maxFrameSize by the (minimum) length of the DataLen field
|
||||
// this leads to a properly sized packet in all cases, since we do all the packet length calculations with STREAM frames that have the DataLen set
|
||||
// however, for the last STREAM frame in the packet, we can omit the DataLen, thus yielding a packet of exactly the correct size
|
||||
@@ -478,10 +471,6 @@ func (p *packetPacker) writeAndSealPacket(
|
||||
return raw, nil
|
||||
}
|
||||
|
||||
func (p *packetPacker) canSendData(encLevel protocol.EncryptionLevel) bool {
|
||||
return encLevel == protocol.Encryption1RTT
|
||||
}
|
||||
|
||||
func (p *packetPacker) ChangeDestConnectionID(connID protocol.ConnectionID) {
|
||||
p.destConnID = connID
|
||||
}
|
||||
|
||||
@@ -428,17 +428,6 @@ var _ = Describe("Packet packer", func() {
|
||||
Expect(p.frames[2].(*wire.StreamFrame).Data).To(Equal([]byte("frame 3")))
|
||||
Expect(p.frames[2].(*wire.StreamFrame).DataLenPresent).To(BeFalse())
|
||||
})
|
||||
|
||||
It("doesn't send unencrypted stream data on a data stream", func() {
|
||||
pnManager.EXPECT().PeekPacketNumber().Return(protocol.PacketNumber(0x42), protocol.PacketNumberLen2)
|
||||
sealingManager.EXPECT().GetSealer().Return(protocol.EncryptionInitial, sealer)
|
||||
ackFramer.EXPECT().GetAckFrame()
|
||||
expectAppendControlFrames()
|
||||
// don't expect a call to framer.PopStreamFrames
|
||||
p, err := packer.PackPacket()
|
||||
Expect(err).NotTo(HaveOccurred())
|
||||
Expect(p).To(BeNil())
|
||||
})
|
||||
})
|
||||
|
||||
Context("retransmissions", func() {
|
||||
|
||||
Reference in New Issue
Block a user