github.com/ooni/psiphon/tunnel-core@v0.0.0-20230105123940-fe12a24c96ee/oovendor/quic-go/internal/ackhandler/send_mode.go (about)

     1  package ackhandler
     2  
     3  import "fmt"
     4  
     5  // The SendMode says what kind of packets can be sent.
     6  type SendMode uint8
     7  
     8  const (
     9  	// SendNone means that no packets should be sent
    10  	SendNone SendMode = iota
    11  	// SendAck means an ACK-only packet should be sent
    12  	SendAck
    13  	// SendPTOInitial means that an Initial probe packet should be sent
    14  	SendPTOInitial
    15  	// SendPTOHandshake means that a Handshake probe packet should be sent
    16  	SendPTOHandshake
    17  	// SendPTOAppData means that an Application data probe packet should be sent
    18  	SendPTOAppData
    19  	// SendAny means that any packet should be sent
    20  	SendAny
    21  )
    22  
    23  func (s SendMode) String() string {
    24  	switch s {
    25  	case SendNone:
    26  		return "none"
    27  	case SendAck:
    28  		return "ack"
    29  	case SendPTOInitial:
    30  		return "pto (Initial)"
    31  	case SendPTOHandshake:
    32  		return "pto (Handshake)"
    33  	case SendPTOAppData:
    34  		return "pto (Application Data)"
    35  	case SendAny:
    36  		return "any"
    37  	default:
    38  		return fmt.Sprintf("invalid send mode: %d", s)
    39  	}
    40  }