mirror of
https://git.anonymousland.org/anonymousland/synapse.git
synced 2025-05-03 08:54:49 -04:00
Check for space membership during a remote join of a restricted room. (#9763)
When receiving a /send_join request for a room with join rules set to 'restricted', check if the user is a member of the spaces defined in the 'allow' key of the join rules. This only applies to an experimental room version, as defined in MSC3083.
This commit is contained in:
parent
05e8c70c05
commit
cc51aaaa7a
7 changed files with 238 additions and 131 deletions
|
@ -77,6 +77,7 @@ from synapse.handlers.devicemessage import DeviceMessageHandler
|
|||
from synapse.handlers.directory import DirectoryHandler
|
||||
from synapse.handlers.e2e_keys import E2eKeysHandler
|
||||
from synapse.handlers.e2e_room_keys import E2eRoomKeysHandler
|
||||
from synapse.handlers.event_auth import EventAuthHandler
|
||||
from synapse.handlers.events import EventHandler, EventStreamHandler
|
||||
from synapse.handlers.federation import FederationHandler
|
||||
from synapse.handlers.groups_local import GroupsLocalHandler, GroupsLocalWorkerHandler
|
||||
|
@ -749,6 +750,10 @@ class HomeServer(metaclass=abc.ABCMeta):
|
|||
def get_space_summary_handler(self) -> SpaceSummaryHandler:
|
||||
return SpaceSummaryHandler(self)
|
||||
|
||||
@cache_in_self
|
||||
def get_event_auth_handler(self) -> EventAuthHandler:
|
||||
return EventAuthHandler(self)
|
||||
|
||||
@cache_in_self
|
||||
def get_external_cache(self) -> ExternalCache:
|
||||
return ExternalCache(self)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue