diff options
author | Richard van der Hoff <github@rvanderhoff.org.uk> | 2017-11-09 20:06:47 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-11-09 20:06:47 +0000 |
commit | 1282086f58311d16e8ac6f39f8c07ce1d0a68841 (patch) | |
tree | 354ba4c33e1f278fd48258bb7fbbec0ca578f477 /synapse | |
parent | Fix typo (diff) | |
parent | Allow upper-case characters in mxids (diff) | |
download | synapse-1282086f58311d16e8ac6f39f8c07ce1d0a68841.tar.xz |
Merge pull request #2659 from matrix-org/rav/apparently_we_dont_follow_our_own_spec_now
Allow upper-case characters in mxids
Diffstat (limited to 'synapse')
-rw-r--r-- | synapse/handlers/register.py | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/synapse/handlers/register.py b/synapse/handlers/register.py index f6e7e58563..bd5ba6e1d8 100644 --- a/synapse/handlers/register.py +++ b/synapse/handlers/register.py @@ -15,6 +15,7 @@ """Contains functions for registering clients.""" import logging +import urllib from twisted.internet import defer @@ -22,7 +23,6 @@ from synapse.api.errors import ( AuthError, Codes, SynapseError, RegistrationError, InvalidCaptchaError ) from synapse.http.client import CaptchaServerHttpClient -from synapse import types from synapse.types import UserID from synapse.util.async import run_on_reactor from ._base import BaseHandler @@ -47,7 +47,7 @@ class RegistrationHandler(BaseHandler): @defer.inlineCallbacks def check_username(self, localpart, guest_access_token=None, assigned_user_id=None): - if types.contains_invalid_mxid_characters(localpart): + if urllib.quote(localpart.encode('utf-8')) != localpart: raise SynapseError( 400, "User ID can only contain characters a-z, 0-9, or '=_-./'", @@ -253,7 +253,7 @@ class RegistrationHandler(BaseHandler): """ Registers email_id as SAML2 Based Auth. """ - if types.contains_invalid_mxid_characters(localpart): + if urllib.quote(localpart) != localpart: raise SynapseError( 400, "User ID can only contain characters a-z, 0-9, or '=_-./'", |