Fix errorcode for disabled registration (#8867)

The spec says we should return `M_FORBIDDEN` when someone tries to register and
registration is disabled.
This commit is contained in:
Richard van der Hoff 2020-12-03 15:41:19 +00:00 committed by GitHub
parent 66f75c5b74
commit cf3b8156be
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 3 additions and 1 deletions

1
changelog.d/8867.bugfix Normal file
View File

@ -0,0 +1 @@
Fix the error code that is returned when a user tries to register on a homeserver on which new-user registration has been disabled.

View File

@ -451,7 +451,7 @@ class RegisterRestServlet(RestServlet):
# == Normal User Registration == (everyone else) # == Normal User Registration == (everyone else)
if not self._registration_enabled: if not self._registration_enabled:
raise SynapseError(403, "Registration has been disabled") raise SynapseError(403, "Registration has been disabled", Codes.FORBIDDEN)
# For regular registration, convert the provided username to lowercase # For regular registration, convert the provided username to lowercase
# before attempting to register it. This should mean that people who try # before attempting to register it. This should mean that people who try

View File

@ -121,6 +121,7 @@ class RegisterRestServletTestCase(unittest.HomeserverTestCase):
self.assertEquals(channel.result["code"], b"403", channel.result) self.assertEquals(channel.result["code"], b"403", channel.result)
self.assertEquals(channel.json_body["error"], "Registration has been disabled") self.assertEquals(channel.json_body["error"], "Registration has been disabled")
self.assertEquals(channel.json_body["errcode"], "M_FORBIDDEN")
def test_POST_guest_registration(self): def test_POST_guest_registration(self):
self.hs.config.macaroon_secret_key = "test" self.hs.config.macaroon_secret_key = "test"