From ee0f48075fbbec328b73eaf6e6d2ddfc0ad15de8 Mon Sep 17 00:00:00 2001 From: GoEdgeLab Date: Sat, 7 Jan 2023 10:03:32 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E7=BD=91=E7=BB=9C=E8=BF=9E?= =?UTF-8?q?=E6=8E=A5=E5=85=B3=E9=97=AD=E9=80=9F=E5=BA=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- internal/nodes/client_conn.go | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/internal/nodes/client_conn.go b/internal/nodes/client_conn.go index e8be4c3..3a98216 100644 --- a/internal/nodes/client_conn.go +++ b/internal/nodes/client_conn.go @@ -104,10 +104,13 @@ func (this *ClientConn) Read(b []byte) (n int, err error) { this.hasRead = true } - // 检测是否为握手错误 - var isHandshakeError = err != nil && os.IsTimeout(err) && !this.hasRead - if isHandshakeError { + // 检测是否为超时错误 + var isTimeout = err != nil && os.IsTimeout(err) + var isHandshakeError = isTimeout && !this.hasRead + if isTimeout { _ = this.SetLinger(0) + } else { + _ = this.SetLinger(nodeconfigs.DefaultTCPLinger) } // 忽略白名单和局域网