diff --git a/internal/serve/serve.go b/internal/serve/serve.go index 8682289..95d25fa 100644 --- a/internal/serve/serve.go +++ b/internal/serve/serve.go @@ -4,6 +4,7 @@ import ( "context" "errors" "fmt" + "io" "net" "os" "os/signal" @@ -56,14 +57,10 @@ func setupSshServer(host string, port string, host_key_path string, users map[st func(next ssh.Handler) ssh.Handler { return func(s ssh.Session) { cmd := wish.Command(s, name, args...) - file, err := os.OpenFile("log", os.O_APPEND|os.O_WRONLY|os.O_CREATE, 0600) - if err != nil { - wish.Fatalln(s, err) - } - cmd.SetStderr(file) if err := cmd.Run(); err != nil { wish.Fatalln(s, err) } + io.Copy(os.Stderr, s.Stderr()) next(s) } }, @@ -76,6 +73,9 @@ func setupSshServer(host string, port string, host_key_path string, users map[st // Serve an ssh application using the provided arguments. func Serve(host string, port string, host_key_path string, users map[string]string, name string, args []string) { setupLogging() + log.Info("Running Serve (v2.7)...") // TODO make version string automatically the git tag (otherwise commit-hash)? + defer log.Info("Stopping Serve...") + srv, err := setupSshServer(host, port, host_key_path, users, name, args) if err != nil { log.Error("Could not start server", "error", err)