diff options
author | David Baker <dave@matrix.org> | 2017-10-04 10:47:54 +0100 |
---|---|---|
committer | David Baker <dave@matrix.org> | 2017-10-04 10:47:54 +0100 |
commit | 197c14dbcfa9bc5bb281833a91ee035cb154216d (patch) | |
tree | d3722c194baf40119b93c3e6bf4d4ba7accf60fc /synapse/handlers/room.py | |
parent | Merge pull request #2492 from matrix-org/dbkr/spam_check_invites (diff) | |
download | synapse-197c14dbcfa9bc5bb281833a91ee035cb154216d.tar.xz |
Add room creation checks to spam checker
Lets the spam checker deny attempts to create rooms and add aliases to them.
Diffstat (limited to 'synapse/handlers/room.py')
-rw-r--r-- | synapse/handlers/room.py | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/synapse/handlers/room.py b/synapse/handlers/room.py index 5698d28088..f909ea04f0 100644 --- a/synapse/handlers/room.py +++ b/synapse/handlers/room.py @@ -60,6 +60,11 @@ class RoomCreationHandler(BaseHandler): }, } + def __init__(self, hs): + super(RoomCreationHandler, self).__init__(hs) + + self.spam_checker = hs.get_spam_checker() + @defer.inlineCallbacks def create_room(self, requester, config, ratelimit=True): """ Creates a new room. @@ -75,6 +80,9 @@ class RoomCreationHandler(BaseHandler): """ user_id = requester.user.to_string() + if not self.spam_checker.user_may_create_room(user_id): + raise SynapseError(403, "You are not permitted to create rooms") + if ratelimit: yield self.ratelimit(requester) |