Versions in this module Expand all Collapse all v0 v0.2.1 Dec 11, 2022 Changes in this version + var ErrFlowControlRenegotiationNotSupported = qerr.Error(qerr.InvalidCryptoMessageParameter, ...) + var ErrHOLExperiment = qerr.Error(qerr.InvalidCryptoMessageParameter, "HOL experiment. Unsupported") + var ErrMalformedTag = qerr.Error(qerr.InvalidCryptoMessageParameter, "malformed Tag value") + var ErrNSTPExperiment = qerr.Error(qerr.InvalidCryptoMessageParameter, "NSTP experiment. Unsupported") + type ConnectionParametersManager interface + GetHelloMap func() (map[Tag][]byte, error) + GetIdleConnectionStateLifetime func() time.Duration + GetMaxIncomingStreams func() uint32 + GetMaxOutgoingStreams func() uint32 + GetMaxReceiveConnectionFlowControlWindow func() protocol.ByteCount + GetMaxReceiveStreamFlowControlWindow func() protocol.ByteCount + GetReceiveConnectionFlowControlWindow func() protocol.ByteCount + GetReceiveStreamFlowControlWindow func() protocol.ByteCount + GetSendConnectionFlowControlWindow func() protocol.ByteCount + GetSendStreamFlowControlWindow func() protocol.ByteCount + SetFromMap func(map[Tag][]byte) error + TruncateConnectionID func() bool + func NewConnectionParamatersManager(pers protocol.Perspective, v protocol.VersionNumber, ...) ConnectionParametersManager + type Cookie struct + RemoteAddr string + SentTime time.Time + type CookieGenerator struct + func NewCookieGenerator() (*CookieGenerator, error) + func (g *CookieGenerator) DecodeToken(encrypted []byte) (*Cookie, error) + func (g *CookieGenerator) NewToken(raddr net.Addr) ([]byte, error) + type CryptoSetup interface + DiversificationNonce func() []byte + GetSealer func() (protocol.EncryptionLevel, Sealer) + GetSealerForCryptoStream func() (protocol.EncryptionLevel, Sealer) + GetSealerWithEncryptionLevel func(protocol.EncryptionLevel) (Sealer, error) + HandleCryptoStream func() error + Open func(dst, src []byte, packetNumber protocol.PacketNumber, associatedData []byte) ([]byte, protocol.EncryptionLevel, error) + SetDiversificationNonce func([]byte) + func NewCryptoSetup(connID protocol.ConnectionID, remoteAddr net.Addr, ...) (CryptoSetup, error) + func NewCryptoSetupClient(hostname string, connID protocol.ConnectionID, version protocol.VersionNumber, ...) (CryptoSetup, error) + func NewCryptoSetupTLS(hostname string, perspective protocol.Perspective, ...) (CryptoSetup, error) + type HandshakeMessage struct + Data map[Tag][]byte + Tag Tag + func ParseHandshakeMessage(r io.Reader) (HandshakeMessage, error) + func (h HandshakeMessage) String() string + func (h HandshakeMessage) Write(b *bytes.Buffer) + type KeyDerivationFunction func(crypto.MintController, protocol.Perspective) (crypto.AEAD, error) + type KeyExchangeFunction func() crypto.KeyExchange + type QuicCryptoKeyDerivationFunction func(forwardSecure bool, sharedSecret, nonces []byte, connID protocol.ConnectionID, ...) (crypto.AEAD, error) + type Sealer interface + Overhead func() int + Seal func(dst, src []byte, packetNumber protocol.PacketNumber, associatedData []byte) []byte + type ServerConfig struct + ID []byte + func NewServerConfig(kex crypto.KeyExchange, certChain crypto.CertChain) (*ServerConfig, error) + func (s *ServerConfig) Get() []byte + func (s *ServerConfig) GetCertsCompressed(sni string, commonSetHashes, compressedHashes []byte) ([]byte, error) + func (s *ServerConfig) Sign(sni string, chlo []byte) ([]byte, error) + type Tag uint32 + const TagAEAD + const TagCCRT + const TagCCS + const TagCERT + const TagCFCW + const TagCHLO + const TagCOPT + const TagCSCT + const TagEXPY + const TagFHL2 + const TagICSL + const TagKEXS + const TagMIDS + const TagMSPC + const TagNONC + const TagNONP + const TagNSTP + const TagOBIT + const TagPAD + const TagPDMD + const TagPROF + const TagPRST + const TagPUBS + const TagREJ + const TagRNON + const TagRSEQ + const TagSCFG + const TagSCID + const TagSCLS + const TagSFCW + const TagSHLO + const TagSNI + const TagSNO + const TagSRBF + const TagSTK + const TagSVID + const TagTCID + const TagUAID + const TagVER + const TagXLCT + type TransportParameters struct + CacheHandshake bool + RequestConnectionIDTruncation bool