优化连接管理和日志记录
This commit is contained in:
@@ -335,13 +335,14 @@ func sendReply(w io.Writer, resp uint8, addr *AddrSpec) error {
|
||||
return err
|
||||
}
|
||||
|
||||
func SendSuccess(user net.Conn, target net.Conn) {
|
||||
func SendSuccess(user net.Conn, target net.Conn) error {
|
||||
local := target.LocalAddr().(*net.TCPAddr)
|
||||
bind := AddrSpec{IP: local.IP, Port: local.Port}
|
||||
err := sendReply(user, successReply, &bind)
|
||||
if err != nil {
|
||||
slog.Error("Failed to send reply", err)
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
type ProxyConn struct {
|
||||
|
||||
@@ -95,13 +95,13 @@ func New(conf *Config) (*Server, error) {
|
||||
wg: utils.CountWaitGroup{},
|
||||
Name: conf.Name,
|
||||
Port: conf.Port,
|
||||
Conn: make(chan ProxyConn, 100),
|
||||
Conn: make(chan ProxyConn),
|
||||
}, nil
|
||||
}
|
||||
|
||||
// Run 监听端口
|
||||
func (s *Server) Run() error {
|
||||
slog.Info("启动 socks5 代理服务")
|
||||
slog.Debug("启动 socks5 代理服务")
|
||||
|
||||
// 监听端口
|
||||
host := s.config.Host
|
||||
@@ -112,7 +112,7 @@ func (s *Server) Run() error {
|
||||
return errors.Wrap(err, "监听端口失败")
|
||||
}
|
||||
defer utils.Close(ls)
|
||||
slog.Info("正在监听端口", slog.Uint64("port", uint64(port)))
|
||||
slog.Debug("正在监听端口", slog.Uint64("port", uint64(port)))
|
||||
|
||||
// 处理连接
|
||||
connCh := utils.ChanConnAccept(s.ctx, ls)
|
||||
|
||||
Reference in New Issue
Block a user