MCPcopy Create free account
hub / github.com/XTLS/Go / ClientSessionState

Struct ClientSessionState

common.go:330–345  ·  view source on GitHub ↗

ClientSessionState contains the state needed by clients to resume TLS sessions.

Source from the content-addressed store, hash-verified

328// ClientSessionState contains the state needed by clients to resume TLS
329// sessions.
330type ClientSessionState struct {
331 sessionTicket []uint8 // Encrypted ticket used for session resumption with server
332 vers uint16 // TLS version negotiated for the session
333 cipherSuite uint16 // Ciphersuite negotiated for the session
334 masterSecret []byte // Full handshake MasterSecret, or TLS 1.3 resumption_master_secret
335 serverCertificates []*x509.Certificate // Certificate chain presented by the server
336 verifiedChains [][]*x509.Certificate // Certificate chains we built for verification
337 receivedAt time.Time // When the session ticket was received from the server
338 ocspResponse []byte // Stapled OCSP response presented by the server
339 scts [][]byte // SCTs presented by the server
340
341 // TLS 1.3 fields.
342 nonce []byte // Ticket nonce sent by the server, to derive PSK
343 useBy time.Time // Expiration of the ticket lifetime as set by the server
344 ageAdd uint32 // Random obfuscation factor for sending the ticket age
345}
346
347// ClientSessionCache is a cache of ClientSessionState objects that can be used
348// by a client to resume a TLS session with a given server. ClientSessionCache

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected