From c19bc1917b1db7553bc011b15c4dc5354c41a52f Mon Sep 17 00:00:00 2001 From: Lukas Reschke Date: Wed, 17 Sep 2014 16:04:12 +0200 Subject: [PATCH] Move basic auth check At the previous point not all apps were initialized. Now the basic auth check happens together at the same location as all others. Fixes https://github.com/owncloud/core/issues/11129 --- lib/base.php | 16 ++++------------ 1 file changed, 4 insertions(+), 12 deletions(-) diff --git a/lib/base.php b/lib/base.php index e21d0124b32..76e0b9cf670 100644 --- a/lib/base.php +++ b/lib/base.php @@ -710,15 +710,6 @@ class OC { self::checkUpgrade(); } - if (!OC_User::isLoggedIn()) { - // Test it the user is already authenticated using Apaches AuthType Basic... very usable in combination with LDAP - if (!OC_Config::getValue('maintenance', false) && !self::checkUpgrade(false)) { - OC_App::loadApps(array('authentication')); - } - OC::tryBasicAuthLogin(); - } - - if (!self::$CLI and (!isset($_GET["logout"]) or ($_GET["logout"] !== 'true'))) { try { if (!OC_Config::getValue('maintenance', false) && !\OCP\Util::needUpgrade()) { @@ -842,8 +833,9 @@ class OC { } // remember was checked after last login elseif (OC::tryRememberLogin()) { $error[] = 'invalidcookie'; - } // logon via web form - elseif (OC::tryFormLogin()) { + } // logon via web form or WebDAV + elseif (OC::tryFormLogin()) {} + elseif (OC::tryBasicAuthLogin()) { $error[] = 'invalidpassword'; } @@ -974,10 +966,10 @@ class OC { } if (OC_User::login($_SERVER["PHP_AUTH_USER"], $_SERVER["PHP_AUTH_PW"])) { - //OC_Log::write('core',"Logged in with HTTP Authentication", OC_Log::DEBUG); OC_User::unsetMagicInCookie(); $_SERVER['HTTP_REQUESTTOKEN'] = OC_Util::callRegister(); } + return true; } -- 2.39.5