aboutsummaryrefslogtreecommitdiff
path: root/web.go
diff options
context:
space:
mode:
Diffstat (limited to 'web.go')
-rw-r--r--web.go10
1 files changed, 8 insertions, 2 deletions
diff --git a/web.go b/web.go
index d5846c5..2a04a6c 100644
--- a/web.go
+++ b/web.go
@@ -21,7 +21,7 @@ const SESSION_NAME = "easybridge_session"
var sessionsStore sessions.Store = nil
var userKeys = map[string]*[32]byte{}
-func StartWeb(errch chan error) {
+func StartWeb(errch chan error) *http.Server {
session_key := blake2b.Sum256([]byte(config.SessionKey))
sessionsStore = sessions.NewCookieStore(session_key[:])
@@ -36,12 +36,18 @@ func StartWeb(errch chan error) {
r.Handle("/static/{file:.*}", http.StripPrefix("/static/", staticfiles))
log.Printf("Starting web UI HTTP server on %s", config.WebBindAddr)
+ web_server := &http.Server{
+ Addr: config.WebBindAddr,
+ Handler: logRequest(r),
+ }
go func() {
- err := http.ListenAndServe(config.WebBindAddr, logRequest(r))
+ err := web_server.ListenAndServe()
if err != nil {
errch <- err
}
}()
+
+ return web_server
}
func logRequest(handler http.Handler) http.Handler {