Include ServerName in tls transport cache key

Kubernetes-commit: 195a4d6f6da77ec39c5f80f3906406583c143996
This commit is contained in:
Jordan Liggitt 2017-11-27 10:05:26 -05:00 committed by Kubernetes Publisher
parent b59eb049cd
commit fdf7e51f22
2 changed files with 15 additions and 1 deletions

View File

@ -88,5 +88,5 @@ func tlsConfigKey(c *Config) (string, error) {
return "", err return "", err
} }
// Only include the things that actually affect the tls.Config // Only include the things that actually affect the tls.Config
return fmt.Sprintf("%v/%x/%x/%x", c.TLS.Insecure, c.TLS.CAData, c.TLS.CertData, c.TLS.KeyData), nil return fmt.Sprintf("%v/%x/%x/%x/%v", c.TLS.Insecure, c.TLS.CAData, c.TLS.CertData, c.TLS.KeyData, c.TLS.ServerName), nil
} }

View File

@ -62,6 +62,20 @@ func TestTLSConfigKey(t *testing.T) {
KeyData: []byte{1}, KeyData: []byte{1},
}, },
}, },
"cert 1, key 1, servername 1": {
TLS: TLSConfig{
CertData: []byte{1},
KeyData: []byte{1},
ServerName: "1",
},
},
"cert 1, key 1, servername 2": {
TLS: TLSConfig{
CertData: []byte{1},
KeyData: []byte{1},
ServerName: "2",
},
},
"cert 1, key 2": { "cert 1, key 2": {
TLS: TLSConfig{ TLS: TLSConfig{
CertData: []byte{1}, CertData: []byte{1},