From 8b286fb009c26325268d4b838b3b83413af83f11 Mon Sep 17 00:00:00 2001 From: Wim Date: Tue, 21 Feb 2017 22:13:34 +0100 Subject: [PATCH] Add ReadTimeout to close lingering connections (mattermost). See #125 --- matterhook/matterhook.go | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/matterhook/matterhook.go b/matterhook/matterhook.go index 0880884b..7d02ef4d 100644 --- a/matterhook/matterhook.go +++ b/matterhook/matterhook.go @@ -12,6 +12,7 @@ import ( "log" "net" "net/http" + "time" ) // OMessage for mattermost incoming webhook. (send to mattermost) @@ -82,8 +83,14 @@ func New(url string, config Config) *Client { func (c *Client) StartServer() { mux := http.NewServeMux() mux.Handle("/", c) + srv := &http.Server{ + ReadTimeout: 5 * time.Second, + WriteTimeout: 10 * time.Second, + Handler: mux, + Addr: c.BindAddress, + } log.Printf("Listening on http://%v...\n", c.BindAddress) - if err := http.ListenAndServe(c.BindAddress, mux); err != nil { + if err := srv.ListenAndServe(); err != nil { log.Fatal(err) } }