Allow = in mxids and groupids

... because the spec says we should.
This commit is contained in:
Richard van der Hoff 2017-10-20 23:42:53 +01:00
parent 58fbbe0f1d
commit 29812c628b
3 changed files with 4 additions and 5 deletions

View file

@ -794,5 +794,5 @@ def _validate_group_id(group_id):
if types.contains_invalid_mxid_characters(localpart):
raise SynapseError(
400,
"Group ID can only contain characters a-z, 0-9, or '_-./'",
"Group ID can only contain characters a-z, 0-9, or '=_-./'",
)

View file

@ -49,7 +49,7 @@ class RegistrationHandler(BaseHandler):
if types.contains_invalid_mxid_characters(localpart):
raise SynapseError(
400,
"User ID can only contain characters a-z, 0-9, or '_-./'",
"User ID can only contain characters a-z, 0-9, or '=_-./'",
Codes.INVALID_USERNAME
)
@ -255,8 +255,7 @@ class RegistrationHandler(BaseHandler):
if types.contains_invalid_mxid_characters(localpart):
raise SynapseError(
400,
"User ID must only contain characters which do not"
" require URL encoding."
"User ID can only contain characters a-z, 0-9, or '=_-./'",
)
user = UserID(localpart, self.hs.hostname)
user_id = user.to_string()

View file

@ -162,7 +162,7 @@ class GroupID(DomainSpecificString):
SIGIL = "+"
mxid_localpart_allowed_characters = set("_-./" + string.ascii_lowercase + string.digits)
mxid_localpart_allowed_characters = set("_-./=" + string.ascii_lowercase + string.digits)
def contains_invalid_mxid_characters(localpart):