Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/server.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRoeland Jago Douma <rullzer@users.noreply.github.com>2017-04-26 11:41:53 +0300
committerGitHub <noreply@github.com>2017-04-26 11:41:53 +0300
commit5b5c3a1773dab4960d41aafc4150859a308311b7 (patch)
treecc619ccdecb4f6745de0ef466d710a7d3a0de455
parentbec9f18a0f88a60b687d97b279e371984663febc (diff)
parentfff6d6e3e8f5f74df5076bba068f85e0f67a0c0e (diff)
Merge pull request #4430 from nextcloud/refactor-auth
Improve readability of login logic
-rw-r--r--lib/private/legacy/api.php19
-rw-r--r--lib/private/legacy/user.php5
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