diff options
author | Matthew Holt <mholt@users.noreply.github.com> | 2020-06-30 11:42:55 -0600 |
---|---|---|
committer | Matthew Holt <mholt@users.noreply.github.com> | 2020-06-30 11:43:01 -0600 |
commit | 77f233a4840afb8b081d12b083b19ed314fd975a (patch) | |
tree | b7c2e2895ce143315598469e07cec15e044c672d /modules | |
parent | ddd690de4cc133bc728f765b2492ccb54f9d84ca (diff) |
caddyhttp: Corrected host label index check (fix #3502)
Diffstat (limited to 'modules')
-rw-r--r-- | modules/caddyhttp/replacer.go | 2 | ||||
-rw-r--r-- | modules/caddyhttp/replacer_test.go | 4 |
2 files changed, 5 insertions, 1 deletions
diff --git a/modules/caddyhttp/replacer.go b/modules/caddyhttp/replacer.go index b3c7b5d..f595021 100644 --- a/modules/caddyhttp/replacer.go +++ b/modules/caddyhttp/replacer.go @@ -172,7 +172,7 @@ func addHTTPVarsToReplacer(repl *caddy.Replacer, req *http.Request, w http.Respo reqHost = req.Host // OK; assume there was no port } hostLabels := strings.Split(reqHost, ".") - if idx > len(hostLabels) { + if idx >= len(hostLabels) { return "", true } return hostLabels[len(hostLabels)-idx-1], true diff --git a/modules/caddyhttp/replacer_test.go b/modules/caddyhttp/replacer_test.go index bc18c5a..49167ee 100644 --- a/modules/caddyhttp/replacer_test.go +++ b/modules/caddyhttp/replacer_test.go @@ -108,6 +108,10 @@ eqp31wM9il1n+guTNyxJd+FzVAH+hCZE5K+tCgVDdVFUlDEHHbS/wqb2PSIoouLV expect: "example", }, { + input: "{http.request.host.labels.2}", + expect: "<empty>", + }, + { input: "{http.request.tls.cipher_suite}", expect: "TLS_AES_256_GCM_SHA384", }, |