summary refs log tree commit diff
path: root/synapse/config
diff options
context:
space:
mode:
authorAndrew Morgan <andrew@amorgan.xyz>2019-01-29 15:29:09 +0000
committerAndrew Morgan <andrew@amorgan.xyz>2019-01-29 15:30:33 +0000
commite65a17b26f92a857d91e960f998a6d0b86204b9c (patch)
tree0873b190e4d71cdf3b52dd82557d2589344d6444 /synapse/config
parentDo not generate self-signed TLS certificates by default. (#4509) (diff)
downloadsynapse-e65a17b26f92a857d91e960f998a6d0b86204b9c.tar.xz
Check consent dir path on startup
Diffstat (limited to 'synapse/config')
-rw-r--r--synapse/config/consent_config.py14
1 files changed, 13 insertions, 1 deletions
diff --git a/synapse/config/consent_config.py b/synapse/config/consent_config.py
index f193a090ae..9f2e85342f 100644
--- a/synapse/config/consent_config.py
+++ b/synapse/config/consent_config.py
@@ -13,6 +13,10 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
+from os import path
+
+from synapse.config import ConfigError
+
 from ._base import Config
 
 DEFAULT_CONFIG = """\
@@ -85,7 +89,15 @@ class ConsentConfig(Config):
         if consent_config is None:
             return
         self.user_consent_version = str(consent_config["version"])
-        self.user_consent_template_dir = consent_config["template_dir"]
+        self.user_consent_template_dir = self.abspath(
+            consent_config["template_dir"]
+        )
+        if not path.isdir(self.user_consent_template_dir):
+            raise ConfigError(
+                "Could not find template directory '%s'" % (
+                    self.user_consent_template_dir,
+                ),
+            )
         self.user_consent_server_notice_content = consent_config.get(
             "server_notice_content",
         )