From: Lukas Reschke Date: Fri, 13 Mar 2015 11:26:33 +0000 (+0100) Subject: Remove OC_User_HTTP X-Git-Tag: v8.1.0alpha1~292^2 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=93a303970f21a0c621d74b9af7fb93463a936510;p=nextcloud-server.git Remove OC_User_HTTP Addresses No. 1 from https://github.com/owncloud/core/issues/14847 --- diff --git a/lib/private/user/http.php b/lib/private/user/http.php deleted file mode 100644 index 8375c4e1e22..00000000000 --- a/lib/private/user/http.php +++ /dev/null @@ -1,120 +0,0 @@ -. -* -*/ - -/** - * user backend using http auth requests - */ -class OC_User_HTTP extends OC_User_Backend implements \OCP\IUserBackend { - /** - * split http://user@host/path into a user and url part - * @param string $url - * @return array - */ - private function parseUrl($url) { - $parts=parse_url($url); - $url=$parts['scheme'].'://'.$parts['host']; - if(isset($parts['port'])) { - $url.=':'.$parts['port']; - } - $url.=$parts['path']; - if(isset($parts['query'])) { - $url.='?'.$parts['query']; - } - return array($parts['user'], $url); - - } - - /** - * check if an url is a valid login - * @param string $url - * @return boolean - */ - private function matchUrl($url) { - return ! is_null(parse_url($url, PHP_URL_USER)); - } - - /** - * Check if the password is correct - * @param string $uid The username - * @param string $password The password - * @return string - * - * Check if the password is correct without logging in the user - * returns the user id or false - */ - public function checkPassword($uid, $password) { - if(!$this->matchUrl($uid)) { - return false; - } - list($user, $url)=$this->parseUrl($uid); - - $ch = curl_init(); - curl_setopt($ch, CURLOPT_URL, $url); - curl_setopt($ch, CURLOPT_USERPWD, $user.':'.$password); - curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); - curl_setopt($ch, CURLOPT_PROTOCOLS, CURLPROTO_HTTP | CURLPROTO_HTTPS); - curl_setopt($ch, CURLOPT_REDIR_PROTOCOLS, CURLPROTO_HTTP | CURLPROTO_HTTPS); - - curl_exec($ch); - - $status = curl_getinfo($ch, CURLINFO_HTTP_CODE); - - curl_close($ch); - - if($status === 200) { - return $uid; - } - - return false; - } - - /** - * check if a user exists - * @param string $uid the username - * @return boolean - */ - public function userExists($uid) { - return $this->matchUrl($uid); - } - - /** - * get the user's home directory - * @param string $uid the username - * @return string|false - */ - public function getHome($uid) { - if($this->userExists($uid)) { - return OC_Config::getValue( "datadirectory", OC::$SERVERROOT."/data" ) . '/' . $uid; - }else{ - return false; - } - } - - /** - * Backend name to be shown in user management - * @return string the name of the backend to be shown - */ - public function getBackendName(){ - return 'HTTP'; - } -}