mirror of
https://github.com/ginuerzh/gosocks5.git
synced 2024-08-11 17:54:31 +00:00
42 lines
629 B
Go
42 lines
629 B
Go
package main
|
|
|
|
import (
|
|
"flag"
|
|
"log"
|
|
|
|
"github.com/ginuerzh/gosocks5"
|
|
|
|
"github.com/ginuerzh/gosocks5/client"
|
|
)
|
|
|
|
var (
|
|
server string
|
|
)
|
|
|
|
func init() {
|
|
flag.StringVar(&server, "p", "", "SOCKS5 server address")
|
|
flag.Parse()
|
|
}
|
|
|
|
func main() {
|
|
addr, err := gosocks5.NewAddr(flag.Arg(0))
|
|
if err != nil {
|
|
log.Fatal(err)
|
|
}
|
|
|
|
conn, err := client.Dial(server)
|
|
if err != nil {
|
|
log.Fatal(err)
|
|
}
|
|
defer conn.Close()
|
|
|
|
if err := gosocks5.NewRequest(gosocks5.CmdConnect, addr).Write(conn); err != nil {
|
|
log.Fatal(err)
|
|
}
|
|
reply, err := gosocks5.ReadReply(conn)
|
|
if err != nil {
|
|
log.Fatal(err)
|
|
}
|
|
log.Println("reply:", reply)
|
|
}
|