diff options
author | Francis Lavoie <lavofr@gmail.com> | 2022-01-18 13:27:43 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-01-18 11:27:43 -0700 |
commit | 93a7a45e7e1ca64dc0103af55ab2a0a4b9c6c84f (patch) | |
tree | 44151c2e6c376c090cd80def17ae8418f2a2fb86 /caddytest/integration/caddyfile_adapt | |
parent | 1a7a78a1f27bdf58e9921cc636375385840a2dc5 (diff) |
httpcaddyfile: Fix incorrect handling of IPv6 bind addresses (#4532)
The `net.JoinHostPort()` function has some naiive logic for handling IPv6, it just checks if the host part has a `:` and if so it wraps the host part with `[ ]` but this causes our network type prefix to get wrapped as well, which is invalid for `caddy.NetworkAddress`. Instead, we can just concatenate the host and port manually here to avoid this side-effect.
Diffstat (limited to 'caddytest/integration/caddyfile_adapt')
-rw-r--r-- | caddytest/integration/caddyfile_adapt/bind_ipv6.txt | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/caddytest/integration/caddyfile_adapt/bind_ipv6.txt b/caddytest/integration/caddyfile_adapt/bind_ipv6.txt new file mode 100644 index 0000000..d9d9bec --- /dev/null +++ b/caddytest/integration/caddyfile_adapt/bind_ipv6.txt @@ -0,0 +1,29 @@ +example.com { + bind tcp6/[::] +} +---------- +{ + "apps": { + "http": { + "servers": { + "srv0": { + "listen": [ + "tcp6/[::]:443" + ], + "routes": [ + { + "match": [ + { + "host": [ + "example.com" + ] + } + ], + "terminal": true + } + ] + } + } + } + } +}
\ No newline at end of file |