package mox import ( "crypto/tls" "fmt" ) // TLSInfo returns human-readable strings about the TLS connection, for use in // logging. func TLSInfo(conn *tls.Conn) (version, ciphersuite string) { st := conn.ConnectionState() versions := map[uint16]string{ tls.VersionTLS10: "TLS1.0", tls.VersionTLS11: "TLS1.1", tls.VersionTLS12: "TLS1.2", tls.VersionTLS13: "TLS1.3", } v, ok := versions[st.Version] if ok { version = v } else { version = fmt.Sprintf("TLS %x", st.Version) } ciphersuite = tls.CipherSuiteName(st.CipherSuite) return }