1.加了TunnelPair
2.只注销一次
This commit is contained in:
@@ -77,31 +77,39 @@ func (this *TransTCP) Start(listenPort, destIP, destPort string, clientOrServer
|
||||
}
|
||||
log.Info("Dial %s", destConn.RemoteAddr().String())
|
||||
//tunnel model : [ -->>server ---- client -->> ](this is a tunnel)
|
||||
if clientOrServer == "client" {
|
||||
if clientOrServer == "client" { //加密方向
|
||||
sendID := utils.TunnelID()
|
||||
ntSend := model.NewTunnel(sendID, listenerConn, destConn, constant.SEND)
|
||||
ntSend.SetRegChan(tunMng.GetRegChan())
|
||||
ntSend.SetUnRegChan(tunMng.GetUnregChan())
|
||||
// ntSend.SetRegChan(tunMng.GetRegChan())
|
||||
// ntSend.SetUnRegChan(tunMng.GetUnregChan())
|
||||
receiveID := utils.TunnelID()
|
||||
ntRev := model.NewTunnel(receiveID, destConn, listenerConn, constant.RECEIVE)
|
||||
ntRev.SetRegChan(tunMng.GetRegChan())
|
||||
ntRev.SetUnRegChan(tunMng.GetUnregChan())
|
||||
// ntRev.SetRegChan(tunMng.GetRegChan())
|
||||
// ntRev.SetUnRegChan(tunMng.GetUnregChan())
|
||||
printModelDetail(sendID, receiveID)
|
||||
go ntSend.Run()
|
||||
go ntRev.Run()
|
||||
// go ntSend.Run()
|
||||
// go ntRev.Run()
|
||||
tunnelPair := model.NewTunnelPair(ntSend, ntRev)
|
||||
tunnelPair.SetRegChan(tunMng.GetRegChan())
|
||||
tunnelPair.SetUnRegChan(tunMng.GetUnregChan())
|
||||
tunnelPair.Run()
|
||||
}
|
||||
if clientOrServer == "server" {
|
||||
receiveID := utils.TunnelID()
|
||||
ntRev := model.NewTunnel(receiveID, listenerConn, destConn, constant.RECEIVE)
|
||||
ntRev.SetRegChan(tunMng.GetRegChan())
|
||||
ntRev.SetUnRegChan(tunMng.GetUnregChan())
|
||||
// ntRev.SetRegChan(tunMng.GetRegChan())
|
||||
// ntRev.SetUnRegChan(tunMng.GetUnregChan())
|
||||
sendID := utils.TunnelID()
|
||||
ntSend := model.NewTunnel(sendID, destConn, listenerConn, constant.SEND)
|
||||
ntSend.SetRegChan(tunMng.GetRegChan())
|
||||
ntSend.SetUnRegChan(tunMng.GetUnregChan())
|
||||
// ntSend.SetRegChan(tunMng.GetRegChan())
|
||||
// ntSend.SetUnRegChan(tunMng.GetUnregChan())
|
||||
printModelDetail(sendID, receiveID)
|
||||
go ntRev.Run()
|
||||
go ntSend.Run()
|
||||
// go ntRev.Run()
|
||||
// go ntSend.Run()
|
||||
tunnelPair := model.NewTunnelPair(ntSend, ntRev)
|
||||
tunnelPair.SetRegChan(tunMng.GetRegChan())
|
||||
tunnelPair.SetUnRegChan(tunMng.GetUnregChan())
|
||||
tunnelPair.Run()
|
||||
}
|
||||
}()
|
||||
|
||||
|
||||
Reference in New Issue
Block a user