add go-tun2socks code

This commit is contained in:
Jason
2019-07-16 11:37:52 +08:00
parent 828ba9948d
commit 6d01dec5a4
301 changed files with 69694 additions and 1 deletions

26
proxy/echo/tcp.go Normal file
View File

@@ -0,0 +1,26 @@
package echo
import (
"io"
"net"
"github.com/xjasonlyu/tun2socks/core"
)
// An echo proxy, do nothing but echo back data to the sender, the handler was
// created for testing purposes, it may causes issues when more than one clients
// are connecting the handler simultaneously.
type tcpHandler struct{}
func NewTCPHandler() core.TCPConnHandler {
return &tcpHandler{}
}
func (h *tcpHandler) echoBack(conn net.Conn) {
io.Copy(conn, conn)
}
func (h *tcpHandler) Handle(conn net.Conn, target *net.TCPAddr) error {
go h.echoBack(conn)
return nil
}