gost_software/main.go
2015-03-27 21:15:28 +08:00

43 lines
951 B
Go

// main
package main
import (
"flag"
"github.com/ginuerzh/gosocks5"
"log"
)
var (
Laddr, Saddr, Proxy string
Shadows bool
Cipher, Password string
)
func init() {
flag.StringVar(&Proxy, "P", "", "proxy for forward")
flag.StringVar(&Saddr, "S", "", "the server that connecting to")
flag.StringVar(&Laddr, "L", ":8080", "listen address")
flag.StringVar(&Cipher, "cipher", "rc4-md5", "cipher method")
flag.StringVar(&Password, "password", "ginuerzh@gmail.com", "cipher password")
flag.BoolVar(&Shadows, "ss", false, "shadowsocks compatible")
flag.BoolVar(&Debug, "d", false, "debug option")
flag.Parse()
log.SetFlags(log.LstdFlags | log.Lshortfile)
}
func main() {
//log.Fatal(gost.Run())
if len(Saddr) == 0 {
srv := &gosocks5.Server{
Addr: Laddr,
SelectMethod: selectMethod,
Handle: srvHandle,
}
log.Fatal(srv.ListenAndServe())
return
}
log.Fatal(listenAndServe(Laddr, cliHandle))
}