Skip to content
Snippets Groups Projects
Commit f9e99f95 authored by Richard van der Hoff's avatar Richard van der Hoff Committed by Amber Brown
Browse files

Factor out some redundant code in the login impl (#5639)

* Factor out some redundant code in the login impl

Also fixes a redundant access_token which was generated during jwt login.

* changelog
parent 1af2fcd4
No related branches found
No related tags found
No related merge requests found
Factor out some redundant code in the login implementation.
...@@ -283,19 +283,7 @@ class LoginRestServlet(RestServlet): ...@@ -283,19 +283,7 @@ class LoginRestServlet(RestServlet):
yield auth_handler.validate_short_term_login_token_and_get_user_id(token) yield auth_handler.validate_short_term_login_token_and_get_user_id(token)
) )
device_id = login_submission.get("device_id") result = yield self._register_device_with_callback(user_id, login_submission)
initial_display_name = login_submission.get("initial_device_display_name")
device_id, access_token = yield self.registration_handler.register_device(
user_id, device_id, initial_display_name
)
result = {
"user_id": user_id, # may have changed
"access_token": access_token,
"home_server": self.hs.hostname,
"device_id": device_id,
}
defer.returnValue(result) defer.returnValue(result)
@defer.inlineCallbacks @defer.inlineCallbacks
...@@ -323,35 +311,18 @@ class LoginRestServlet(RestServlet): ...@@ -323,35 +311,18 @@ class LoginRestServlet(RestServlet):
raise LoginError(401, "Invalid JWT", errcode=Codes.UNAUTHORIZED) raise LoginError(401, "Invalid JWT", errcode=Codes.UNAUTHORIZED)
user_id = UserID(user, self.hs.hostname).to_string() user_id = UserID(user, self.hs.hostname).to_string()
device_id = login_submission.get("device_id")
initial_display_name = login_submission.get("initial_device_display_name")
auth_handler = self.auth_handler
registered_user_id = yield auth_handler.check_user_exists(user_id)
if registered_user_id:
device_id, access_token = yield self.registration_handler.register_device(
registered_user_id, device_id, initial_display_name
)
result = { registered_user_id = yield self.auth_handler.check_user_exists(user_id)
"user_id": registered_user_id, if not registered_user_id:
"access_token": access_token, registered_user_id, _ = (
"home_server": self.hs.hostname, yield self.registration_handler.register(
} localpart=user, generate_token=False
else: )
user_id, access_token = (
yield self.registration_handler.register(localpart=user)
)
device_id, access_token = yield self.registration_handler.register_device(
user_id, device_id, initial_display_name
) )
result = { result = yield self._register_device_with_callback(
"user_id": user_id, # may have changed registered_user_id, login_submission
"access_token": access_token, )
"home_server": self.hs.hostname,
}
defer.returnValue(result) defer.returnValue(result)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment