diff --git a/goatherd.go b/goatherd.go index f75d3d839208ac8ab1a74017ba934b8ea4ad5f44..172013375067fca7ec30445c980cad1f2240caf8 100644 --- a/goatherd.go +++ b/goatherd.go @@ -544,22 +544,19 @@ func serve() { for addr, tlsCfg := range cfg.Listen { var listener net.Listener - listenAddr, err := net.ResolveTCPAddr("tcp", addr) - errFatal(err) - listener, err = net.ListenTCP("tcp", listenAddr) - errFatal(err) if tlsCfg.Key != "" { log.Printf("Using TLS: cert %v, key %v\n", tlsCfg.Cert, tlsCfg.Key) cert, err := tls.LoadX509KeyPair(tlsCfg.Cert, tlsCfg.Key) errFatalf("Error loading key pair: %v\n", err) - listener = tls.NewListener(listener, &tls.Config{ + listener, err = tls.Listen("tcp", addr, &tls.Config{ Certificates: []tls.Certificate{cert}, }) + errFatalf("Error setting up listener: %v\n", err) } - log.Println("Listening on", listenAddr) + log.Println("Listening on", listener.Addr()) wg.Add(1) go listen(&wg, listener) }