Skip to content

Commit

Permalink
caddyfile: Error on invalid site addresses containing comma (#4302)
Browse files Browse the repository at this point in the history
Some users forget to use a comma between their site addresses. This is invalid (commas aren't a valid character in domains) and later parts of the code like certificate automation will try to use this otherwise, which doesn't make sense. Best to error as early as possible.

Example thread on the forums where this happened: https://caddy.community/t/simplify-caddyfile/13281/9
  • Loading branch information
francislavoie authored Aug 23, 2021
1 parent ce5a45d commit d74913f
Showing 1 changed file with 7 additions and 0 deletions.
7 changes: 7 additions & 0 deletions caddyconfig/caddyfile/parse.go
Original file line number Diff line number Diff line change
Expand Up @@ -229,6 +229,13 @@ func (p *parser) addresses() error {
expectingAnother = false // but we may still see another one on this line
}

// If there's a comma here, it's probably because they didn't use a space
// between their two domains, e.g. "foo.com,bar.com", which would not be
// parsed as two separate site addresses.
if strings.Contains(tkn, ",") {
return p.Errf("Site addresses cannot contain a comma ',': '%s' - put a space after the comma to separate site addresses", tkn)
}

p.block.Keys = append(p.block.Keys, tkn)
}

Expand Down

0 comments on commit d74913f

Please sign in to comment.