From bd6e6373b73c2e848680e6df60b0941172c0038f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?EMRE=20=C3=87EL=C4=B0K?= Date: Sun, 26 Jun 2022 20:44:34 +0300 Subject: [PATCH] dashboard.go Simplified HTTPS code --- server/dashboard.go | 51 +++++++++++++++++++-------------------------- 1 file changed, 21 insertions(+), 30 deletions(-) diff --git a/server/dashboard.go b/server/dashboard.go index 3648ac65..68e99f8a 100644 --- a/server/dashboard.go +++ b/server/dashboard.go @@ -71,36 +71,27 @@ func (svr *Service) RunDashboardServer(address string) (err error) { http.Redirect(w, r, "/static/", http.StatusMovedPermanently) }) - if svr.cfg.DashboardTLSMode { - cer, err := tls.LoadX509KeyPair(svr.cfg.DashboardTLSCertFile, svr.cfg.DashboardTLSKeyFile) - if err != nil { - return err - } - cfg := &tls.Config{ - Certificates: []tls.Certificate{cer}, - } - server := &http.Server{ - Addr: address, - Handler: router, - TLSConfig: cfg, - TLSNextProto: make(map[string]func(*http.Server, *tls.Conn, http.Handler), 0), - } - go server.ListenAndServeTLS("", "") - } else { - server := &http.Server{ - Addr: address, - Handler: router, - ReadTimeout: httpServerReadTimeout, - WriteTimeout: httpServerWriteTimeout, - } - if address == "" || address == ":" { - address = ":http" - } - ln, err := net.Listen("tcp", address) - if err != nil { - return err - } - go server.Serve(ln) + server := &http.Server{ + Addr: address, + Handler: router, + ReadTimeout: httpServerReadTimeout, + WriteTimeout: httpServerWriteTimeout, } + ln, err := net.Listen("tcp", address) + if err != nil { + return err + } + + if svr.cfg.DashboardTLSMode { + cert, err := tls.LoadX509KeyPair(svr.cfg.DashboardTLSCertFile, svr.cfg.DashboardTLSKeyFile) + if err != nil { + return err + } + tlsCfg := &tls.Config{ + Certificates: []tls.Certificate{cert}, + } + ln = tls.NewListener(ln, tlsCfg) + } + go server.Serve(ln) return }