Skip to content

Commit 0daca41

Browse files
authored
gosec: Use a http.Server with a timeout (#3139)
1 parent 0d10739 commit 0daca41

1 file changed

Lines changed: 13 additions & 2 deletions

File tree

‎webhookserver/server.go‎

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import (
55
"io"
66
"log"
77
"net/http"
8+
"time"
89

910
"github.com/stackrox/rox/pkg/sync"
1011
)
@@ -69,14 +70,24 @@ func rootHandler(w http.ResponseWriter, r *http.Request) {
6970
}
7071

7172
func tlsServer() {
72-
err := http.ListenAndServeTLS(":8443", "/tmp/certs/server.crt", "/tmp/certs/server.key", http.HandlerFunc(rootHandler))
73+
server := &http.Server{
74+
ReadHeaderTimeout: 5 * time.Second,
75+
Addr: ":8443",
76+
Handler: http.HandlerFunc(rootHandler),
77+
}
78+
err := server.ListenAndServeTLS("/tmp/certs/server.crt", "/tmp/certs/server.key")
7379
if err != nil {
7480
log.Fatal("ListenAndServe: ", err)
7581
}
7682
}
7783

7884
func nonTLSServer() {
79-
if err := http.ListenAndServe(":8080", http.HandlerFunc(rootHandler)); err != nil {
85+
server := &http.Server{
86+
ReadHeaderTimeout: 5 * time.Second,
87+
Addr: ":8080",
88+
Handler: http.HandlerFunc(rootHandler),
89+
}
90+
if err := server.ListenAndServe(); err != nil {
8091
panic(err)
8192
}
8293
}

0 commit comments

Comments
 (0)