Merge pull request #756 from heyitsanthony/fix-cred-clobber
credentials: don't overwrite ServerName in given config
This commit is contained in:
@ -151,14 +151,16 @@ func (c *tlsCreds) ClientHandshake(addr string, rawConn net.Conn, timeout time.D
|
|||||||
errChannel <- timeoutError{}
|
errChannel <- timeoutError{}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
// use local cfg to avoid clobbering ServerName if using multiple endpoints
|
||||||
|
cfg := *c.config
|
||||||
if c.config.ServerName == "" {
|
if c.config.ServerName == "" {
|
||||||
colonPos := strings.LastIndex(addr, ":")
|
colonPos := strings.LastIndex(addr, ":")
|
||||||
if colonPos == -1 {
|
if colonPos == -1 {
|
||||||
colonPos = len(addr)
|
colonPos = len(addr)
|
||||||
}
|
}
|
||||||
c.config.ServerName = addr[:colonPos]
|
cfg.ServerName = addr[:colonPos]
|
||||||
}
|
}
|
||||||
conn := tls.Client(rawConn, c.config)
|
conn := tls.Client(rawConn, &cfg)
|
||||||
if timeout == 0 {
|
if timeout == 0 {
|
||||||
err = conn.Handshake()
|
err = conn.Handshake()
|
||||||
} else {
|
} else {
|
||||||
|
Reference in New Issue
Block a user