From 1e915b5007d65f4237214750bb95570ba91c77ab Mon Sep 17 00:00:00 2001 From: XANTRONIX Development Date: Wed, 4 Dec 2024 12:03:54 -0500 Subject: [PATCH] Implement Config.section() to fetch, validate config sections --- lib/nntp/tiny/config.py | 6 ++++++ lib/nntp/tiny/server.py | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/lib/nntp/tiny/config.py b/lib/nntp/tiny/config.py index 06179a4..31de94b 100644 --- a/lib/nntp/tiny/config.py +++ b/lib/nntp/tiny/config.py @@ -61,6 +61,12 @@ class Config(configparser.ConfigParser): return config + def section(self, section: str): + if not self.has_section(section): + raise ConfigSectionException(section) + + return self[section] + def get(self, section: str, option: str, *args, **kwargs): if not self.has_section(section): raise ConfigSectionException(section) diff --git a/lib/nntp/tiny/server.py b/lib/nntp/tiny/server.py index 6eb5398..38669de 100644 --- a/lib/nntp/tiny/server.py +++ b/lib/nntp/tiny/server.py @@ -22,7 +22,7 @@ class Server(): self.newsgroups = dict() self.sslctx = None - if config['listen'].get('tls', 'no') == 'yes': + if config.section('listen').get('tls', 'no') == 'yes': self.sslctx = ssl.SSLContext(ssl.PROTOCOL_TLS_SERVER) self.sslctx.load_cert_chain(config.get('tls', 'cert'), config.get('tls', 'key'))