aboutsummaryrefslogtreecommitdiff
path: root/src/pkg/http
diff options
context:
space:
mode:
Diffstat (limited to 'src/pkg/http')
-rw-r--r--src/pkg/http/serve_test.go4
-rw-r--r--src/pkg/http/server.go5
2 files changed, 4 insertions, 5 deletions
diff --git a/src/pkg/http/serve_test.go b/src/pkg/http/serve_test.go
index 79fda11bfc..731a3279f0 100644
--- a/src/pkg/http/serve_test.go
+++ b/src/pkg/http/serve_test.go
@@ -536,10 +536,6 @@ func TestHeadResponses(t *testing.T) {
}
func TestTLSHandshakeTimeout(t *testing.T) {
- if true {
- t.Logf("Skipping broken test; issue 2281")
- return
- }
ts := httptest.NewUnstartedServer(HandlerFunc(func(w ResponseWriter, r *Request) {}))
ts.Config.ReadTimeout = 250e6
ts.StartTLS()
diff --git a/src/pkg/http/server.go b/src/pkg/http/server.go
index 018be8cd3e..9792c60e7b 100644
--- a/src/pkg/http/server.go
+++ b/src/pkg/http/server.go
@@ -578,7 +578,10 @@ func (c *conn) serve() {
}()
if tlsConn, ok := c.rwc.(*tls.Conn); ok {
- tlsConn.Handshake()
+ if err := tlsConn.Handshake(); err != nil {
+ c.close()
+ return
+ }
c.tlsState = new(tls.ConnectionState)
*c.tlsState = tlsConn.ConnectionState()
}