From 4188277b613e8c48a6984fb6a94004d607ec7467 Mon Sep 17 00:00:00 2001 From: wwqgtxx Date: Sat, 30 Aug 2025 09:48:01 +0800 Subject: [PATCH] fix: tuic server goroutine leak --- transport/tuic/server.go | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/transport/tuic/server.go b/transport/tuic/server.go index 98c9ee3d..d9d6439e 100644 --- a/transport/tuic/server.go +++ b/transport/tuic/server.go @@ -87,7 +87,11 @@ func (s *serverHandler) handle() { _ = s.handleMessage() }() - <-s.quicConn.HandshakeComplete() + select { + case <-s.quicConn.HandshakeComplete(): // this chan maybe not closed if handshake never complete + case <-time.After(s.quicConn.Config().HandshakeIdleTimeout): // HandshakeIdleTimeout in real conn.Config() never be zero + } + time.AfterFunc(s.AuthenticationTimeout, func() { if s.v4Handler != nil { if s.v4Handler.AuthOk() {