mirror of
https://github.com/golang/go
synced 2024-09-15 22:20:06 +00:00
crypto/tls: add VersionName
Fixes #46308 Change-Id: I5162b26cbce61ae5df5d2e093cf8a28406d15863 Reviewed-on: https://go-review.googlesource.com/c/go/+/497377 Auto-Submit: Filippo Valsorda <filippo@golang.org> Reviewed-by: Marten Seemann <martenseemann@gmail.com> Reviewed-by: Roland Shoemaker <roland@golang.org> Reviewed-by: Ian Lance Taylor <iant@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: Samuli Silvius <samuli.silvius@gmail.com> Reviewed-by: Damien Neil <dneil@google.com> Run-TryBot: Filippo Valsorda <filippo@golang.org>
This commit is contained in:
parent
4406ed6d4e
commit
b267db08b2
1
api/next/46308.txt
Normal file
1
api/next/46308.txt
Normal file
|
@ -0,0 +1 @@
|
|||
pkg crypto/tls, func VersionName(uint16) string #46308
|
|
@ -36,6 +36,26 @@ const (
|
|||
VersionSSL30 = 0x0300
|
||||
)
|
||||
|
||||
// VersionName returns the name for the provided TLS version number
|
||||
// (e.g. "TLS 1.3"), or a fallback representation of the value if the
|
||||
// version is not implemented by this package.
|
||||
func VersionName(version uint16) string {
|
||||
switch version {
|
||||
case VersionSSL30:
|
||||
return "SSLv3"
|
||||
case VersionTLS10:
|
||||
return "TLS 1.0"
|
||||
case VersionTLS11:
|
||||
return "TLS 1.1"
|
||||
case VersionTLS12:
|
||||
return "TLS 1.2"
|
||||
case VersionTLS13:
|
||||
return "TLS 1.3"
|
||||
default:
|
||||
return fmt.Sprintf("0x%04X", version)
|
||||
}
|
||||
}
|
||||
|
||||
const (
|
||||
maxPlaintext = 16384 // maximum plaintext payload length
|
||||
maxCiphertext = 16384 + 2048 // maximum ciphertext payload length
|
||||
|
|
|
@ -1590,6 +1590,15 @@ func TestCipherSuites(t *testing.T) {
|
|||
}
|
||||
}
|
||||
|
||||
func TestVersionName(t *testing.T) {
|
||||
if got, exp := VersionName(VersionTLS13), "TLS 1.3"; got != exp {
|
||||
t.Errorf("unexpected VersionName: got %q, expected %q", got, exp)
|
||||
}
|
||||
if got, exp := VersionName(0x12a), "0x012A"; got != exp {
|
||||
t.Errorf("unexpected fallback VersionName: got %q, expected %q", got, exp)
|
||||
}
|
||||
}
|
||||
|
||||
// http2isBadCipher is copied from net/http.
|
||||
// TODO: if it ends up exposed somewhere, use that instead.
|
||||
func http2isBadCipher(cipher uint16) bool {
|
||||
|
|
Loading…
Reference in a new issue