diff options
author | David Baker <dave@matrix.org> | 2015-05-14 13:21:55 +0100 |
---|---|---|
committer | David Baker <dave@matrix.org> | 2015-05-14 13:21:55 +0100 |
commit | 92e1c8983dcbc1b9e75ff71b06928fd51627f61a (patch) | |
tree | 478aac9fe0379b37cca300538391034f0cbb065d /synapse/handlers/directory.py | |
parent | Throw error when creating room if alias contains whitespace #SYN-335 (diff) | |
download | synapse-92e1c8983dcbc1b9e75ff71b06928fd51627f61a.tar.xz |
Disallow whitespace in aliases here too
Diffstat (limited to 'synapse/handlers/directory.py')
-rw-r--r-- | synapse/handlers/directory.py | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/synapse/handlers/directory.py b/synapse/handlers/directory.py index f76febee8f..e41a688836 100644 --- a/synapse/handlers/directory.py +++ b/synapse/handlers/directory.py @@ -22,6 +22,7 @@ from synapse.api.constants import EventTypes from synapse.types import RoomAlias import logging +import string logger = logging.getLogger(__name__) @@ -40,6 +41,10 @@ class DirectoryHandler(BaseHandler): def _create_association(self, room_alias, room_id, servers=None): # general association creation for both human users and app services + for wchar in string.whitespace: + if wchar in room_alias.localpart: + raise SynapseError(400, "Invalid characters in room alias") + if not self.hs.is_mine(room_alias): raise SynapseError(400, "Room alias must be local") # TODO(erikj): Change this. |