. * */ class OC_USER_WEBDAVAUTH extends OC_User_Backend { protected $webdavauth_url; public function __construct() { $this->webdavauth_url = OC_Config::getValue( "user_webdavauth_url" ); } public function createUser() { // Can't create user OC_Log::write('OC_USER_WEBDAVAUTH', 'Not possible to create users from web frontend using WebDAV user backend', 3); return false; } public function deleteUser($uid) { // Can't delete user OC_Log::write('OC_USER_WEBDAVAUTH', 'Not possible to delete users from web frontend using WebDAV user backend', 3); return false; } public function setPassword ( $uid, $password ) { // We can't change user password OC_Log::write('OC_USER_WEBDAVAUTH', 'Not possible to change password for users from web frontend using WebDAV user backend', 3); return false; } public function checkPassword( $uid, $password ) { $url= 'http://'.urlencode($uid).':'.urlencode($password).'@'.$this->webdavauth_url; $headers = get_headers($url); if($headers==false) { OC_Log::write('OC_USER_WEBDAVAUTH', 'Not possible to connect to WebDAV Url: "'.$this->webdavauth_url.'" ', 3); return false; } $returncode= substr($headers[0], 9, 3); if(($returncode=='401') or ($returncode=='403')) { return(false); }else{ return($uid); } } /* * we don´t know if a user exists without the password. so we have to return true all the time */ public function userExists( $uid ){ return true; } /* * we don´t know the users so all we can do it return an empty array here */ public function getUsers($search = '', $limit = 10, $offset = 0) { $returnArray = array(); return $returnArray; } }