Skip to content

Commit

Permalink
net/http: fix comment change omitted between versions of CL 143177
Browse files Browse the repository at this point in the history
Updates #23689

Change-Id: Icddec2fcc39802cacd651a9c94290e86cf1e48d1
Reviewed-on: https://go-review.googlesource.com/c/144517
Reviewed-by: Ian Lance Taylor <iant@golang.org>
  • Loading branch information
bradfitz committed Oct 25, 2018
1 parent c942191 commit fc4f2e5
Showing 1 changed file with 3 additions and 5 deletions.
8 changes: 3 additions & 5 deletions src/net/http/server.go
Original file line number Diff line number Diff line change
Expand Up @@ -1782,11 +1782,9 @@ func (c *conn) serve(ctx context.Context) {
c.rwc.SetWriteDeadline(time.Now().Add(d))
}
if err := tlsConn.Handshake(); err != nil {
// If the handshake failed, one reason might be a
// misconfigured client sending an HTTP request. If so, reach
// into the *tls.Conn unexported fields in a gross way so we
// can reply on the plaintext connection. At least there's a
// test that'll break if we rearrange the *tls.Conn struct.
// If the handshake failed due to the client not speaking
// TLS, assume they're speaking plaintext HTTP and write a
// 400 response on the TLS conn's underlying net.Conn.
if re, ok := err.(tls.RecordHeaderError); ok && re.Conn != nil && tlsRecordHeaderLooksLikeHTTP(re.RecordHeader) {
io.WriteString(re.Conn, "HTTP/1.0 400 Bad Request\r\n\r\nClient sent an HTTP request to an HTTPS server.\n")
re.Conn.Close()
Expand Down

0 comments on commit fc4f2e5

Please sign in to comment.