Tighten restrictions on HOST

- private IP not allowed if intending for public use
- localhost not allowed
This commit is contained in:
Neil Booth 2017-04-02 10:08:03 +09:00
parent 81e6577838
commit 178de6c396

View File

@ -122,9 +122,10 @@ class Env(LoggedClass):
try:
ip = ip_address(host)
except ValueError:
bad = not bool(host.strip())
bad = host.lower().strip() in ('', 'localhost')
else:
bad = ip.is_multicast or ip.is_unspecified
bad = (ip.is_multicast or ip.is_unspecified
or (ip.is_private and (self.irc or self.peer_announce)))
if bad:
raise self.Error('"{}" is not a valid REPORT_HOST'.format(host))
tcp_port = self.integer('REPORT_TCP_PORT', self.tcp_port) or None