diff --git a/main.go b/main.go index 25fa252..f217287 100644 --- a/main.go +++ b/main.go @@ -7,10 +7,17 @@ import ( func main() { config := NewConfig() - server := NewServer(config) - log.Printf("config: %+v", *config) - if err := http.ListenAndServe(config.Listen, server); err != nil { - panic(err) + + if config.Socks { + server := NewSocksServer(config) + if err := server.Listen(); err != nil { + panic(err) + } + } else { + server := NewServer(config) + if err := http.ListenAndServe(config.Listen, server); err != nil { + panic(err) + } } } diff --git a/socks.go b/socks.go new file mode 100644 index 0000000..38b1c7a --- /dev/null +++ b/socks.go @@ -0,0 +1,15 @@ +package main + +import "errors" + +type Socks struct { + config *Config +} + +func NewSocksServer(c *Config) Socks { + return Socks{config: c} +} + +func (socks Socks) Listen() error { + return errors.New("not impl") +}