Merge pull request #2456 from xiang90/tls

pkg/transport: fix downgrade https to http bug in transport
This commit is contained in:
Xiang Li 2015-03-06 11:39:44 -08:00
commit b374f93bb8
2 changed files with 11 additions and 1 deletions

View File

@ -31,7 +31,10 @@ func NewListener(addr string, scheme string, info TLSInfo) (net.Listener, error)
return nil, err return nil, err
} }
if !info.Empty() && scheme == "https" { if scheme == "https" {
if info.Empty() {
return nil, fmt.Errorf("cannot listen on TLS for %s: KeyFile and CertFile are not presented", scheme+"://"+addr)
}
cfg, err := info.ServerConfig() cfg, err := info.ServerConfig()
if err != nil { if err != nil {
return nil, err return nil, err

View File

@ -70,6 +70,13 @@ func TestNewListenerTLSInfo(t *testing.T) {
} }
} }
func TestNewListenerTLSEmptyInfo(t *testing.T) {
_, err := NewListener("127.0.0.1:0", "https", TLSInfo{})
if err == nil {
t.Errorf("err = nil, want not presented error")
}
}
func TestNewListenerTLSInfoNonexist(t *testing.T) { func TestNewListenerTLSInfoNonexist(t *testing.T) {
tlsInfo := TLSInfo{CertFile: "@badname", KeyFile: "@badname"} tlsInfo := TLSInfo{CertFile: "@badname", KeyFile: "@badname"}
_, err := NewListener("127.0.0.1:0", "https", tlsInfo) _, err := NewListener("127.0.0.1:0", "https", tlsInfo)