Commit 822804c6 authored by Brad Fitzpatrick's avatar Brad Fitzpatrick

http: support setting Transport's TLS client config

R=golang-dev, adg
CC=golang-dev
https://golang.org/cl/4964043
parent a45c657d
...@@ -54,6 +54,10 @@ type Transport struct { ...@@ -54,6 +54,10 @@ type Transport struct {
// If Dial is nil, net.Dial is used. // If Dial is nil, net.Dial is used.
Dial func(net, addr string) (c net.Conn, err os.Error) Dial func(net, addr string) (c net.Conn, err os.Error)
// TLSClientConfig specifies the TLS configuration to use with
// tls.Client. If nil, the default configuration is used.
TLSClientConfig *tls.Config
DisableKeepAlives bool DisableKeepAlives bool
DisableCompression bool DisableCompression bool
...@@ -338,7 +342,7 @@ func (t *Transport) getConn(cm *connectMethod) (*persistConn, os.Error) { ...@@ -338,7 +342,7 @@ func (t *Transport) getConn(cm *connectMethod) (*persistConn, os.Error) {
if cm.targetScheme == "https" { if cm.targetScheme == "https" {
// Initiate TLS and check remote host name against certificate. // Initiate TLS and check remote host name against certificate.
conn = tls.Client(conn, nil) conn = tls.Client(conn, t.TLSClientConfig)
if err = conn.(*tls.Conn).Handshake(); err != nil { if err = conn.(*tls.Conn).Handshake(); err != nil {
return nil, err return nil, err
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment