diff --git a/main.go b/main.go index 8a982c23..bc4da740 100644 --- a/main.go +++ b/main.go @@ -51,7 +51,7 @@ func main() { forwardArgs = parseArgs(forwardAddr) if len(listenArgs) == 0 { - glog.Fatalln("no listen addr") + glog.Exitln("no listen addr") } var wg sync.WaitGroup diff --git a/socks.go b/socks.go index 191b73a1..34c45665 100644 --- a/socks.go +++ b/socks.go @@ -7,7 +7,6 @@ import ( "github.com/ginuerzh/gosocks5" "github.com/golang/glog" "io" - "io/ioutil" "net" "strconv" ) @@ -269,7 +268,8 @@ func handleSocks5Request(req *gosocks5.Request, conn net.Conn) { } } - clientConn, dgram, err := createClientConn(conn, uconn) + //clientConn, dgram, err := createClientConn(conn, uconn) + _, dgram, err := createClientConn(conn, uconn) if err != nil { if glog.V(LWARNING) { glog.Warningln("socks5 udp:", err) @@ -280,7 +280,8 @@ func handleSocks5Request(req *gosocks5.Request, conn net.Conn) { glog.Infof("[udp] length %d, to %s", len(dgram.Data), dgram.Header.Addr) } - serverConn, err := createServerConn(uconn) + //serverConn, err := createServerConn(uconn) + _, err = createServerConn(uconn) if err != nil { if glog.V(LWARNING) { glog.Warningln("socks5 udp forward:", err) @@ -355,6 +356,7 @@ func createServerConn(uconn *net.UDPConn) (c *UDPConn, err error) { return } +/* func forwardUDP(req *gosocks5.Request) (conn net.Conn, err error) { if err != nil { @@ -389,11 +391,7 @@ func forwardUDP(req *gosocks5.Request) (conn net.Conn, err error) { } } - -func transportUDP() { - -} - +*/ func serveBind(conn net.Conn) error { l, err := net.ListenTCP("tcp", nil) if err != nil { @@ -539,6 +537,7 @@ func peekReply(dst io.Writer, src io.Reader) error { return nil } +/* func cliTunnelUDP(uconn *net.UDPConn, sconn net.Conn) { var raddr *net.UDPAddr @@ -636,7 +635,7 @@ func srvTunnelUDP(conn net.Conn, uconn *net.UDPConn) { } } } - +*/ func ToSocksAddr(addr net.Addr) *gosocks5.Addr { host, port, _ := net.SplitHostPort(addr.String()) p, _ := strconv.Atoi(port) diff --git a/udp.go b/udp.go index 4301be39..aec31cd2 100644 --- a/udp.go +++ b/udp.go @@ -1,15 +1,15 @@ package main import ( - "github.com/ginuerzh/gosocks5" - "github.com/golang/glog" + //"github.com/ginuerzh/gosocks5" + //"github.com/golang/glog" "net" ) type UDPConn struct { isClient bool udpConn *net.UDPConn - udpAddr *net.UDPAddr + addr net.Addr tcpConn net.Conn } @@ -17,9 +17,9 @@ func Client(conn net.Conn, addr net.Addr) *UDPConn { client := &UDPConn{isClient: true} switch conn := conn.(type) { - case net.UDPConn: + case *net.UDPConn: client.udpConn = conn - client.udpAddr = addr + client.addr = addr default: client.tcpConn = conn } @@ -30,7 +30,7 @@ func Client(conn net.Conn, addr net.Addr) *UDPConn { func Server(conn net.Conn) *UDPConn { server := &UDPConn{} switch conn := conn.(type) { - case net.UDPConn: + case *net.UDPConn: server.udpConn = conn default: server.tcpConn = conn