transx/tunnel.go

19 lines
495 B
Go

package main
func StartTunnel(sourceIP, desIP, desPort string) {
remoteAddr := make(chan net.Addr)
transSrcToDes := NewTransTCP()
transSrcToDes.CreateTCPListener("0.0.0.0", desPort)
transSrcToDes.CreateTCPClient(desIP, desPort)
go transSrcToDes.Start(remoteAddr)
sourcePort := <-remoteAddr
transDesToSrc := NewTransTCP()
transDesToSrc.CreateTCPListener("0.0.0.0", sourcePort)
transSrcToDes.CreateTCPClient(sourceIP, sourcePort)
go transDesToSrc.Start()
c := make(chan byte)
<-c
}