mirror of
https://github.com/xjasonlyu/tun2socks.git
synced 2025-10-16 22:00:42 +08:00
31
proxy/tcp.go
31
proxy/tcp.go
@@ -94,16 +94,22 @@ func (h *tcpHandler) Handle(conn net.Conn, target *net.TCPAddr) error {
|
||||
return err
|
||||
}
|
||||
|
||||
var session = &S.Session{
|
||||
Network: localConn.LocalAddr().Network(),
|
||||
DialerAddr: remoteConn.LocalAddr().String(),
|
||||
ClientAddr: localConn.LocalAddr().String(),
|
||||
TargetAddr: targetAddr,
|
||||
UploadBytes: 0,
|
||||
DownloadBytes: 0,
|
||||
SessionStart: time.Now(),
|
||||
// Get name of the process
|
||||
var process = lsof.GetProcessName(localConn.LocalAddr())
|
||||
if monitor != nil {
|
||||
session := &S.Session{
|
||||
Process: process,
|
||||
Network: localConn.LocalAddr().Network(),
|
||||
DialerAddr: remoteConn.LocalAddr().String(),
|
||||
ClientAddr: localConn.LocalAddr().String(),
|
||||
TargetAddr: targetAddr,
|
||||
UploadBytes: 0,
|
||||
DownloadBytes: 0,
|
||||
SessionStart: time.Now(),
|
||||
}
|
||||
addSession(localConn, session)
|
||||
remoteConn = &S.Conn{Session: session, Conn: remoteConn}
|
||||
}
|
||||
remoteConn = &S.Conn{Session: session, Conn: remoteConn}
|
||||
|
||||
// Set keepalive
|
||||
tcpKeepAlive(localConn)
|
||||
@@ -112,13 +118,6 @@ func (h *tcpHandler) Handle(conn net.Conn, target *net.TCPAddr) error {
|
||||
// Relay connections
|
||||
go h.relay(localConn, remoteConn)
|
||||
|
||||
// Get name of the process
|
||||
var process = lsof.GetProcessName(localConn.LocalAddr())
|
||||
if monitor != nil {
|
||||
session.Process = process
|
||||
addSession(localConn, session)
|
||||
}
|
||||
|
||||
log.Access(process, "proxy", "tcp", localConn.LocalAddr().String(), targetAddr)
|
||||
return nil
|
||||
}
|
||||
|
Reference in New Issue
Block a user