diff --git a/frames/ack_frame.go b/frames/ack_frame.go index 07cbfe13..03805414 100644 --- a/frames/ack_frame.go +++ b/frames/ack_frame.go @@ -27,8 +27,10 @@ type AckFrame struct { LowestAcked protocol.PacketNumber AckRanges []AckRange // has to be ordered. The ACK range with the highest FirstPacketNumber goes first, the ACK range with the lowest FirstPacketNumber goes last + // time when the LargestAcked was receiveid + // this field Will not be set for received ACKs frames + PacketReceivedTime time.Time DelayTime time.Duration - PacketReceivedTime time.Time // only for received packets. Will not be modified for received ACKs frames } // ParseAckFrame reads an ACK frame diff --git a/frames/log.go b/frames/log.go index 4fb1402a..1918db18 100644 --- a/frames/log.go +++ b/frames/log.go @@ -11,17 +11,18 @@ func LogFrame(frame Frame, sent bool) { if sent { dir = "->" } - if f, ok := frame.(*StreamFrame); ok { + switch f := frame.(type) { + case *StreamFrame: utils.Debugf("\t%s &frames.StreamFrame{StreamID: %d, FinBit: %t, Offset: 0x%x, Data length: 0x%x, Offset + Data length: 0x%x}", dir, f.StreamID, f.FinBit, f.Offset, f.DataLen(), f.Offset+f.DataLen()) - return - } - if f, ok := frame.(*StopWaitingFrame); ok { + case *StopWaitingFrame: if sent { utils.Debugf("\t%s &frames.StopWaitingFrame{LeastUnacked: 0x%x, PacketNumberLen: 0x%x}", dir, f.LeastUnacked, f.PacketNumberLen) } else { utils.Debugf("\t%s &frames.StopWaitingFrame{LeastUnacked: 0x%x}", dir, f.LeastUnacked) } - return + case *AckFrame: + utils.Debugf("\t%s &frames.AckFrame{LargestAcked: 0x%x, LowestAcked: 0x%x, AckRanges: %#v, DelayTime: %s}", dir, f.LargestAcked, f.LowestAcked, f.AckRanges, f.DelayTime.String()) + default: + utils.Debugf("\t%s %#v", dir, frame) } - utils.Debugf("\t%s %#v", dir, frame) }