From: Thomas Müller Date: Tue, 1 Oct 2013 20:56:47 +0000 (+0200) Subject: adding getCurrentUserId() to ApacheBackend X-Git-Tag: v6.0.0alpha2~72^2~12 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=0537960dccb5e9ef7e87d383304e09858d54557b;p=nextcloud-server.git adding getCurrentUserId() to ApacheBackend --- diff --git a/lib/public/apachebackend.php b/lib/public/apachebackend.php index 24e50ab6165..47ee8b4ed3b 100644 --- a/lib/public/apachebackend.php +++ b/lib/public/apachebackend.php @@ -38,4 +38,10 @@ interface ApacheBackend { */ public function getLogoutAttribute(); -} \ No newline at end of file + /** + * Return the id of the current user + * @return string + */ + public function getCurrentUserId(); + +} diff --git a/lib/user.php b/lib/user.php index e0b58e22c3e..a4ad3278142 100644 --- a/lib/user.php +++ b/lib/user.php @@ -219,14 +219,13 @@ class OC_User { * * Log in a user and regenerate a new session. */ - public static function loginWithApache() { + public static function loginWithApache(\OCP\ApacheBackend $backend) { - $uid = $_SERVER["PHP_AUTH_USER"]; + $uid = $backend->getCurrentUserId(); $run = true; OC_Hook::emit( "OC_User", "pre_login", array( "run" => &$run, "uid" => $uid )); - $enabled = self::isEnabled($uid); - if($uid && $enabled) { + if($uid) { session_regenerate_id(true); self::setUserId($uid); self::setDisplayName($uid); @@ -253,7 +252,7 @@ class OC_User { self::setupBackends(); self::unsetMagicInCookie(); - if (self::loginWithApache()) { + if (self::loginWithApache($backend)) { if (! $isWebdav) { $_REQUEST['redirect_url'] = \OC_Request::requestUri(); OC_Util::redirectToDefaultPage();