package protocol
Import Path
github.com/tmc/go-iroh/internal/qng/internal/protocol (on go.dev )
Dependency Relation
imports 14 packages , and imported by 10 packages
Package-Level Type Names (total 19)
/* sort by: alphabet | popularity */
type ByteCount int64 (basic type)
A ByteCount in QUIC
As Outputs Of (at least 52 )
func github.com/tmc/go-iroh/internal/qng/internal/congestion.(*Cubic ).CongestionWindowAfterAck (ackedBytes ByteCount , currentCongestionWindow ByteCount , delayMin time .Duration , eventTime monotime .Time ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/congestion.(*Cubic ).CongestionWindowAfterPacketLoss (currentCongestionWindow ByteCount ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/congestion.SendAlgorithmWithDebugInfos .GetCongestionWindow () ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/flowcontrol.ConnectionFlowController .GetWindowUpdate (monotime .Time ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/flowcontrol.ConnectionFlowController .IsNewlyBlocked () (bool , ByteCount )
func github.com/tmc/go-iroh/internal/qng/internal/flowcontrol.ConnectionFlowController .SendWindowSize () ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/flowcontrol.StreamFlowController .GetWindowUpdate (monotime .Time ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/flowcontrol.StreamFlowController .SendWindowSize () ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.ParseMaxDataFrame (b []byte ) (ByteCount , int , error )
func github.com/tmc/go-iroh/internal/qng/internal/wire.ParseMaxStreamDataFrame (b []byte ) (StreamID , ByteCount , int , error )
func github.com/tmc/go-iroh/internal/qng/internal/wire.ShortHeaderLen (dest ConnectionID , pnLen PacketNumberLen ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*AckFrame ).Length (_ Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*AckFrequencyFrame ).Length (_ Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*AddAddressFrame ).Length (_ Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*ConnectionCloseFrame ).Length (Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*CryptoFrame ).Length (_ Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*CryptoFrame ).MaxDataLen (maxSize ByteCount ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*DataBlockedFrame ).Length (version Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*DatagramFrame ).Length (_ Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*DatagramFrame ).MaxDataLen (maxSize ByteCount , version Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*ExtendedHeader ).GetLength (_ Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*ExtendedHeader ).ParsedLen () ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.Frame .Length (version Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*HandshakeDoneFrame ).Length (_ Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*Header ).ParsedLen () ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*ImmediateAckFrame ).Length (_ Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*MaxDataFrame ).Length (_ Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*MaxPathIDFrame ).Length (_ Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*MaxStreamDataFrame ).Length (Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*MaxStreamsFrame ).Length (Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*NewConnectionIDFrame ).Length (Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*NewTokenFrame ).Length (Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*ObservedAddrFrame ).Length (_ Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*PathAbandonFrame ).Length (_ Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*PathAckFrame ).Length (v Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*PathChallengeFrame ).Length (_ Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*PathCIDsBlockedFrame ).Length (_ Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*PathResponseFrame ).Length (_ Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*PathsBlockedFrame ).Length (_ Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*PathStatusAvailableFrame ).Length (_ Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*PathStatusBackupFrame ).Length (_ Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*PingFrame ).Length (_ Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*ReachOutFrame ).Length (_ Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*RemoveAddressFrame ).Length (_ Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*ResetStreamFrame ).Length (Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*RetireConnectionIDFrame ).Length (Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*StopSendingFrame ).Length (_ Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*StreamDataBlockedFrame ).Length (Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*StreamFrame ).DataLen () ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*StreamFrame ).Length (Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*StreamFrame ).MaxDataLen (maxSize ByteCount , _ Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*StreamsBlockedFrame ).Length (_ Version ) ByteCount
As Inputs Of (at least 50 )
func github.com/tmc/go-iroh/internal/qng/internal/ackhandler.NewSentPacketHandler (initialPN PacketNumber , initialMaxDatagramSize ByteCount , rttStats *utils .RTTStats , connStats *utils .ConnectionStats , clientAddressValidated bool , enableECN bool , ignorePacketsBelow func(PacketNumber ), pers Perspective , qlogger qlogwriter .Recorder , logger utils .Logger ) ackhandler .SentPacketHandler
func github.com/tmc/go-iroh/internal/qng/internal/ackhandler.SentPacketHandler .MigratedPath (now monotime .Time , initialMaxPacketSize ByteCount )
func github.com/tmc/go-iroh/internal/qng/internal/ackhandler.SentPacketHandler .ReceivedBytes (_ ByteCount , rcvTime monotime .Time )
func github.com/tmc/go-iroh/internal/qng/internal/ackhandler.SentPacketHandler .ReceivedPacketForPath (pid PathID , size ByteCount , rcvTime monotime .Time )
func github.com/tmc/go-iroh/internal/qng/internal/ackhandler.SentPacketHandler .SentPacket (t monotime .Time , pn, largestAcked PacketNumber , streamFrames []ackhandler .StreamFrame , frames []ackhandler .Frame , encLevel EncryptionLevel , ecn ECN , size ByteCount , isPathMTUProbePacket, isPathProbePacket bool )
func github.com/tmc/go-iroh/internal/qng/internal/ackhandler.SentPacketHandler .SentPacketForPath (t monotime .Time , pn, largestAcked PacketNumber , pid PathID , streamFrames []ackhandler .StreamFrame , frames []ackhandler .Frame , ecn ECN , size ByteCount , isPathMTUProbePacket bool )
func github.com/tmc/go-iroh/internal/qng/internal/ackhandler.SentPacketHandler .SentPacketOneStream (t monotime .Time , pn, largestAcked PacketNumber , streamFrame ackhandler .StreamFrame , frames []ackhandler .Frame , ecn ECN , size ByteCount , isPathMTUProbePacket bool )
func github.com/tmc/go-iroh/internal/qng/internal/ackhandler.SentPacketHandler .SetMaxDatagramSize (count ByteCount )
func github.com/tmc/go-iroh/internal/qng/internal/congestion.BandwidthFromDelta (bytes ByteCount , delta time .Duration ) congestion .Bandwidth
func github.com/tmc/go-iroh/internal/qng/internal/congestion.NewCubicSender (clock congestion .Clock , rttStats *utils .RTTStats , connStats *utils .ConnectionStats , initialMaxDatagramSize ByteCount , reno bool , qlogger qlogwriter .Recorder ) *congestion .cubicSender
func github.com/tmc/go-iroh/internal/qng/internal/congestion.(*Cubic ).CongestionWindowAfterAck (ackedBytes ByteCount , currentCongestionWindow ByteCount , delayMin time .Duration , eventTime monotime .Time ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/congestion.(*Cubic ).CongestionWindowAfterAck (ackedBytes ByteCount , currentCongestionWindow ByteCount , delayMin time .Duration , eventTime monotime .Time ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/congestion.(*Cubic ).CongestionWindowAfterPacketLoss (currentCongestionWindow ByteCount ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/congestion.(*HybridSlowStart ).ShouldExitSlowStart (latestRTT time .Duration , minRTT time .Duration , congestionWindow ByteCount ) bool
func github.com/tmc/go-iroh/internal/qng/internal/congestion.SendAlgorithm .CanSend (bytesInFlight ByteCount ) bool
func github.com/tmc/go-iroh/internal/qng/internal/congestion.SendAlgorithm .OnCongestionEvent (number PacketNumber , lostBytes ByteCount , priorInFlight ByteCount )
func github.com/tmc/go-iroh/internal/qng/internal/congestion.SendAlgorithm .OnCongestionEvent (number PacketNumber , lostBytes ByteCount , priorInFlight ByteCount )
func github.com/tmc/go-iroh/internal/qng/internal/congestion.SendAlgorithm .OnPacketAcked (number PacketNumber , ackedBytes ByteCount , priorInFlight ByteCount , eventTime monotime .Time )
func github.com/tmc/go-iroh/internal/qng/internal/congestion.SendAlgorithm .OnPacketAcked (number PacketNumber , ackedBytes ByteCount , priorInFlight ByteCount , eventTime monotime .Time )
func github.com/tmc/go-iroh/internal/qng/internal/congestion.SendAlgorithm .OnPacketSent (sentTime monotime .Time , bytesInFlight ByteCount , packetNumber PacketNumber , bytes ByteCount , isRetransmittable bool )
func github.com/tmc/go-iroh/internal/qng/internal/congestion.SendAlgorithm .OnPacketSent (sentTime monotime .Time , bytesInFlight ByteCount , packetNumber PacketNumber , bytes ByteCount , isRetransmittable bool )
func github.com/tmc/go-iroh/internal/qng/internal/congestion.SendAlgorithm .SetMaxDatagramSize (ByteCount )
func github.com/tmc/go-iroh/internal/qng/internal/congestion.SendAlgorithm .TimeUntilSend (bytesInFlight ByteCount ) monotime .Time
func github.com/tmc/go-iroh/internal/qng/internal/congestion.SendAlgorithmWithDebugInfos .CanSend (bytesInFlight ByteCount ) bool
func github.com/tmc/go-iroh/internal/qng/internal/congestion.SendAlgorithmWithDebugInfos .OnCongestionEvent (number PacketNumber , lostBytes ByteCount , priorInFlight ByteCount )
func github.com/tmc/go-iroh/internal/qng/internal/congestion.SendAlgorithmWithDebugInfos .OnCongestionEvent (number PacketNumber , lostBytes ByteCount , priorInFlight ByteCount )
func github.com/tmc/go-iroh/internal/qng/internal/congestion.SendAlgorithmWithDebugInfos .OnPacketAcked (number PacketNumber , ackedBytes ByteCount , priorInFlight ByteCount , eventTime monotime .Time )
func github.com/tmc/go-iroh/internal/qng/internal/congestion.SendAlgorithmWithDebugInfos .OnPacketAcked (number PacketNumber , ackedBytes ByteCount , priorInFlight ByteCount , eventTime monotime .Time )
func github.com/tmc/go-iroh/internal/qng/internal/congestion.SendAlgorithmWithDebugInfos .OnPacketSent (sentTime monotime .Time , bytesInFlight ByteCount , packetNumber PacketNumber , bytes ByteCount , isRetransmittable bool )
func github.com/tmc/go-iroh/internal/qng/internal/congestion.SendAlgorithmWithDebugInfos .OnPacketSent (sentTime monotime .Time , bytesInFlight ByteCount , packetNumber PacketNumber , bytes ByteCount , isRetransmittable bool )
func github.com/tmc/go-iroh/internal/qng/internal/congestion.SendAlgorithmWithDebugInfos .SetMaxDatagramSize (ByteCount )
func github.com/tmc/go-iroh/internal/qng/internal/congestion.SendAlgorithmWithDebugInfos .TimeUntilSend (bytesInFlight ByteCount ) monotime .Time
func github.com/tmc/go-iroh/internal/qng/internal/flowcontrol.NewConnectionFlowController (receiveWindow ByteCount , maxReceiveWindow ByteCount , allowWindowIncrease func(size ByteCount ) bool , rttStats *utils .RTTStats , logger utils .Logger ) *flowcontrol .connectionFlowController
func github.com/tmc/go-iroh/internal/qng/internal/flowcontrol.NewConnectionFlowController (receiveWindow ByteCount , maxReceiveWindow ByteCount , allowWindowIncrease func(size ByteCount ) bool , rttStats *utils .RTTStats , logger utils .Logger ) *flowcontrol .connectionFlowController
func github.com/tmc/go-iroh/internal/qng/internal/flowcontrol.NewStreamFlowController (streamID StreamID , cfc flowcontrol .ConnectionFlowController , receiveWindow ByteCount , maxReceiveWindow ByteCount , initialSendWindow ByteCount , rttStats *utils .RTTStats , logger utils .Logger ) flowcontrol .StreamFlowController
func github.com/tmc/go-iroh/internal/qng/internal/flowcontrol.NewStreamFlowController (streamID StreamID , cfc flowcontrol .ConnectionFlowController , receiveWindow ByteCount , maxReceiveWindow ByteCount , initialSendWindow ByteCount , rttStats *utils .RTTStats , logger utils .Logger ) flowcontrol .StreamFlowController
func github.com/tmc/go-iroh/internal/qng/internal/flowcontrol.NewStreamFlowController (streamID StreamID , cfc flowcontrol .ConnectionFlowController , receiveWindow ByteCount , maxReceiveWindow ByteCount , initialSendWindow ByteCount , rttStats *utils .RTTStats , logger utils .Logger ) flowcontrol .StreamFlowController
func github.com/tmc/go-iroh/internal/qng/internal/flowcontrol.ConnectionFlowController .AddBytesRead (ByteCount ) (hasWindowUpdate bool )
func github.com/tmc/go-iroh/internal/qng/internal/flowcontrol.ConnectionFlowController .AddBytesSent (ByteCount )
func github.com/tmc/go-iroh/internal/qng/internal/flowcontrol.ConnectionFlowController .UpdateSendWindow (ByteCount ) (updated bool )
func github.com/tmc/go-iroh/internal/qng/internal/flowcontrol.StreamFlowController .AddBytesRead (ByteCount ) (hasStreamWindowUpdate, hasConnWindowUpdate bool )
func github.com/tmc/go-iroh/internal/qng/internal/flowcontrol.StreamFlowController .AddBytesSent (ByteCount )
func github.com/tmc/go-iroh/internal/qng/internal/flowcontrol.StreamFlowController .UpdateHighestReceived (offset ByteCount , final bool , now monotime .Time ) error
func github.com/tmc/go-iroh/internal/qng/internal/flowcontrol.StreamFlowController .UpdateSendWindow (ByteCount ) (updated bool )
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*AckFrame ).Truncate (maxSize ByteCount , _ Version )
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*CryptoFrame ).MaxDataLen (maxSize ByteCount ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*CryptoFrame ).MaybeSplitOffFrame (maxSize ByteCount , version Version ) (*wire .CryptoFrame , bool )
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*DatagramFrame ).MaxDataLen (maxSize ByteCount , version Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*StreamFrame ).MaxDataLen (maxSize ByteCount , _ Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*StreamFrame ).MaybeSplitOffFrame (maxSize ByteCount , version Version ) (*wire .StreamFrame , bool )
As Types Of (total 4 )
const InvalidByteCount
const MaxByteCount
const MinStreamFrameSize
var github.com/tmc/go-iroh/internal/qng/internal/wire.MaxDatagramSize
type ConnectionID (struct)
A ConnectionID in QUIC
Methods (total 3 )
( ConnectionID) Bytes () []byte
Bytes returns the byte representation
( ConnectionID) Len () int
Len returns the length of the connection ID in bytes
( ConnectionID) String () string
Implements (at least 3 )
ConnectionID : github.com/apache/arrow-go/v18/internal/hashing.ByteSlice
ConnectionID : expvar.Var
ConnectionID : fmt.Stringer
As Outputs Of (at least 6 )
func GenerateConnectionID (l int ) (ConnectionID , error )
func GenerateConnectionIDForInitial () (ConnectionID , error )
func ParseConnectionID (b []byte ) ConnectionID
func ReadConnectionID (r io .Reader , l int ) (ConnectionID , error )
func (*DefaultConnectionIDGenerator ).GenerateConnectionID () (ConnectionID , error )
func github.com/tmc/go-iroh/internal/qng/internal/wire.ParseConnectionID (data []byte , shortHeaderConnIDLen int ) (ConnectionID , error )
As Inputs Of (at least 10 )
func github.com/tmc/go-iroh/internal/qng/internal/handshake.GetRetryIntegrityTag (retry []byte , origDestConnID ConnectionID , version Version ) *[16]byte
func github.com/tmc/go-iroh/internal/qng/internal/handshake.NewCryptoSetupClient (connID ConnectionID , tp *wire .TransportParameters , tlsConf *tls .Config , enable0RTT bool , rttStats *utils .RTTStats , qlogger qlogwriter .Recorder , logger utils .Logger , version Version ) handshake .CryptoSetup
func github.com/tmc/go-iroh/internal/qng/internal/handshake.NewCryptoSetupServer (connID ConnectionID , localAddr, remoteAddr net .Addr , tp *wire .TransportParameters , tlsConf *tls .Config , allow0RTT bool , rttStats *utils .RTTStats , qlogger qlogwriter .Recorder , logger utils .Logger , version Version ) handshake .CryptoSetup
func github.com/tmc/go-iroh/internal/qng/internal/handshake.NewInitialAEAD (connID ConnectionID , pers Perspective , v Version ) (handshake .LongHeaderSealer , handshake .LongHeaderOpener )
func github.com/tmc/go-iroh/internal/qng/internal/handshake.CryptoSetup .ChangeConnectionID (ConnectionID )
func github.com/tmc/go-iroh/internal/qng/internal/handshake.(*TokenGenerator ).NewRetryToken (raddr net .Addr , origDestConnID ConnectionID , retrySrcConnID ConnectionID ) ([]byte , error )
func github.com/tmc/go-iroh/internal/qng/internal/handshake.(*TokenGenerator ).NewRetryToken (raddr net .Addr , origDestConnID ConnectionID , retrySrcConnID ConnectionID ) ([]byte , error )
func github.com/tmc/go-iroh/internal/qng/internal/wire.AppendShortHeader (b []byte , connID ConnectionID , pn PacketNumber , pnLen PacketNumberLen , kp KeyPhaseBit ) ([]byte , error )
func github.com/tmc/go-iroh/internal/qng/internal/wire.LogShortHeader (logger utils .Logger , dest ConnectionID , pn PacketNumber , pnLen PacketNumberLen , kp KeyPhaseBit )
func github.com/tmc/go-iroh/internal/qng/internal/wire.ShortHeaderLen (dest ConnectionID , pnLen PacketNumberLen ) ByteCount
type ECN uint8 (basic type)
Methods (total 2 )
( ECN) String () string
( ECN) ToHeaderBits () byte
Implements (at least 2 )
ECN : expvar.Var
ECN : fmt.Stringer
As Outputs Of (at least 2 )
func ParseECNHeaderBits (bits byte ) ECN
func github.com/tmc/go-iroh/internal/qng/internal/ackhandler.SentPacketHandler .ECNMode (isShortHeaderPacket bool ) ECN
As Inputs Of (at least 5 )
func github.com/tmc/go-iroh/internal/qng/internal/ackhandler.(*ReceivedPacketHandler ).ReceivedPacket (pn PacketNumber , ecn ECN , encLevel EncryptionLevel , rcvTime monotime .Time , ackEliciting bool ) error
func github.com/tmc/go-iroh/internal/qng/internal/ackhandler.(*ReceivedPacketHandler ).ReceivedPacketForPath (pn PacketNumber , ecn ECN , pid PathID , rcvTime monotime .Time , ackEliciting bool ) error
func github.com/tmc/go-iroh/internal/qng/internal/ackhandler.SentPacketHandler .SentPacket (t monotime .Time , pn, largestAcked PacketNumber , streamFrames []ackhandler .StreamFrame , frames []ackhandler .Frame , encLevel EncryptionLevel , ecn ECN , size ByteCount , isPathMTUProbePacket, isPathProbePacket bool )
func github.com/tmc/go-iroh/internal/qng/internal/ackhandler.SentPacketHandler .SentPacketForPath (t monotime .Time , pn, largestAcked PacketNumber , pid PathID , streamFrames []ackhandler .StreamFrame , frames []ackhandler .Frame , ecn ECN , size ByteCount , isPathMTUProbePacket bool )
func github.com/tmc/go-iroh/internal/qng/internal/ackhandler.SentPacketHandler .SentPacketOneStream (t monotime .Time , pn, largestAcked PacketNumber , streamFrame ackhandler .StreamFrame , frames []ackhandler .Frame , ecn ECN , size ByteCount , isPathMTUProbePacket bool )
As Types Of (total 5 )
const ECNCE
const ECNNon
const ECNUnsupported
const ECT0
const ECT1
type EncryptionLevel uint8 (basic type)
EncryptionLevel is the encryption level
Default value is Unencrypted
Methods (total 2 )
( EncryptionLevel) String () string
( EncryptionLevel) ToTLSEncryptionLevel () tls .QUICEncryptionLevel
Implements (at least 2 )
EncryptionLevel : expvar.Var
EncryptionLevel : fmt.Stringer
As Outputs Of (at least one exported )
func FromTLSEncryptionLevel (e tls .QUICEncryptionLevel ) EncryptionLevel
As Inputs Of (at least 14 )
func github.com/tmc/go-iroh/internal/qng/internal/ackhandler.(*ReceivedPacketHandler ).DropPackets (encLevel EncryptionLevel )
func github.com/tmc/go-iroh/internal/qng/internal/ackhandler.(*ReceivedPacketHandler ).GetAckFrame (encLevel EncryptionLevel , now monotime .Time , onlyIfQueued bool ) *wire .AckFrame
func github.com/tmc/go-iroh/internal/qng/internal/ackhandler.(*ReceivedPacketHandler ).IsPotentiallyDuplicate (pn PacketNumber , encLevel EncryptionLevel ) bool
func github.com/tmc/go-iroh/internal/qng/internal/ackhandler.(*ReceivedPacketHandler ).ReceivedPacket (pn PacketNumber , ecn ECN , encLevel EncryptionLevel , rcvTime monotime .Time , ackEliciting bool ) error
func github.com/tmc/go-iroh/internal/qng/internal/ackhandler.SentPacketHandler .DropPackets (_ EncryptionLevel , rcvTime monotime .Time )
func github.com/tmc/go-iroh/internal/qng/internal/ackhandler.SentPacketHandler .PeekPacketNumber (EncryptionLevel ) (PacketNumber , PacketNumberLen )
func github.com/tmc/go-iroh/internal/qng/internal/ackhandler.SentPacketHandler .PopPacketNumber (EncryptionLevel ) PacketNumber
func github.com/tmc/go-iroh/internal/qng/internal/ackhandler.SentPacketHandler .QueueProbePacket (EncryptionLevel ) bool
func github.com/tmc/go-iroh/internal/qng/internal/ackhandler.SentPacketHandler .ReceivedAck (f *wire .AckFrame , encLevel EncryptionLevel , rcvTime monotime .Time ) (bool , error )
func github.com/tmc/go-iroh/internal/qng/internal/ackhandler.SentPacketHandler .ReceivedPacket (EncryptionLevel , monotime .Time )
func github.com/tmc/go-iroh/internal/qng/internal/ackhandler.SentPacketHandler .SentPacket (t monotime .Time , pn, largestAcked PacketNumber , streamFrames []ackhandler .StreamFrame , frames []ackhandler .Frame , encLevel EncryptionLevel , ecn ECN , size ByteCount , isPathMTUProbePacket, isPathProbePacket bool )
func github.com/tmc/go-iroh/internal/qng/internal/handshake.CryptoSetup .HandleMessage ([]byte , EncryptionLevel ) error
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*FrameParser ).ParseAckFrame (frameType wire .FrameType , data []byte , encLevel EncryptionLevel , v Version ) (*wire .AckFrame , int , error )
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*FrameParser ).ParseType (b []byte , encLevel EncryptionLevel ) (wire .FrameType , int , error )
As Types Of (total 4 )
const Encryption0RTT
const Encryption1RTT
const EncryptionHandshake
const EncryptionInitial
type KeyPhaseBit uint8 (basic type)
KeyPhaseBit is the key phase bit
Methods (only one )
( KeyPhaseBit) String () string
Implements (at least 2 )
KeyPhaseBit : expvar.Var
KeyPhaseBit : fmt.Stringer
As Outputs Of (at least 3 )
func KeyPhase .Bit () KeyPhaseBit
func github.com/tmc/go-iroh/internal/qng/internal/handshake.ShortHeaderSealer .KeyPhase () KeyPhaseBit
func github.com/tmc/go-iroh/internal/qng/internal/wire.ParseShortHeader (data []byte , connIDLen int ) (length int , _ PacketNumber , _ PacketNumberLen , _ KeyPhaseBit , _ error )
As Inputs Of (at least 3 )
func github.com/tmc/go-iroh/internal/qng/internal/handshake.ShortHeaderOpener .Open (dst, src []byte , rcvTime monotime .Time , pid PathID , pn PacketNumber , kp KeyPhaseBit , associatedData []byte ) ([]byte , error )
func github.com/tmc/go-iroh/internal/qng/internal/wire.AppendShortHeader (b []byte , connID ConnectionID , pn PacketNumber , pnLen PacketNumberLen , kp KeyPhaseBit ) ([]byte , error )
func github.com/tmc/go-iroh/internal/qng/internal/wire.LogShortHeader (logger utils .Logger , dest ConnectionID , pn PacketNumber , pnLen PacketNumberLen , kp KeyPhaseBit )
As Types Of (total 5 )
const KeyPhaseOne
const KeyPhaseUndefined
const KeyPhaseZero
const github.com/tmc/go-iroh/internal/qng/qlog.KeyPhaseOne
const github.com/tmc/go-iroh/internal/qng/qlog.KeyPhaseZero
type PacketNumber int64 (basic type)
A PacketNumber in QUIC
As Outputs Of (at least 11 )
func DecodePacketNumber (length PacketNumberLen , largest PacketNumber , truncated PacketNumber ) PacketNumber
func github.com/tmc/go-iroh/internal/qng/internal/ackhandler.SentPacketHandler .PeekPacketNumber (EncryptionLevel ) (PacketNumber , PacketNumberLen )
func github.com/tmc/go-iroh/internal/qng/internal/ackhandler.SentPacketHandler .PeekPacketNumberForPath (pid PathID ) (PacketNumber , PacketNumberLen )
func github.com/tmc/go-iroh/internal/qng/internal/ackhandler.SentPacketHandler .PopPacketNumber (EncryptionLevel ) PacketNumber
func github.com/tmc/go-iroh/internal/qng/internal/ackhandler.SentPacketHandler .PopPacketNumberForPath (pid PathID ) PacketNumber
func github.com/tmc/go-iroh/internal/qng/internal/handshake.LongHeaderOpener .DecodePacketNumber (pid PathID , wirePN PacketNumber , wirePNLen PacketNumberLen ) PacketNumber
func github.com/tmc/go-iroh/internal/qng/internal/handshake.ShortHeaderOpener .DecodePacketNumber (pid PathID , wirePN PacketNumber , wirePNLen PacketNumberLen ) PacketNumber
func github.com/tmc/go-iroh/internal/qng/internal/wire.ParseShortHeader (data []byte , connIDLen int ) (length int , _ PacketNumber , _ PacketNumberLen , _ KeyPhaseBit , _ error )
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*AckFrame ).LargestAcked () PacketNumber
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*AckFrame ).LowestAcked () PacketNumber
func github.com/tmc/go-iroh/internal/qng/internal/wire.AckRange .Len () PacketNumber
As Inputs Of (at least 32 )
func DecodePacketNumber (length PacketNumberLen , largest PacketNumber , truncated PacketNumber ) PacketNumber
func DecodePacketNumber (length PacketNumberLen , largest PacketNumber , truncated PacketNumber ) PacketNumber
func PacketNumberLengthForHeader (pn, largestAcked PacketNumber ) PacketNumberLen
func github.com/tmc/go-iroh/internal/qng/internal/ackhandler.NewSentPacketHandler (initialPN PacketNumber , initialMaxDatagramSize ByteCount , rttStats *utils .RTTStats , connStats *utils .ConnectionStats , clientAddressValidated bool , enableECN bool , ignorePacketsBelow func(PacketNumber ), pers Perspective , qlogger qlogwriter .Recorder , logger utils .Logger ) ackhandler .SentPacketHandler
func github.com/tmc/go-iroh/internal/qng/internal/ackhandler.(*ReceivedPacketHandler ).IgnorePacketsBelow (pn PacketNumber )
func github.com/tmc/go-iroh/internal/qng/internal/ackhandler.(*ReceivedPacketHandler ).IsPotentiallyDuplicate (pn PacketNumber , encLevel EncryptionLevel ) bool
func github.com/tmc/go-iroh/internal/qng/internal/ackhandler.(*ReceivedPacketHandler ).IsPotentiallyDuplicateForPath (pn PacketNumber , pid PathID ) bool
func github.com/tmc/go-iroh/internal/qng/internal/ackhandler.(*ReceivedPacketHandler ).ReceivedPacket (pn PacketNumber , ecn ECN , encLevel EncryptionLevel , rcvTime monotime .Time , ackEliciting bool ) error
func github.com/tmc/go-iroh/internal/qng/internal/ackhandler.(*ReceivedPacketHandler ).ReceivedPacketForPath (pn PacketNumber , ecn ECN , pid PathID , rcvTime monotime .Time , ackEliciting bool ) error
func github.com/tmc/go-iroh/internal/qng/internal/ackhandler.SentPacketHandler .SentPacket (t monotime .Time , pn, largestAcked PacketNumber , streamFrames []ackhandler .StreamFrame , frames []ackhandler .Frame , encLevel EncryptionLevel , ecn ECN , size ByteCount , isPathMTUProbePacket, isPathProbePacket bool )
func github.com/tmc/go-iroh/internal/qng/internal/ackhandler.SentPacketHandler .SentPacketForPath (t monotime .Time , pn, largestAcked PacketNumber , pid PathID , streamFrames []ackhandler .StreamFrame , frames []ackhandler .Frame , ecn ECN , size ByteCount , isPathMTUProbePacket bool )
func github.com/tmc/go-iroh/internal/qng/internal/ackhandler.SentPacketHandler .SentPacketOneStream (t monotime .Time , pn, largestAcked PacketNumber , streamFrame ackhandler .StreamFrame , frames []ackhandler .Frame , ecn ECN , size ByteCount , isPathMTUProbePacket bool )
func github.com/tmc/go-iroh/internal/qng/internal/congestion.(*HybridSlowStart ).IsEndOfRound (ack PacketNumber ) bool
func github.com/tmc/go-iroh/internal/qng/internal/congestion.(*HybridSlowStart ).OnPacketAcked (ackedPacketNumber PacketNumber )
func github.com/tmc/go-iroh/internal/qng/internal/congestion.(*HybridSlowStart ).OnPacketSent (packetNumber PacketNumber )
func github.com/tmc/go-iroh/internal/qng/internal/congestion.(*HybridSlowStart ).StartReceiveRound (lastSent PacketNumber )
func github.com/tmc/go-iroh/internal/qng/internal/congestion.SendAlgorithm .OnCongestionEvent (number PacketNumber , lostBytes ByteCount , priorInFlight ByteCount )
func github.com/tmc/go-iroh/internal/qng/internal/congestion.SendAlgorithm .OnPacketAcked (number PacketNumber , ackedBytes ByteCount , priorInFlight ByteCount , eventTime monotime .Time )
func github.com/tmc/go-iroh/internal/qng/internal/congestion.SendAlgorithm .OnPacketSent (sentTime monotime .Time , bytesInFlight ByteCount , packetNumber PacketNumber , bytes ByteCount , isRetransmittable bool )
func github.com/tmc/go-iroh/internal/qng/internal/congestion.SendAlgorithmWithDebugInfos .OnCongestionEvent (number PacketNumber , lostBytes ByteCount , priorInFlight ByteCount )
func github.com/tmc/go-iroh/internal/qng/internal/congestion.SendAlgorithmWithDebugInfos .OnPacketAcked (number PacketNumber , ackedBytes ByteCount , priorInFlight ByteCount , eventTime monotime .Time )
func github.com/tmc/go-iroh/internal/qng/internal/congestion.SendAlgorithmWithDebugInfos .OnPacketSent (sentTime monotime .Time , bytesInFlight ByteCount , packetNumber PacketNumber , bytes ByteCount , isRetransmittable bool )
func github.com/tmc/go-iroh/internal/qng/internal/handshake.CryptoSetup .SetLargest1RTTAcked (PacketNumber ) error
func github.com/tmc/go-iroh/internal/qng/internal/handshake.LongHeaderOpener .DecodePacketNumber (pid PathID , wirePN PacketNumber , wirePNLen PacketNumberLen ) PacketNumber
func github.com/tmc/go-iroh/internal/qng/internal/handshake.LongHeaderOpener .Open (dst, src []byte , pid PathID , pn PacketNumber , associatedData []byte ) ([]byte , error )
func github.com/tmc/go-iroh/internal/qng/internal/handshake.LongHeaderSealer .Seal (dst, src []byte , pid PathID , packetNumber PacketNumber , associatedData []byte ) []byte
func github.com/tmc/go-iroh/internal/qng/internal/handshake.ShortHeaderOpener .DecodePacketNumber (pid PathID , wirePN PacketNumber , wirePNLen PacketNumberLen ) PacketNumber
func github.com/tmc/go-iroh/internal/qng/internal/handshake.ShortHeaderOpener .Open (dst, src []byte , rcvTime monotime .Time , pid PathID , pn PacketNumber , kp KeyPhaseBit , associatedData []byte ) ([]byte , error )
func github.com/tmc/go-iroh/internal/qng/internal/handshake.ShortHeaderSealer .Seal (dst, src []byte , pid PathID , packetNumber PacketNumber , associatedData []byte ) []byte
func github.com/tmc/go-iroh/internal/qng/internal/wire.AppendShortHeader (b []byte , connID ConnectionID , pn PacketNumber , pnLen PacketNumberLen , kp KeyPhaseBit ) ([]byte , error )
func github.com/tmc/go-iroh/internal/qng/internal/wire.LogShortHeader (logger utils .Logger , dest ConnectionID , pn PacketNumber , pnLen PacketNumberLen , kp KeyPhaseBit )
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*AckFrame ).AcksPacket (p PacketNumber ) bool
As Types Of (total 3 )
const InvalidPacketNumber
const SkipPacketInitialPeriod
const SkipPacketMaxPeriod
type PacketNumberLen uint8 (basic type)
PacketNumberLen is the length of the packet number in bytes
As Outputs Of (at least 4 )
func PacketNumberLengthForHeader (pn, largestAcked PacketNumber ) PacketNumberLen
func github.com/tmc/go-iroh/internal/qng/internal/ackhandler.SentPacketHandler .PeekPacketNumber (EncryptionLevel ) (PacketNumber , PacketNumberLen )
func github.com/tmc/go-iroh/internal/qng/internal/ackhandler.SentPacketHandler .PeekPacketNumberForPath (pid PathID ) (PacketNumber , PacketNumberLen )
func github.com/tmc/go-iroh/internal/qng/internal/wire.ParseShortHeader (data []byte , connIDLen int ) (length int , _ PacketNumber , _ PacketNumberLen , _ KeyPhaseBit , _ error )
As Inputs Of (at least 6 )
func DecodePacketNumber (length PacketNumberLen , largest PacketNumber , truncated PacketNumber ) PacketNumber
func github.com/tmc/go-iroh/internal/qng/internal/handshake.LongHeaderOpener .DecodePacketNumber (pid PathID , wirePN PacketNumber , wirePNLen PacketNumberLen ) PacketNumber
func github.com/tmc/go-iroh/internal/qng/internal/handshake.ShortHeaderOpener .DecodePacketNumber (pid PathID , wirePN PacketNumber , wirePNLen PacketNumberLen ) PacketNumber
func github.com/tmc/go-iroh/internal/qng/internal/wire.AppendShortHeader (b []byte , connID ConnectionID , pn PacketNumber , pnLen PacketNumberLen , kp KeyPhaseBit ) ([]byte , error )
func github.com/tmc/go-iroh/internal/qng/internal/wire.LogShortHeader (logger utils .Logger , dest ConnectionID , pn PacketNumber , pnLen PacketNumberLen , kp KeyPhaseBit )
func github.com/tmc/go-iroh/internal/qng/internal/wire.ShortHeaderLen (dest ConnectionID , pnLen PacketNumberLen ) ByteCount
As Types Of (total 4 )
const PacketNumberLen1
const PacketNumberLen2
const PacketNumberLen3
const PacketNumberLen4
type PathID uint32 (basic type)
A PathID identifies a path in QUIC multipath (draft-ietf-quic-multipath).
It is a 32-bit value encoded on the wire as a QUIC variable-length integer.
This is the multipath path identifier from iroh's noq QUIC fork, distinct
from the unexported single-path migration path id used by the connection's
path manager. See internal/qng/n0ext/reference/paths.rs (PathId).
As Outputs Of (at least 2 )
func github.com/tmc/go-iroh/internal/qng.(*Conn ).LastPathAckID () (PathID , bool )
func github.com/tmc/go-iroh/internal/qng.(*MultipathPath ).PathID () PathID
As Inputs Of (at least 23 )
func github.com/tmc/go-iroh/internal/qng/internal/ackhandler.(*ReceivedPacketHandler ).AddPath (pid PathID , logger utils .Logger ) error
func github.com/tmc/go-iroh/internal/qng/internal/ackhandler.(*ReceivedPacketHandler ).GetAckFrameForPath (pid PathID , now monotime .Time , onlyIfQueued bool ) *wire .AckFrame
func github.com/tmc/go-iroh/internal/qng/internal/ackhandler.(*ReceivedPacketHandler ).GetAlarmTimeoutForPath (pid PathID ) monotime .Time
func github.com/tmc/go-iroh/internal/qng/internal/ackhandler.(*ReceivedPacketHandler ).IsPotentiallyDuplicateForPath (pn PacketNumber , pid PathID ) bool
func github.com/tmc/go-iroh/internal/qng/internal/ackhandler.(*ReceivedPacketHandler ).ReceivedPacketForPath (pn PacketNumber , ecn ECN , pid PathID , rcvTime monotime .Time , ackEliciting bool ) error
func github.com/tmc/go-iroh/internal/qng/internal/ackhandler.(*ReceivedPacketHandler ).RemovePath (pid PathID )
func github.com/tmc/go-iroh/internal/qng/internal/ackhandler.SentPacketHandler .AddPath (pid PathID ) error
func github.com/tmc/go-iroh/internal/qng/internal/ackhandler.SentPacketHandler .PathDebugStats (pid PathID ) (ackhandler .PathDebugStats , bool )
func github.com/tmc/go-iroh/internal/qng/internal/ackhandler.SentPacketHandler .PeekPacketNumberForPath (pid PathID ) (PacketNumber , PacketNumberLen )
func github.com/tmc/go-iroh/internal/qng/internal/ackhandler.SentPacketHandler .PopPacketNumberForPath (pid PathID ) PacketNumber
func github.com/tmc/go-iroh/internal/qng/internal/ackhandler.SentPacketHandler .ReceivedAckForPath (f *wire .AckFrame , pid PathID , rcvTime monotime .Time ) (bool , error )
func github.com/tmc/go-iroh/internal/qng/internal/ackhandler.SentPacketHandler .ReceivedPacketForPath (pid PathID , size ByteCount , rcvTime monotime .Time )
func github.com/tmc/go-iroh/internal/qng/internal/ackhandler.SentPacketHandler .RemovePath (pid PathID )
func github.com/tmc/go-iroh/internal/qng/internal/ackhandler.SentPacketHandler .SendModeForPath (now monotime .Time , pid PathID ) ackhandler .SendMode
func github.com/tmc/go-iroh/internal/qng/internal/ackhandler.SentPacketHandler .SentPacketForPath (t monotime .Time , pn, largestAcked PacketNumber , pid PathID , streamFrames []ackhandler .StreamFrame , frames []ackhandler .Frame , ecn ECN , size ByteCount , isPathMTUProbePacket bool )
func github.com/tmc/go-iroh/internal/qng/internal/handshake.LongHeaderOpener .DecodePacketNumber (pid PathID , wirePN PacketNumber , wirePNLen PacketNumberLen ) PacketNumber
func github.com/tmc/go-iroh/internal/qng/internal/handshake.LongHeaderOpener .Open (dst, src []byte , pid PathID , pn PacketNumber , associatedData []byte ) ([]byte , error )
func github.com/tmc/go-iroh/internal/qng/internal/handshake.LongHeaderSealer .Seal (dst, src []byte , pid PathID , packetNumber PacketNumber , associatedData []byte ) []byte
func github.com/tmc/go-iroh/internal/qng/internal/handshake.ShortHeaderOpener .DecodePacketNumber (pid PathID , wirePN PacketNumber , wirePNLen PacketNumberLen ) PacketNumber
func github.com/tmc/go-iroh/internal/qng/internal/handshake.ShortHeaderOpener .Open (dst, src []byte , rcvTime monotime .Time , pid PathID , pn PacketNumber , kp KeyPhaseBit , associatedData []byte ) ([]byte , error )
func github.com/tmc/go-iroh/internal/qng/internal/handshake.ShortHeaderSealer .Seal (dst, src []byte , pid PathID , packetNumber PacketNumber , associatedData []byte ) []byte
func github.com/tmc/go-iroh/internal/qng.(*Conn ).PathStats (pid PathID ) (ackhandler .PathDebugStats , bool )
func github.com/tmc/go-iroh/internal/qng.(*Conn ).SendDatagramOnPath (pid PathID , b []byte ) error
As Types Of (total 2 )
const PathIDMax
const PathIDZero
type Perspective int (basic type)
Perspective determines if we're acting as a server or a client
Methods (total 2 )
( Perspective) Opposite () Perspective
Opposite returns the perspective of the peer
( Perspective) String () string
Implements (at least 2 )
Perspective : expvar.Var
Perspective : fmt.Stringer
As Outputs Of (at least 2 )
func Perspective.Opposite () Perspective
func StreamID .InitiatedBy () Perspective
As Inputs Of (at least 5 )
func StreamNum .StreamID (stype StreamType , pers Perspective ) StreamID
func github.com/tmc/go-iroh/internal/qng/internal/ackhandler.NewSentPacketHandler (initialPN PacketNumber , initialMaxDatagramSize ByteCount , rttStats *utils .RTTStats , connStats *utils .ConnectionStats , clientAddressValidated bool , enableECN bool , ignorePacketsBelow func(PacketNumber ), pers Perspective , qlogger qlogwriter .Recorder , logger utils .Logger ) ackhandler .SentPacketHandler
func github.com/tmc/go-iroh/internal/qng/internal/handshake.NewInitialAEAD (connID ConnectionID , pers Perspective , v Version ) (handshake .LongHeaderSealer , handshake .LongHeaderOpener )
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*TransportParameters ).Marshal (pers Perspective ) []byte
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*TransportParameters ).Unmarshal (data []byte , sentBy Perspective ) error
As Types Of (total 2 )
const PerspectiveClient
const PerspectiveServer
type StreamID int64 (basic type)
A StreamID in QUIC
Methods (total 3 )
( StreamID) InitiatedBy () Perspective
InitiatedBy says if the stream was initiated by the client or by the server
( StreamID) StreamNum () StreamNum
StreamNum returns how many streams in total are below this
Example: for stream 9 it returns 3 (i.e. streams 1, 5 and 9)
( StreamID) Type () StreamType
Type says if this is a unidirectional or bidirectional stream
As Outputs Of (at least 4 )
func StreamNum .StreamID (stype StreamType , pers Perspective ) StreamID
func github.com/tmc/go-iroh/internal/qng/internal/wire.ParseMaxStreamDataFrame (b []byte ) (StreamID , ByteCount , int , error )
func github.com/tmc/go-iroh/internal/qng.(*ReceiveStream ).StreamID () StreamID
func github.com/tmc/go-iroh/internal/qng.(*Stream ).StreamID () StreamID
As Inputs Of (at least one exported )
func github.com/tmc/go-iroh/internal/qng/internal/flowcontrol.NewStreamFlowController (streamID StreamID , cfc flowcontrol .ConnectionFlowController , receiveWindow ByteCount , maxReceiveWindow ByteCount , initialSendWindow ByteCount , rttStats *utils .RTTStats , logger utils .Logger ) flowcontrol .StreamFlowController
As Types Of (total 10 )
const FirstIncomingBidiStreamClient
const FirstIncomingBidiStreamServer
const FirstIncomingUniStreamClient
const FirstIncomingUniStreamServer
const FirstOutgoingBidiStreamClient
const FirstOutgoingBidiStreamServer
const FirstOutgoingUniStreamClient
const FirstOutgoingUniStreamServer
const InvalidStreamID
const MaxStreamID
type Version uint32 (basic type)
Version is a version number as int
Methods (only one )
( Version) String () string
Implements (at least 2 )
Version : expvar.Var
Version : fmt.Stringer
As Outputs Of (at least 4 )
func ChooseSupportedVersion (ours, theirs []Version ) (Version , bool )
func GetGreasedVersions (supported []Version ) []Version
func github.com/tmc/go-iroh/internal/qng/internal/wire.ParseVersion (data []byte ) (Version , error )
func github.com/tmc/go-iroh/internal/qng/internal/wire.ParseVersionNegotiationPacket (b []byte ) (dest, src ArbitraryLenConnectionID , _ []Version , _ error )
As Inputs Of (at least 90 )
func ChooseSupportedVersion (ours, theirs []Version ) (Version , bool )
func GetGreasedVersions (supported []Version ) []Version
func IsSupportedVersion (supported []Version , v Version ) bool
func IsSupportedVersion (supported []Version , v Version ) bool
func IsValidVersion (v Version ) bool
func github.com/tmc/go-iroh/internal/qng/internal/handshake.GetRetryIntegrityTag (retry []byte , origDestConnID ConnectionID , version Version ) *[16]byte
func github.com/tmc/go-iroh/internal/qng/internal/handshake.NewCryptoSetupClient (connID ConnectionID , tp *wire .TransportParameters , tlsConf *tls .Config , enable0RTT bool , rttStats *utils .RTTStats , qlogger qlogwriter .Recorder , logger utils .Logger , version Version ) handshake .CryptoSetup
func github.com/tmc/go-iroh/internal/qng/internal/handshake.NewCryptoSetupServer (connID ConnectionID , localAddr, remoteAddr net .Addr , tp *wire .TransportParameters , tlsConf *tls .Config , allow0RTT bool , rttStats *utils .RTTStats , qlogger qlogwriter .Recorder , logger utils .Logger , version Version ) handshake .CryptoSetup
func github.com/tmc/go-iroh/internal/qng/internal/handshake.NewInitialAEAD (connID ConnectionID , pers Perspective , v Version ) (handshake .LongHeaderSealer , handshake .LongHeaderOpener )
func github.com/tmc/go-iroh/internal/qng/internal/wire.ComposeVersionNegotiation (destConnID, srcConnID ArbitraryLenConnectionID , versions []Version ) []byte
func github.com/tmc/go-iroh/internal/qng/internal/wire.ParseStreamFrame (b []byte , typ wire .FrameType , _ Version ) (*wire .StreamFrame , int , error )
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*AckFrame ).Append (b []byte , _ Version ) ([]byte , error )
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*AckFrame ).Length (_ Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*AckFrame ).Truncate (maxSize ByteCount , _ Version )
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*AckFrequencyFrame ).Append (b []byte , _ Version ) ([]byte , error )
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*AckFrequencyFrame ).Length (_ Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*AddAddressFrame ).Append (b []byte , _ Version ) ([]byte , error )
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*AddAddressFrame ).Length (_ Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*ConnectionCloseFrame ).Append (b []byte , _ Version ) ([]byte , error )
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*ConnectionCloseFrame ).Length (Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*CryptoFrame ).Append (b []byte , _ Version ) ([]byte , error )
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*CryptoFrame ).Length (_ Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*CryptoFrame ).MaybeSplitOffFrame (maxSize ByteCount , version Version ) (*wire .CryptoFrame , bool )
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*DataBlockedFrame ).Append (b []byte , version Version ) ([]byte , error )
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*DataBlockedFrame ).Length (version Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*DatagramFrame ).Append (b []byte , _ Version ) ([]byte , error )
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*DatagramFrame ).Length (_ Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*DatagramFrame ).MaxDataLen (maxSize ByteCount , version Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*ExtendedHeader ).Append (b []byte , v Version ) ([]byte , error )
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*ExtendedHeader ).GetLength (_ Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.Frame .Append (b []byte , version Version ) ([]byte , error )
func github.com/tmc/go-iroh/internal/qng/internal/wire.Frame .Length (version Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*FrameParser ).ParseAckFrame (frameType wire .FrameType , data []byte , encLevel EncryptionLevel , v Version ) (*wire .AckFrame , int , error )
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*FrameParser ).ParseDatagramFrame (frameType wire .FrameType , data []byte , v Version ) (*wire .DatagramFrame , int , error )
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*FrameParser ).ParseLessCommonFrame (frameType wire .FrameType , data []byte , v Version ) (wire .Frame , int , error )
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*FrameParser ).ParseStreamFrame (frameType wire .FrameType , data []byte , v Version ) (*wire .StreamFrame , int , error )
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*HandshakeDoneFrame ).Append (b []byte , _ Version ) ([]byte , error )
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*HandshakeDoneFrame ).Length (_ Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*ImmediateAckFrame ).Append (b []byte , _ Version ) ([]byte , error )
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*ImmediateAckFrame ).Length (_ Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*MaxDataFrame ).Append (b []byte , _ Version ) ([]byte , error )
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*MaxDataFrame ).Length (_ Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*MaxPathIDFrame ).Append (b []byte , _ Version ) ([]byte , error )
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*MaxPathIDFrame ).Length (_ Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*MaxStreamDataFrame ).Append (b []byte , _ Version ) ([]byte , error )
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*MaxStreamDataFrame ).Length (Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*MaxStreamsFrame ).Append (b []byte , _ Version ) ([]byte , error )
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*MaxStreamsFrame ).Length (Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*NewConnectionIDFrame ).Append (b []byte , _ Version ) ([]byte , error )
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*NewConnectionIDFrame ).Length (Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*NewTokenFrame ).Append (b []byte , _ Version ) ([]byte , error )
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*NewTokenFrame ).Length (Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*ObservedAddrFrame ).Append (b []byte , _ Version ) ([]byte , error )
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*ObservedAddrFrame ).Length (_ Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*PathAbandonFrame ).Append (b []byte , _ Version ) ([]byte , error )
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*PathAbandonFrame ).Length (_ Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*PathAckFrame ).Append (b []byte , v Version ) ([]byte , error )
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*PathAckFrame ).Length (v Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*PathChallengeFrame ).Append (b []byte , _ Version ) ([]byte , error )
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*PathChallengeFrame ).Length (_ Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*PathCIDsBlockedFrame ).Append (b []byte , _ Version ) ([]byte , error )
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*PathCIDsBlockedFrame ).Length (_ Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*PathResponseFrame ).Append (b []byte , _ Version ) ([]byte , error )
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*PathResponseFrame ).Length (_ Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*PathsBlockedFrame ).Append (b []byte , _ Version ) ([]byte , error )
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*PathsBlockedFrame ).Length (_ Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*PathStatusAvailableFrame ).Append (b []byte , _ Version ) ([]byte , error )
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*PathStatusAvailableFrame ).Length (_ Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*PathStatusBackupFrame ).Append (b []byte , _ Version ) ([]byte , error )
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*PathStatusBackupFrame ).Length (_ Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*PingFrame ).Append (b []byte , _ Version ) ([]byte , error )
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*PingFrame ).Length (_ Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*ReachOutFrame ).Append (b []byte , _ Version ) ([]byte , error )
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*ReachOutFrame ).Length (_ Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*RemoveAddressFrame ).Append (b []byte , _ Version ) ([]byte , error )
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*RemoveAddressFrame ).Length (_ Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*ResetStreamFrame ).Append (b []byte , _ Version ) ([]byte , error )
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*ResetStreamFrame ).Length (Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*RetireConnectionIDFrame ).Append (b []byte , _ Version ) ([]byte , error )
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*RetireConnectionIDFrame ).Length (Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*StopSendingFrame ).Append (b []byte , _ Version ) ([]byte , error )
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*StopSendingFrame ).Length (_ Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*StreamDataBlockedFrame ).Append (b []byte , _ Version ) ([]byte , error )
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*StreamDataBlockedFrame ).Length (Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*StreamFrame ).Append (b []byte , _ Version ) ([]byte , error )
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*StreamFrame ).Length (Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*StreamFrame ).MaxDataLen (maxSize ByteCount , _ Version ) ByteCount
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*StreamFrame ).MaybeSplitOffFrame (maxSize ByteCount , version Version ) (*wire .StreamFrame , bool )
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*StreamsBlockedFrame ).Append (b []byte , _ Version ) ([]byte , error )
func github.com/tmc/go-iroh/internal/qng/internal/wire.(*StreamsBlockedFrame ).Length (_ Version ) ByteCount
As Types Of (total 5 )
const Version1
const Version2
const VersionUnknown
const github.com/tmc/go-iroh/internal/qng.Version1
const github.com/tmc/go-iroh/internal/qng.Version2
Package-Level Functions (total 12)
Package-Level Variables (total 2)
Package-Level Constants (total 104)
The pages are generated with Golds v0.8.4 . (GOOS=linux GOARCH=amd64)
Golds is a Go 101 project developed by Tapir Liu .
PR and bug reports are welcome and can be submitted to the issue list .
Please follow @zigo_101 (reachable from the left QR code) to get the latest news of Golds .