Fail cleanly if listener config lacks a 'port'

... otherwise we would fail with a mysterious KeyError or something later.
This commit is contained in:
Richard van der Hoff 2019-02-11 21:13:53 +00:00
parent 5d27730a73
commit 2129dd1a02
2 changed files with 6 additions and 0 deletions

1
changelog.d/4616.misc Normal file
View File

@ -0,0 +1 @@
Fail cleanly if listener config lacks a 'port'

View File

@ -129,6 +129,11 @@ class ServerConfig(Config):
self.listeners = config.get("listeners", []) self.listeners = config.get("listeners", [])
for listener in self.listeners: for listener in self.listeners:
if not isinstance(listener.get("port", None), int):
raise ConfigError(
"Listener configuration is lacking a valid 'port' option"
)
bind_address = listener.pop("bind_address", None) bind_address = listener.pop("bind_address", None)
bind_addresses = listener.setdefault("bind_addresses", []) bind_addresses = listener.setdefault("bind_addresses", [])