From: Adam Langley Date: Fri, 10 Sep 2010 19:55:35 +0000 (-0400) Subject: crypto/tls: don't return an error from Close() X-Git-Tag: weekly.2010-09-15~55 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=5011c27018bf7fb5091c501cae71ab3dc6a59a6b;p=gostls13.git crypto/tls: don't return an error from Close() Fixes #1037. R=adg, rsc1 CC=golang-dev https://golang.org/cl/2107048 --- diff --git a/src/pkg/crypto/tls/conn.go b/src/pkg/crypto/tls/conn.go index 2357297b75..85e76a00c0 100644 --- a/src/pkg/crypto/tls/conn.go +++ b/src/pkg/crypto/tls/conn.go @@ -445,7 +445,11 @@ func (c *Conn) sendAlertLocked(err alert) os.Error { } c.tmp[1] = byte(err) c.writeRecord(recordTypeAlert, c.tmp[0:2]) - return c.setError(&net.OpError{Op: "local error", Error: err}) + // closeNotify is a special case in that it isn't an error: + if err != alertCloseNotify { + return c.setError(&net.OpError{Op: "local error", Error: err}) + } + return nil } // sendAlert sends a TLS alert message.