From b4aa7e50f995abb85e009bda3ade2cf07c9bb4a7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zolt=C3=A1n=20Papp?= Date: Mon, 27 May 2024 09:42:27 +0200 Subject: [PATCH] Close sockets on server cmd --- relay/cmd/main.go | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/relay/cmd/main.go b/relay/cmd/main.go index 80e71486a..ba3ff47f7 100644 --- a/relay/cmd/main.go +++ b/relay/cmd/main.go @@ -2,20 +2,26 @@ package main import ( "os" - - "github.com/netbirdio/netbird/util" + "os/signal" + "syscall" log "github.com/sirupsen/logrus" "github.com/netbirdio/netbird/relay/server" + "github.com/netbirdio/netbird/util" ) func init() { util.InitLog("trace", "console") } -func main() { +func waitForExitSignal() { + osSigs := make(chan os.Signal, 1) + signal.Notify(osSigs, syscall.SIGINT, syscall.SIGTERM) + _ = <-osSigs +} +func main() { address := "10.145.236.1:1235" srv := server.NewServer() err := srv.Listen(address) @@ -24,5 +30,11 @@ func main() { os.Exit(1) } - select {} + waitForExitSignal() + + err = srv.Close() + if err != nil { + log.Errorf("failed to close server: %s", err) + os.Exit(1) + } }