From 5bd96a6ac22849cd9fbbaae5285f0161e272b8e4 Mon Sep 17 00:00:00 2001 From: Francis Lavoie Date: Tue, 1 Mar 2022 20:02:39 -0500 Subject: httpcaddyfile: Support explicitly turning off `strict_sni_host` (#4592) --- caddyconfig/httpcaddyfile/serveroptions.go | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) (limited to 'caddyconfig') diff --git a/caddyconfig/httpcaddyfile/serveroptions.go b/caddyconfig/httpcaddyfile/serveroptions.go index 623f4d7..7a75252 100644 --- a/caddyconfig/httpcaddyfile/serveroptions.go +++ b/caddyconfig/httpcaddyfile/serveroptions.go @@ -157,11 +157,14 @@ func unmarshalCaddyfileServerOptions(d *caddyfile.Dispenser) (interface{}, error serverOpts.ExperimentalHTTP3 = true case "strict_sni_host": - if d.NextArg() { - return nil, d.ArgErr() + if d.NextArg() && d.Val() != "insecure_off" && d.Val() != "on" { + return nil, d.Errf("strict_sni_host only supports 'on' or 'insecure_off', got '%s'", d.Val()) + } + boolVal := true + if d.Val() == "insecure_off" { + boolVal = false } - trueBool := true - serverOpts.StrictSNIHost = &trueBool + serverOpts.StrictSNIHost = &boolVal default: return nil, d.Errf("unrecognized protocol option '%s'", d.Val()) -- cgit v1.2.3