diff options
author | Richard van der Hoff <richard@matrix.org> | 2017-11-09 19:36:13 +0000 |
---|---|---|
committer | Richard van der Hoff <richard@matrix.org> | 2017-11-09 19:36:13 +0000 |
commit | b70b64690330c25cbd04c1b2cacf8276b566efc8 (patch) | |
tree | 354ba4c33e1f278fd48258bb7fbbec0ca578f477 /synapse | |
parent | Fix typo (diff) | |
download | synapse-b70b64690330c25cbd04c1b2cacf8276b566efc8.tar.xz |
Allow upper-case characters in mxids
Because we're never going to be able to fix this :'(
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 '=_-./'", |