浏览代码

close tunnel when finish udp data

cnlh 5 年之前
父节点
当前提交
b5a0daa69d
共有 1 个文件被更改,包括 1 次插入0 次删除
  1. 1 0
      server/proxy/udp.go

+ 1 - 0
server/proxy/udp.go

@@ -59,6 +59,7 @@ func (s *UdpModeServer) process(addr *net.UDPAddr, data []byte) {
 		return
 		return
 	} else {
 	} else {
 		target := conn.GetConn(clientConn, s.task.Client.Cnf.Crypt, s.task.Client.Cnf.Compress, nil, true)
 		target := conn.GetConn(clientConn, s.task.Client.Cnf.Crypt, s.task.Client.Cnf.Compress, nil, true)
+		defer target.Close()
 		s.task.Flow.Add(int64(len(data)), 0)
 		s.task.Flow.Add(int64(len(data)), 0)
 		buf := common.BufPoolUdp.Get().([]byte)
 		buf := common.BufPoolUdp.Get().([]byte)
 		defer common.BufPoolUdp.Put(buf)
 		defer common.BufPoolUdp.Put(buf)