@marcel91200 / caddy Mirror · read-only / commits / 31c6ac09
Fork 0

Fast and extensible multi-platform HTTP/1-2-3 web server with automatic HTTPS

Mirrored from https://github.com/Slazee/caddy.git

Synced Nov 14, 05:15 UTC

httpcaddyfile: 'bind' properly parses unix sockets (fixes #2999)

Matthew Holt committed Mar 19, 2020 at 09:43 UTC 31c6ac097e14776d9a259ba450d096fc61416ebe
1 file changed +7 -1
caddyconfig/httpcaddyfile/addresses.go
+7 -1
@@ -21,6 +21,7 @@ import (
21 "strconv"
22 "strings"
23
24 + "github.com/caddyserver/caddy/v2"
25 "github.com/caddyserver/caddy/v2/caddyconfig/caddyfile"
26 "github.com/caddyserver/caddy/v2/modules/caddyhttp"
27 "github.com/caddyserver/certmagic"
@@ -199,7 +200,12 @@ func (st *ServerType) listenerAddrsForServerBlockKey(sblock serverBlock, key str
200 // use a map to prevent duplication
201 listeners := make(map[string]struct{})
202 for _, host := range lnHosts {
202 - listeners[net.JoinHostPort(host, lnPort)] = struct{}{}
203 + addr, err := caddy.ParseNetworkAddress(host)
204 + if err == nil && addr.IsUnixNetwork() {
205 + listeners[host] = struct{}{}
206 + } else {
207 + listeners[net.JoinHostPort(host, lnPort)] = struct{}{}
208 + }
209 }
210
211 // now turn map into list