From 578af19baa779e9024e38013e6244af917a62e41 Mon Sep 17 00:00:00 2001 From: Tulir Asokan Date: Sat, 30 Nov 2019 19:49:19 +0200 Subject: [PATCH] Use new forbidden default value system in mautrix-python. Fixes #388 --- example-config.yaml | 2 +- mautrix_telegram/config.py | 14 +++++++++++++- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/example-config.yaml b/example-config.yaml index 5c312147..082674a6 100644 --- a/example-config.yaml +++ b/example-config.yaml @@ -33,7 +33,7 @@ appservice: # the HS database. public: # Whether or not the public-facing endpoints should be enabled. - enabled: true + enabled: false # The prefix to use in the public-facing endpoints. prefix: /public # The base URL where the public-facing endpoints are available. The prefix is not added diff --git a/mautrix_telegram/config.py b/mautrix_telegram/config.py index 37c7be4a..849c315c 100644 --- a/mautrix_telegram/config.py +++ b/mautrix_telegram/config.py @@ -19,7 +19,8 @@ import os from mautrix.types import UserID from mautrix.client import Client -from mautrix.bridge.config import BaseBridgeConfig, ConfigUpdateHelper +from mautrix.bridge.config import (BaseBridgeConfig, ConfigUpdateHelper, ForbiddenKey, + ForbiddenDefault) Permissions = NamedTuple("Permissions", relaybot=bool, user=bool, puppeting=bool, matrix_puppeting=bool, admin=bool, level=str) @@ -32,6 +33,17 @@ class Config(BaseBridgeConfig): except KeyError: return super().__getitem__(key) + @property + def forbidden_defaults(self) -> List[ForbiddenDefault]: + return [ + *super().forbidden_defaults, + ForbiddenDefault("appservice.public.external", "https://example.com/public", + condition="appservice.public.enabled"), + ForbiddenDefault("bridge.permissions", ForbiddenKey("example.com")), + ForbiddenDefault("telegram.api_id", 12345), + ForbiddenDefault("telegram.api_hash", "tjyd5yge35lbodk1xwzw2jstp90k55qz"), + ] + def do_update(self, helper: ConfigUpdateHelper) -> None: copy, copy_dict, base = helper