From 5422e4c68c63bdc48123afe5b6d64c99943e2c5d Mon Sep 17 00:00:00 2001 From: Marten Seemann Date: Tue, 5 Aug 2025 06:03:02 +0200 Subject: [PATCH] ackhandler: remove unused time from receivedPacketHandler.ReceivedPacket (#5277) * ackhandler: remove unused time from receivedPacketHandler.ReceivedPacket No functional change expected. * fix typo Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * also fix typo in tests --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- internal/ackhandler/received_packet_handler.go | 4 ++-- internal/ackhandler/received_packet_tracker.go | 6 +++--- internal/ackhandler/received_packet_tracker_test.go | 13 ++++++------- 3 files changed, 11 insertions(+), 12 deletions(-) diff --git a/internal/ackhandler/received_packet_handler.go b/internal/ackhandler/received_packet_handler.go index eda0826c0..0076b3903 100644 --- a/internal/ackhandler/received_packet_handler.go +++ b/internal/ackhandler/received_packet_handler.go @@ -41,14 +41,14 @@ func (h *receivedPacketHandler) ReceivedPacket( h.sentPackets.ReceivedPacket(encLevel, rcvTime) switch encLevel { case protocol.EncryptionInitial: - return h.initialPackets.ReceivedPacket(pn, ecn, rcvTime, ackEliciting) + return h.initialPackets.ReceivedPacket(pn, ecn, ackEliciting) case protocol.EncryptionHandshake: // The Handshake packet number space might already have been dropped as a result // of processing the CRYPTO frame that was contained in this packet. if h.handshakePackets == nil { return nil } - return h.handshakePackets.ReceivedPacket(pn, ecn, rcvTime, ackEliciting) + return h.handshakePackets.ReceivedPacket(pn, ecn, ackEliciting) case protocol.Encryption0RTT: if h.lowest1RTTPacket != protocol.InvalidPacketNumber && pn > h.lowest1RTTPacket { return fmt.Errorf("received packet number %d on a 0-RTT packet after receiving %d on a 1-RTT packet", pn, h.lowest1RTTPacket) diff --git a/internal/ackhandler/received_packet_tracker.go b/internal/ackhandler/received_packet_tracker.go index d1d26f4ab..291a8f122 100644 --- a/internal/ackhandler/received_packet_tracker.go +++ b/internal/ackhandler/received_packet_tracker.go @@ -24,9 +24,9 @@ func newReceivedPacketTracker() *receivedPacketTracker { return &receivedPacketTracker{packetHistory: *newReceivedPacketHistory()} } -func (h *receivedPacketTracker) ReceivedPacket(pn protocol.PacketNumber, ecn protocol.ECN, rcvTime time.Time, ackEliciting bool) error { +func (h *receivedPacketTracker) ReceivedPacket(pn protocol.PacketNumber, ecn protocol.ECN, ackEliciting bool) error { if isNew := h.packetHistory.ReceivedPacket(pn); !isNew { - return fmt.Errorf("recevedPacketTracker BUG: ReceivedPacket called for old / duplicate packet %d", pn) + return fmt.Errorf("receivedPacketTracker BUG: ReceivedPacket called for old / duplicate packet %d", pn) } //nolint:exhaustive // Only need to count ECT(0), ECT(1) and ECN-CE. @@ -102,7 +102,7 @@ func newAppDataReceivedPacketTracker(logger utils.Logger) *appDataReceivedPacket } func (h *appDataReceivedPacketTracker) ReceivedPacket(pn protocol.PacketNumber, ecn protocol.ECN, rcvTime time.Time, ackEliciting bool) error { - if err := h.receivedPacketTracker.ReceivedPacket(pn, ecn, rcvTime, ackEliciting); err != nil { + if err := h.receivedPacketTracker.ReceivedPacket(pn, ecn, ackEliciting); err != nil { return err } if pn >= h.largestObserved { diff --git a/internal/ackhandler/received_packet_tracker_test.go b/internal/ackhandler/received_packet_tracker_test.go index b823b48b0..7c72dc643 100644 --- a/internal/ackhandler/received_packet_tracker_test.go +++ b/internal/ackhandler/received_packet_tracker_test.go @@ -13,21 +13,20 @@ import ( func TestReceivedPacketTrackerGenerateACKs(t *testing.T) { tracker := newReceivedPacketTracker() - baseTime := time.Now().Add(-10 * time.Second) - require.NoError(t, tracker.ReceivedPacket(protocol.PacketNumber(3), protocol.ECNNon, baseTime, true)) + require.NoError(t, tracker.ReceivedPacket(protocol.PacketNumber(3), protocol.ECNNon, true)) ack := tracker.GetAckFrame() require.NotNil(t, ack) require.Equal(t, []wire.AckRange{{Smallest: 3, Largest: 3}}, ack.AckRanges) require.Zero(t, ack.DelayTime) - require.NoError(t, tracker.ReceivedPacket(protocol.PacketNumber(4), protocol.ECNNon, baseTime.Add(time.Second), true)) + require.NoError(t, tracker.ReceivedPacket(protocol.PacketNumber(4), protocol.ECNNon, true)) ack = tracker.GetAckFrame() require.NotNil(t, ack) require.Equal(t, []wire.AckRange{{Smallest: 3, Largest: 4}}, ack.AckRanges) require.Zero(t, ack.DelayTime) - require.NoError(t, tracker.ReceivedPacket(protocol.PacketNumber(1), protocol.ECNNon, baseTime.Add(time.Second), true)) + require.NoError(t, tracker.ReceivedPacket(protocol.PacketNumber(1), protocol.ECNNon, true)) ack = tracker.GetAckFrame() require.NotNil(t, ack) require.Equal(t, []wire.AckRange{ @@ -37,10 +36,10 @@ func TestReceivedPacketTrackerGenerateACKs(t *testing.T) { require.Zero(t, ack.DelayTime) // non-ack-eliciting packets don't trigger ACKs - require.NoError(t, tracker.ReceivedPacket(protocol.PacketNumber(10), protocol.ECNNon, baseTime.Add(5*time.Second), false)) + require.NoError(t, tracker.ReceivedPacket(protocol.PacketNumber(10), protocol.ECNNon, false)) require.Nil(t, tracker.GetAckFrame()) - require.NoError(t, tracker.ReceivedPacket(protocol.PacketNumber(11), protocol.ECNNon, baseTime.Add(10*time.Second), true)) + require.NoError(t, tracker.ReceivedPacket(protocol.PacketNumber(11), protocol.ECNNon, true)) ack = tracker.GetAckFrame() require.NotNil(t, ack) require.Equal(t, []wire.AckRange{ @@ -181,6 +180,6 @@ func TestAppDataReceivedPacketTrackerIgnoreBelow(t *testing.T) { // make sure that old packets are not accepted require.ErrorContains(t, tr.ReceivedPacket(4, protocol.ECNNon, time.Now(), true), - "recevedPacketTracker BUG: ReceivedPacket called for old / duplicate packet 4", + "receivedPacketTracker BUG: ReceivedPacket called for old / duplicate packet 4", ) }