Properly parse HTTP host for verification

Also fix H2 transport to not verify if host is not defined
This commit is contained in:
yuhan6665 2024-07-06 17:12:49 -04:00
parent 4c51636788
commit b8c0768b16
5 changed files with 22 additions and 6 deletions

View file

@ -39,7 +39,7 @@ func (s *server) Handle(conn net.Conn) (stat.Connection, error) {
if s.config != nil {
host := req.Host
if len(s.config.Host) > 0 && !strings.Contains(strings.ToLower(host), strings.ToLower(s.config.Host)) {
if len(s.config.Host) > 0 && !internet.IsValidHTTPHost(host, s.config.Host) {
return nil, errors.New("bad host: ", host)
}
path := s.config.GetNormalizedPath()