oops, check all login types

This commit is contained in:
Matthew Hodgson 2018-01-19 18:23:56 +00:00
parent 8fe253f19b
commit 62d7d66ae5
1 changed files with 10 additions and 13 deletions

View File

@ -365,19 +365,16 @@ class RegisterRestServlet(RestServlet):
# /register/email/requestToken when we requested a 3pid, but that's not
# guaranteed.
if (
auth_result and
(
LoginType.EMAIL_IDENTITY in auth_result or
LoginType.EMAIL_MSISDN in auth_result
)
):
medium = auth_result[LoginType.EMAIL_IDENTITY].threepid['medium']
address = auth_result[LoginType.EMAIL_IDENTITY].threepid['address']
if auth_result:
for login_type in [LoginType.EMAIL_IDENTITY, LoginType.EMAIL_MSISDN]:
if login_type in auth_result:
medium = auth_result[login_type].threepid['medium']
address = auth_result[login_type].threepid['address']
if not check_3pid_allowed(self.hs, medium, address):
raise SynapseError(
403, "Third party identifier is not allowed", Codes.THREEPID_DENIED,
403, "Third party identifier is not allowed",
Codes.THREEPID_DENIED,
)
if registered_user_id is not None: