httpcaddyfile: Support explicitly turning off strict_sni_host (#4592)

This commit is contained in:
Francis Lavoie 2022-03-01 20:02:39 -05:00 committed by GitHub
parent ac14b64e08
commit 5bd96a6ac2
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 17 additions and 6 deletions

View file

@ -157,11 +157,14 @@ func unmarshalCaddyfileServerOptions(d *caddyfile.Dispenser) (interface{}, error
serverOpts.ExperimentalHTTP3 = true serverOpts.ExperimentalHTTP3 = true
case "strict_sni_host": case "strict_sni_host":
if d.NextArg() { if d.NextArg() && d.Val() != "insecure_off" && d.Val() != "on" {
return nil, d.ArgErr() return nil, d.Errf("strict_sni_host only supports 'on' or 'insecure_off', got '%s'", d.Val())
} }
trueBool := true boolVal := true
serverOpts.StrictSNIHost = &trueBool if d.Val() == "insecure_off" {
boolVal = false
}
serverOpts.StrictSNIHost = &boolVal
default: default:
return nil, d.Errf("unrecognized protocol option '%s'", d.Val()) return nil, d.Errf("unrecognized protocol option '%s'", d.Val())

View file

@ -3,6 +3,9 @@
timeouts { timeouts {
idle 90s idle 90s
} }
protocol {
strict_sni_host insecure_off
}
} }
servers :80 { servers :80 {
timeouts { timeouts {
@ -13,6 +16,9 @@
timeouts { timeouts {
idle 30s idle 30s
} }
protocol {
strict_sni_host
}
} }
} }
@ -46,7 +52,8 @@ http://bar.com {
], ],
"terminal": true "terminal": true
} }
] ],
"strict_sni_host": true
}, },
"srv1": { "srv1": {
"listen": [ "listen": [
@ -70,7 +77,8 @@ http://bar.com {
"listen": [ "listen": [
":8080" ":8080"
], ],
"idle_timeout": 90000000000 "idle_timeout": 90000000000,
"strict_sni_host": false
} }
} }
} }