From 52bcc1d57b26b706838200d3a177ceaf9e9b77cc Mon Sep 17 00:00:00 2001 From: Toby Date: Sun, 20 Feb 2022 23:48:34 -0800 Subject: [PATCH] chore: move "disable TCP timeout for SOCKS5 UDP holder" out of the loop --- pkg/socks5/server.go | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkg/socks5/server.go b/pkg/socks5/server.go index e420319..795032d 100644 --- a/pkg/socks5/server.go +++ b/pkg/socks5/server.go @@ -301,12 +301,12 @@ func (s *Server) handleUDP(c *net.TCPConn, r *socks5.Request) error { _, _ = socks5.NewReply(socks5.RepSuccess, atyp, addr, port).WriteTo(c) // Let UDP server do its job, we hold the TCP connection here go s.udpServer(udpConn, localRelayConn, hyUDP) + if s.TCPTimeout != 0 { + // Disable TCP timeout for UDP holder + _ = c.SetDeadline(time.Time{}) + } buf := make([]byte, 1024) for { - if s.TCPTimeout != 0 { - // Disable TCP timeout for UDP holder - _ = c.SetDeadline(time.Time{}) - } _, err := c.Read(buf) if err != nil { closeErr = err