summary refs log tree commit diff
path: root/synapse/config
diff options
context:
space:
mode:
authorQuentin Gliech <quenting@element.io>2024-04-17 16:47:35 +0200
committerGitHub <noreply@github.com>2024-04-17 16:47:35 +0200
commitc8e0bed4269106c49ffd733eaad5cdb3576f55d2 (patch)
treeca0dd4b2dcf8be74deb67801b26194a184933e08 /synapse/config
parentBump minimum required Rust version to 1.66.0 (#17079) (diff)
downloadsynapse-c8e0bed4269106c49ffd733eaad5cdb3576f55d2.tar.xz
Support for MSC4108 via delegation (#17086)
This adds support for MSC4108 via delegation, similar to what has been done for MSC3886

---------

Co-authored-by: Hugh Nimmo-Smith <hughns@element.io>
Diffstat (limited to 'synapse/config')
-rw-r--r--synapse/config/experimental.py11
1 files changed, 11 insertions, 0 deletions
diff --git a/synapse/config/experimental.py b/synapse/config/experimental.py
index fcc78d2d81..353ae23f91 100644
--- a/synapse/config/experimental.py
+++ b/synapse/config/experimental.py
@@ -411,3 +411,14 @@ class ExperimentalConfig(Config):
         self.msc4069_profile_inhibit_propagation = experimental.get(
             "msc4069_profile_inhibit_propagation", False
         )
+
+        # MSC4108: Mechanism to allow OIDC sign in and E2EE set up via QR code
+        self.msc4108_delegation_endpoint: Optional[str] = experimental.get(
+            "msc4108_delegation_endpoint", None
+        )
+
+        if self.msc4108_delegation_endpoint is not None and not self.msc3861.enabled:
+            raise ConfigError(
+                "MSC4108 requires MSC3861 to be enabled",
+                ("experimental", "msc4108_delegation_endpoint"),
+            )