diff options
author | Roeland Jago Douma <rullzer@users.noreply.github.com> | 2017-04-26 10:41:53 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-04-26 10:41:53 +0200 |
commit | 5b5c3a1773dab4960d41aafc4150859a308311b7 (patch) | |
tree | cc619ccdecb4f6745de0ef466d710a7d3a0de455 /lib | |
parent | bec9f18a0f88a60b687d97b279e371984663febc (diff) | |
parent | fff6d6e3e8f5f74df5076bba068f85e0f67a0c0e (diff) | |
download | nextcloud-server-5b5c3a1773dab4960d41aafc4150859a308311b7.tar.gz nextcloud-server-5b5c3a1773dab4960d41aafc4150859a308311b7.zip |
Merge pull request #4430 from nextcloud/refactor-auth
Improve readability of login logic
Diffstat (limited to 'lib')
-rw-r--r-- | lib/private/legacy/api.php | 19 | ||||
-rw-r--r-- | lib/private/legacy/user.php | 5 |
2 files changed, 10 insertions, 14 deletions
diff --git a/lib/private/legacy/api.php b/lib/private/legacy/api.php index 17ee9c5d468..894aee28560 100644 --- a/lib/private/legacy/api.php +++ b/lib/private/legacy/api.php @@ -332,25 +332,20 @@ class OC_API { $userSession = \OC::$server->getUserSession(); $request = \OC::$server->getRequest(); try { - $loginSuccess = $userSession->tryTokenLogin($request); - if (!$loginSuccess) { - $loginSuccess = $userSession->tryBasicAuthLogin($request, \OC::$server->getBruteForceThrottler()); + if ($userSession->tryTokenLogin($request) + || $userSession->tryBasicAuthLogin($request, \OC::$server->getBruteForceThrottler())) { + self::$logoutRequired = true; + } else { + return false; } - } catch (\OC\User\LoginException $e) { - return false; - } - - if ($loginSuccess === true) { - self::$logoutRequired = true; - // initialize the user's filesystem \OC_Util::setupFS(\OC_User::getUser()); self::$isLoggedIn = true; return \OC_User::getUser(); + } catch (\OC\User\LoginException $e) { + return false; } - - return false; } /** diff --git a/lib/private/legacy/user.php b/lib/private/legacy/user.php index 621ea3535b1..7e7cbab3bce 100644 --- a/lib/private/legacy/user.php +++ b/lib/private/legacy/user.php @@ -199,9 +199,10 @@ class OC_User { if($setUidAsDisplayName) { self::setDisplayName($uid); } - self::getUserSession()->setLoginName($uid); + $userSession = self::getUserSession(); + $userSession->setLoginName($uid); $request = OC::$server->getRequest(); - self::getUserSession()->createSessionToken($request, $uid, $uid); + $userSession->createSessionToken($request, $uid, $uid); // setup the filesystem OC_Util::setupFS($uid); // first call the post_login hooks, the login-process needs to be |