diff options
Diffstat (limited to 'cmd')
| -rw-r--r-- | cmd/tunnel/main.go | 35 | ||||
| -rw-r--r-- | cmd/tunneld/main.go | 32 |
2 files changed, 67 insertions, 0 deletions
diff --git a/cmd/tunnel/main.go b/cmd/tunnel/main.go new file mode 100644 index 0000000..be4574d --- /dev/null +++ b/cmd/tunnel/main.go @@ -0,0 +1,35 @@ +package main + +import ( + "tunnel/pkg/client" + "strings" + "fmt" + "log" + "os" +) + +func main() { + var args = os.Args + + if len(args) < 2 { + log.Fatal("bad usage") + } + + c, err := client.New() + if err != nil { + log.Fatal(err) + } + + reply, err := c.Send(args[1:]) + if err != nil { + log.Fatal(err) + } + + reply = strings.TrimSpace(reply) + + if reply != "" { + fmt.Println(reply) + } + + c.Close() +} diff --git a/cmd/tunneld/main.go b/cmd/tunneld/main.go new file mode 100644 index 0000000..addb002 --- /dev/null +++ b/cmd/tunneld/main.go @@ -0,0 +1,32 @@ +package main + +import ( + "tunnel/pkg/server" + "os/signal" + "syscall" + "log" + "os" +) + +func main() { + var c = make(chan os.Signal) + + signal.Notify(c, syscall.SIGINT, syscall.SIGTERM) + + s, err := server.New() + if err != nil { + log.Fatal(err) + } + + go func () { + sig := <-c + + log.Printf("killed by signal: %s", sig) + + s.Stop() + }() + + s.Run() + + log.Print("exit") +} |
