]> Sergey Matveev's repositories - godlighty.git/blobdiff - cmd/godlighty/main.go
chan os.Signal should be buffered
[godlighty.git] / cmd / godlighty / main.go
index 1344aaa40ca51d29ea5fc709a658bee4634c8615..2373ed628a8f8b95322810dda56e6932107c11d8 100644 (file)
@@ -1,6 +1,6 @@
 /*
 godlighty -- highly-customizable HTTP, HTTP/2, HTTPS server
-Copyright (C) 2021 Sergey Matveev <stargrave@stargrave.org>
+Copyright (C) 2021-2023 Sergey Matveev <stargrave@stargrave.org>
 
 This program is free software: you can redistribute it and/or modify
 it under the terms of the GNU General Public License as published by
@@ -57,7 +57,7 @@ func main() {
        if *doTLS {
                godlighty.LoadCertificates()
        }
-       shutdown := make(chan os.Signal)
+       shutdown := make(chan os.Signal, 1)
        signal.Notify(shutdown, syscall.SIGTERM, syscall.SIGINT, syscall.SIGHUP)
        exitErr := make(chan error)
        l, err := godlighty.DeadlinedListen("tcp", *bind, RWTimeout, RWTimeout)
@@ -95,7 +95,7 @@ func main() {
                }
        }
 
-       info := make(chan os.Signal)
+       info := make(chan os.Signal, 1)
        signal.Notify(info, InfoSignal)
        go func() {
                for {
@@ -104,6 +104,7 @@ func main() {
                }
        }()
 
+       godlighty.BindAddr = *bind
        srv := http.Server{
                Handler:           godlighty.MainHandler,
                ReadHeaderTimeout: RWTimeout,