mirror of
https://mau.dev/maunium/synapse.git
synced 2024-10-01 01:36:05 -04:00
Add flags to /versions about whether new rooms are encrypted by default. (#8343)
This commit is contained in:
parent
14b5b48a22
commit
9db4c1b175
1
changelog.d/8343.feature
Normal file
1
changelog.d/8343.feature
Normal file
@ -0,0 +1 @@
|
||||
Add flags to the `/versions` endpoint that includes whether new rooms default to using E2EE.
|
@ -19,6 +19,7 @@
|
||||
import logging
|
||||
import re
|
||||
|
||||
from synapse.api.constants import RoomCreationPreset
|
||||
from synapse.http.servlet import RestServlet
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
@ -31,6 +32,20 @@ class VersionsRestServlet(RestServlet):
|
||||
super(VersionsRestServlet, self).__init__()
|
||||
self.config = hs.config
|
||||
|
||||
# Calculate these once since they shouldn't change after start-up.
|
||||
self.e2ee_forced_public = (
|
||||
RoomCreationPreset.PUBLIC_CHAT
|
||||
in self.config.encryption_enabled_by_default_for_room_presets
|
||||
)
|
||||
self.e2ee_forced_private = (
|
||||
RoomCreationPreset.PRIVATE_CHAT
|
||||
in self.config.encryption_enabled_by_default_for_room_presets
|
||||
)
|
||||
self.e2ee_forced_trusted_private = (
|
||||
RoomCreationPreset.TRUSTED_PRIVATE_CHAT
|
||||
in self.config.encryption_enabled_by_default_for_room_presets
|
||||
)
|
||||
|
||||
def on_GET(self, request):
|
||||
return (
|
||||
200,
|
||||
@ -62,6 +77,10 @@ class VersionsRestServlet(RestServlet):
|
||||
"org.matrix.msc2432": True,
|
||||
# Implements additional endpoints as described in MSC2666
|
||||
"uk.half-shot.msc2666": True,
|
||||
# Whether new rooms will be set to encrypted or not (based on presets).
|
||||
"io.element.e2ee_forced.public": self.e2ee_forced_public,
|
||||
"io.element.e2ee_forced.private": self.e2ee_forced_private,
|
||||
"io.element.e2ee_forced.trusted_private": self.e2ee_forced_trusted_private,
|
||||
},
|
||||
},
|
||||
)
|
||||
|
Loading…
Reference in New Issue
Block a user