Diff
1diff --git a/cmd/soft/serve.go b/cmd/soft/serve.go
2index a8da0b6abf5c8b64707a06151fb9078b9fea1a53..58c1f43c699f4dc6b3e311287ed504a496bae1f8 100644
3--- a/cmd/soft/serve.go
4+++ b/cmd/soft/serve.go
5@@ -25,13 +25,14 @@ var (
6
7 log.Printf("Starting SSH server on %s:%d", cfg.BindAddr, cfg.Port)
8
9- lch := make(chan error)
10+ done := make(chan os.Signal, 1)
11+ lch := make(chan error, 1)
12 go func() {
13 defer close(lch)
14+ defer close(done)
15 lch <- s.Start()
16 }()
17
18- done := make(chan os.Signal, 1)
19 signal.Notify(done, os.Interrupt, syscall.SIGINT, syscall.SIGTERM)
20 <-done
21