mirror of
https://github.com/caddyserver/caddy.git
synced 2024-12-30 22:34:15 -05:00
6fde3632ef
The vendor/ folder was created with the help of @FiloSottile's gvt and vendorcheck. Any dependencies of Caddy plugins outside this repo are not vendored. We do not remove any unused, vendored packages because vendorcheck -u only checks using the current build configuration; i.e. packages that may be imported by files toggled by build tags of other systems. CI tests have been updated to ignore the vendor/ folder. When Go 1.9 is released, a few of the go commands should be revised to again use ./... as it will ignore the vendor folder by default.
30 lines
872 B
Go
30 lines
872 B
Go
package ackhandler
|
|
|
|
import (
|
|
"time"
|
|
|
|
"github.com/lucas-clemente/quic-go/frames"
|
|
"github.com/lucas-clemente/quic-go/protocol"
|
|
)
|
|
|
|
// SentPacketHandler handles ACKs received for outgoing packets
|
|
type SentPacketHandler interface {
|
|
SentPacket(packet *Packet) error
|
|
ReceivedAck(ackFrame *frames.AckFrame, withPacketNumber protocol.PacketNumber, recvTime time.Time) error
|
|
|
|
SendingAllowed() bool
|
|
GetStopWaitingFrame(force bool) *frames.StopWaitingFrame
|
|
DequeuePacketForRetransmission() (packet *Packet)
|
|
GetLeastUnacked() protocol.PacketNumber
|
|
|
|
GetAlarmTimeout() time.Time
|
|
OnAlarm()
|
|
}
|
|
|
|
// ReceivedPacketHandler handles ACKs needed to send for incoming packets
|
|
type ReceivedPacketHandler interface {
|
|
ReceivedPacket(packetNumber protocol.PacketNumber, shouldInstigateAck bool) error
|
|
ReceivedStopWaiting(*frames.StopWaitingFrame) error
|
|
|
|
GetAckFrame() *frames.AckFrame
|
|
}
|