From cd9ee1e6cc35b08a350d3dcb1b331750b363a82d Mon Sep 17 00:00:00 2001
From: ale <ale@incal.net>
Date: Thu, 14 Dec 2017 07:42:45 +0000
Subject: [PATCH] Actually start a TLS listener when necessary

---
 serverutil/http.go | 11 ++++++++---
 1 file changed, 8 insertions(+), 3 deletions(-)

diff --git a/serverutil/http.go b/serverutil/http.go
index b1d4b94..81c9ae9 100644
--- a/serverutil/http.go
+++ b/serverutil/http.go
@@ -70,8 +70,8 @@ func Serve(h http.Handler, serverConfig *ServerConfig, addr string) (err error)
 		// down remaining clients.
 		ctx, cancel := context.WithTimeout(context.Background(), gracefulShutdownTimeout)
 		defer cancel()
-		if err := srv.Shutdown(ctx); err == context.Canceled {
-			if err := srv.Close(); err != nil {
+		if err = srv.Shutdown(ctx); err == context.Canceled {
+			if err = srv.Close(); err != nil {
 				log.Printf("error terminating server: %v", err)
 			}
 		}
@@ -80,7 +80,12 @@ func Serve(h http.Handler, serverConfig *ServerConfig, addr string) (err error)
 	}()
 	signal.Notify(sigCh, syscall.SIGINT, syscall.SIGTERM)
 
-	if err := srv.ListenAndServe(); err != http.ErrServerClosed {
+	if tlsConfig != nil {
+		err = srv.ListenAndServeTLS("", "")
+	} else {
+		err = srv.ListenAndServe()
+	}
+	if err != http.ErrServerClosed {
 		return err
 	}
 
-- 
GitLab