diff --git a/cmd/soft/serve.go b/cmd/soft/serve.go index a8da0b6abf5c8b64707a06151fb9078b9fea1a53..58c1f43c699f4dc6b3e311287ed504a496bae1f8 100644 --- a/cmd/soft/serve.go +++ b/cmd/soft/serve.go @@ -25,13 +25,14 @@ var ( log.Printf("Starting SSH server on %s:%d", cfg.BindAddr, cfg.Port) - lch := make(chan error) + done := make(chan os.Signal, 1) + lch := make(chan error, 1) go func() { defer close(lch) + defer close(done) lch <- s.Start() }() - done := make(chan os.Signal, 1) signal.Notify(done, os.Interrupt, syscall.SIGINT, syscall.SIGTERM) <-done