| // +build go1.7,!go1.8 |
| |
| package client |
| |
| import "crypto/tls" |
| |
| // tlsConfigClone returns a clone of tls.Config. This function is provided for |
| // compatibility for go1.7 that doesn't include this method in stdlib. |
| func tlsConfigClone(c *tls.Config) *tls.Config { |
| return &tls.Config{ |
| Rand: c.Rand, |
| Time: c.Time, |
| Certificates: c.Certificates, |
| NameToCertificate: c.NameToCertificate, |
| GetCertificate: c.GetCertificate, |
| RootCAs: c.RootCAs, |
| NextProtos: c.NextProtos, |
| ServerName: c.ServerName, |
| ClientAuth: c.ClientAuth, |
| ClientCAs: c.ClientCAs, |
| InsecureSkipVerify: c.InsecureSkipVerify, |
| CipherSuites: c.CipherSuites, |
| PreferServerCipherSuites: c.PreferServerCipherSuites, |
| SessionTicketsDisabled: c.SessionTicketsDisabled, |
| SessionTicketKey: c.SessionTicketKey, |
| ClientSessionCache: c.ClientSessionCache, |
| MinVersion: c.MinVersion, |
| MaxVersion: c.MaxVersion, |
| CurvePreferences: c.CurvePreferences, |
| DynamicRecordSizingDisabled: c.DynamicRecordSizingDisabled, |
| Renegotiation: c.Renegotiation, |
| } |
| } |