Alternative TLS implementation in Go
Go to file
Filippo Valsorda 37110e801a crypto/tls: flush the buffer on handshake errors
Since 2a8c81ff handshake messages are not written directly to wire but
buffered.  If an error happens at the wrong time the alert will be
written to the buffer but never flushed, causing an EOF on the client
instead of a more descriptive alert.

Thanks to Brendan McMillion for reporting this.

Fixes #17037

Change-Id: Ie093648aa3f754f4bc61c2e98c79962005dd6aa2
Reviewed-on: https://go-review.googlesource.com/28818
Reviewed-by: Adam Langley <agl@golang.org>
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
Run-TryBot: Adam Langley <agl@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
2016-09-11 23:29:03 +00:00
testdata crypto/tls: add KeyLogWriter for debugging 2016-08-27 17:20:55 +00:00
alert.go crypto/tls: make error prefix uniform. 2016-04-14 16:28:53 +00:00
cipher_suites.go crypto/tls: fix comment typo. 2016-08-18 21:52:31 +00:00
common.go crypto/tls: Add mutex to protect KeyLogWriter 2016-09-10 21:31:48 +00:00
conn_test.go crypto/tls: add Config.Clone 2016-09-01 04:26:12 +00:00
conn.go crypto/tls: flush the buffer on handshake errors 2016-09-11 23:29:03 +00:00
example_test.go crypto/x509: add example of using a custom root list. 2014-02-19 11:18:35 -05:00
generate_cert.go crypto/tls: Support ECDSA keys in generate_cert.go 2014-07-28 14:46:34 -07:00
handshake_client_test.go crypto/tls: flush the buffer on handshake errors 2016-09-11 23:29:03 +00:00
handshake_client.go crypto/tls: add KeyLogWriter for debugging 2016-08-27 17:20:55 +00:00
handshake_messages_test.go crypto/tls: decouple handshake signatures from the handshake hash. 2015-04-30 03:47:02 +00:00
handshake_messages.go crypto/tls: allow renegotiation to be handled by a client. 2016-04-28 17:56:28 +00:00
handshake_server_test.go crypto/tls: add Config.Clone 2016-09-01 04:26:12 +00:00
handshake_server.go crypto/tls: add KeyLogWriter for debugging 2016-08-27 17:20:55 +00:00
handshake_test.go crypto/tls: fix WriteTo method signature 2016-08-16 14:36:19 +00:00
key_agreement.go crypto/tls: make error prefix uniform. 2016-04-14 16:28:53 +00:00
prf_test.go crypto/tls: decouple handshake signatures from the handshake hash. 2015-04-30 03:47:02 +00:00
prf.go all: standardize RFC mention format 2016-04-12 21:07:52 +00:00
ticket.go crypto/tls: minor refactors for readability 2016-03-14 21:17:37 +00:00
tls_test.go crypto/tls: add Config.Clone 2016-09-01 04:26:12 +00:00
tls.go crypto/tls: add Config.Clone 2016-09-01 04:26:12 +00:00