Code
Hub
Workspaces
Following
Trending
Connect
MCP
copy
Create free account
hub
/
github.com/XTLS/Go
/ functions
Functions
328 in github.com/XTLS/Go
⨍
Functions
328
◇
Types & classes
69
↓ 1 callers
Method
processClientKeyExchange
(*Config, *Certificate, *clientKeyExchangeMsg, uint16)
key_agreement.go:27
↓ 1 callers
Method
processHelloRetryRequest
processHelloRetryRequest handles the HRR in hs.serverHello, modifies and resends hs.hello, and reads the new ServerHello into hs.serverHello.
handshake_client_tls13.go:177
↓ 1 callers
Method
processServerHello
()
handshake_client.go:684
↓ 1 callers
Method
processServerHello
()
handshake_client_tls13.go:287
↓ 1 callers
Method
processServerKeyExchange
On the client side, the next two methods are called in order. This method may not be called if the server doesn't send a ServerKeyExchange message.
key_agreement.go:33
↓ 1 callers
Function
publicKey
(priv any)
generate_cert.go:40
↓ 1 callers
Method
readClientCertificate
()
handshake_server_tls13.go:765
↓ 1 callers
Method
readClientFinished
()
handshake_server_tls13.go:850
↓ 1 callers
Method
readClientHello
readClientHello reads a ClientHello message and selects the protocol version.
handshake_server.go:131
↓ 1 callers
Method
readServerCertificate
()
handshake_client_tls13.go:408
↓ 1 callers
Method
readServerFinished
()
handshake_client_tls13.go:497
↓ 1 callers
Method
readServerParameters
()
handshake_client_tls13.go:384
↓ 1 callers
Function
roundUp
(a, b int)
conn.go:346
↓ 1 callers
Method
sendClientCertificate
()
handshake_client_tls13.go:543
↓ 1 callers
Method
sendClientFinished
()
handshake_client_tls13.go:612
↓ 1 callers
Method
sendServerCertificate
()
handshake_server_tls13.go:574
↓ 1 callers
Method
sendServerFinished
()
handshake_server_tls13.go:644
↓ 1 callers
Method
sendServerParameters
()
handshake_server_tls13.go:514
↓ 1 callers
Method
serverResumedSession
()
handshake_client.go:677
↓ 1 callers
Method
shouldSendSessionTickets
()
handshake_server_tls13.go:692
↓ 1 callers
Function
signatureSchemesForCertificate
signatureSchemesForCertificate returns the list of supported SignatureSchemes for a given certificate, based on the public key and the protocol versio
auth.go:172
↓ 1 callers
Function
splitPreMasterSecret
Split a premaster secret in two as specified in RFC 4346, Section 5.
prf.go:20
↓ 1 callers
Method
ticketKeys
ticketKeys returns the ticketKeys for this connection. If configForClient has explicitly set keys, those will be returned. Otherwise, the keys on c wi
common.go:863
↓ 1 callers
Method
trafficKey
trafficKey generates traffic keys according to RFC 8446, Section 7.3.
key_schedule.go:76
Method
Accept
Accept waits for and returns the next incoming TLS connection. The returned connection is of type *Conn.
tls.go:65
Method
BuildNameToCertificate
BuildNameToCertificate parses c.Certificates and builds c.NameToCertificate from the CommonName and SubjectAlternateName fields of each of the leaf ce
common.go:1300
Function
CipherSuiteName
CipherSuiteName returns the standard name for the passed cipher suite ID (e.g. "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256"), or a fallback representatio
cipher_suites.go:99
Method
CloseWrite
CloseWrite shuts down the writing side of the connection. It should only be called once the handshake has completed and does not call CloseWrite on th
conn.go:1633
Method
ConnectionState
ConnectionState returns basic TLS details about the connection.
conn.go:1758
Method
Context
Context returns the context of the handshake that is in progress. This context is a child of the context passed to HandshakeContext, if any, and is ca
common.go:452
Method
Context
Context returns the context of the handshake that is in progress. This context is a child of the context passed to HandshakeContext, if any, and is ca
common.go:480
Method
CurveID
()
key_schedule.go:158
Method
CurveID
()
key_schedule.go:185
Function
Dial
Dial connects to the given network address using net.Dial and then initiates a TLS handshake, returning the resulting TLS connection. Dial interprets
tls.go:170
Method
Dial
Dial connects to the given network address and initiates a TLS handshake, returning the resulting TLS connection. The returned Conn, if any, will alw
tls.go:196
Method
Error
()
conn.go:210
Method
Error
()
conn.go:597
Method
Error
()
tls.go:102
Method
ExportKeyingMaterial
ExportKeyingMaterial returns length bytes of exported key material in a new slice as defined in RFC 5705. If context is nil, it is not used as part of
common.go:285
Method
Get
Get returns the ClientSessionState value associated with a given key. It returns (nil, false) if no value is found.
common.go:1448
Function
Listen
Listen creates a TLS listener accepting connections on the given network address using net.Listen. The configuration config must be non-nil and must i
tls.go:88
Function
LoadX509KeyPair
LoadX509KeyPair reads and parses a public/private key pair from a pair of files. The files must contain PEM encoded data. The certificate file may con
tls.go:230
Method
LocalAddr
Access to net.Conn methods. Cannot just embed net.Conn because that would export the struct field too. LocalAddr returns the local network address.
conn.go:151
Method
NetConn
NetConn returns the underlying connection that is wrapped by c. Note that writing to or reading from this connection directly will corrupt the TLS ses
conn.go:183
Function
NewLRUClientSessionCache
NewLRUClientSessionCache returns a ClientSessionCache with the given capacity that uses an LRU strategy. If capacity is < 1, a default capacity is use
common.go:1400
Method
NonceSize
()
cipher_suites.go:476
Method
OCSPResponse
OCSPResponse returns the stapled OCSP response from the TLS server, if any. (Only valid for client connections.)
conn.go:1794
Method
Open
(out, nonce, ciphertext, additionalData []byte)
cipher_suites.go:464
Method
Overhead
()
cipher_suites.go:456
Method
PublicKey
()
key_schedule.go:162
Method
PublicKey
()
key_schedule.go:189
Method
Put
Put adds the provided (sessionKey, cs) pair to the cache. If cs is nil, the entry corresponding to sessionKey is removed from the cache instead.
common.go:1415
Method
Read
(p []byte)
conn.go:882
Method
Seal
(out, nonce, plaintext, additionalData []byte)
cipher_suites.go:459
Method
SetDeadline
SetDeadline sets the read and write deadlines associated with the connection. A zero value for t means Read and Write will not time out. After a Write
conn.go:163
Method
SetReadDeadline
SetReadDeadline sets the read deadline on the underlying connection. A zero value for t means Read will not time out.
conn.go:169
Method
SetSessionTicketKeys
SetSessionTicketKeys updates the session ticket keys for a server. The first key will be used when creating new tickets, while all keys can be used f
common.go:931
Method
SharedKey
(peerPublicKey []byte)
key_schedule.go:167
Method
SharedKey
(peerPublicKey []byte)
key_schedule.go:193
Method
String
()
common_string.go:41
Method
String
()
common_string.go:85
Method
String
()
common_string.go:111
Method
SupportsCertificate
SupportsCertificate returns nil if the provided certificate is supported by the server that sent the CertificateRequest. Otherwise, it returns an erro
common.go:1264
Method
Temporary
()
tls.go:104
Method
Timeout
()
conn.go:212
Method
Timeout
()
tls.go:103
Method
Unwrap
()
conn.go:211
Function
_
()
common_string.go:7
Function
aeadAESGCM
(key, noncePrefix []byte)
cipher_suites.go:504
Function
aeadAESGCMTLS13
(key, nonceMask []byte)
cipher_suites.go:522
Function
aeadChaCha20Poly1305
(key, nonceMask []byte)
cipher_suites.go:540
Function
cipher3DES
(key, iv []byte, isRead bool)
cipher_suites.go:406
Function
cipherAES
(key, iv []byte, isRead bool)
cipher_suites.go:414
Function
cipherRC4
(key, iv []byte, isRead bool)
cipher_suites.go:401
Method
cipherSuiteOk
(c *cipherSuite)
handshake_server.go:368
Function
ecdheECDSAKA
(version uint16)
cipher_suites.go:594
Function
ecdheRSAKA
(version uint16)
cipher_suites.go:601
Method
explicitNonceLen
()
cipher_suites.go:457
Method
explicitNonceLen
()
cipher_suites.go:478
Method
generateClientKeyExchange
(config *Config, clientHello *clientHelloMsg, cert *x509.Certificate)
key_agreement.go:80
Method
generateClientKeyExchange
(config *Config, clientHello *clientHelloMsg, cert *x509.Certificate)
key_agreement.go:351
Method
generateServerKeyExchange
(config *Config, cert *Certificate, clientHello *clientHelloMsg, hello *serverHelloMsg)
key_agreement.go:44
Method
generateServerKeyExchange
(config *Config, cert *Certificate, clientHello *clientHelloMsg, hello *serverHelloMsg)
key_agreement.go:168
Method
handshake
handshake requires hs.c, hs.hello, hs.serverHello, hs.ecdheParams, and, optionally, hs.session, hs.earlySecret and hs.binderKey to be set.
handshake_client_tls13.go:41
Method
handshake
()
handshake_server_tls13.go:45
Function
macSHA1
macSHA1 returns a SHA-1 based constant time MAC.
cipher_suites.go:423
Function
macSHA256
macSHA256 returns a SHA-256 based MAC. This is only supported in TLS 1.2 and is currently only used in disabled-by-default cipher suites.
cipher_suites.go:429
Function
main
()
generate_cert.go:53
Method
marshal
()
handshake_messages.go:858
Method
marshal
()
handshake_messages.go:929
Method
marshal
()
handshake_messages.go:992
Method
marshal
()
handshake_messages.go:1073
Method
marshal
()
handshake_messages.go:1219
Method
marshal
()
handshake_messages.go:1298
Method
marshal
()
handshake_messages.go:1442
Method
marshal
()
handshake_messages.go:1472
Method
marshal
()
handshake_messages.go:1506
Method
marshal
()
handshake_messages.go:1521
Method
marshal
()
handshake_messages.go:1767
Method
marshal
()
handshake_messages.go:1814
← previous
next →
201–300 of 328, ranked by callers