Merge pull request #17935 from nextcloud/feature/noid/public-auth-for-circles

adding share type circles
This commit is contained in:
Roeland Jago Douma 2019-12-11 12:37:54 +01:00 committed by GitHub
commit 97deaf85b9
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 9 additions and 4 deletions

View File

@ -34,6 +34,7 @@ use OCP\IRequest;
use OCP\ISession; use OCP\ISession;
use OCP\Share\Exceptions\ShareNotFound; use OCP\Share\Exceptions\ShareNotFound;
use OCP\Share\IManager; use OCP\Share\IManager;
use OCP\Share\IShare;
use Sabre\DAV\Auth\Backend\AbstractBasic; use Sabre\DAV\Auth\Backend\AbstractBasic;
/** /**
@ -97,7 +98,10 @@ class PublicAuth extends AbstractBasic {
// check if the share is password protected // check if the share is password protected
if ($share->getPassword() !== null) { if ($share->getPassword() !== null) {
if ($share->getShareType() === \OCP\Share::SHARE_TYPE_LINK || $share->getShareType() === \OCP\Share::SHARE_TYPE_EMAIL) {
if ($share->getShareType() === IShare::TYPE_LINK
|| $share->getShareType() === IShare::TYPE_EMAIL
|| $share->getShareType() === IShare::TYPE_CIRCLE) {
if ($this->shareManager->checkPassword($share, $password)) { if ($this->shareManager->checkPassword($share, $password)) {
return true; return true;
} else if ($this->session->exists('public_link_authenticated') } else if ($this->session->exists('public_link_authenticated')
@ -112,7 +116,7 @@ class PublicAuth extends AbstractBasic {
} }
return false; return false;
} }
} else if ($share->getShareType() === \OCP\Share::SHARE_TYPE_REMOTE) { } else if ($share->getShareType() === IShare::TYPE_REMOTE) {
return true; return true;
} else { } else {
return false; return false;

View File

@ -1447,8 +1447,9 @@ class Manager implements IManager {
* @return bool * @return bool
*/ */
public function checkPassword(\OCP\Share\IShare $share, $password) { public function checkPassword(\OCP\Share\IShare $share, $password) {
$passwordProtected = $share->getShareType() !== \OCP\Share::SHARE_TYPE_LINK $passwordProtected = $share->getShareType() !== IShare::TYPE_LINK
|| $share->getShareType() !== \OCP\Share::SHARE_TYPE_EMAIL; || $share->getShareType() !== IShare::TYPE_EMAIL
|| $share->getShareType() !== IShare::TYPE_CIRCLE;
if (!$passwordProtected) { if (!$passwordProtected) {
//TODO maybe exception? //TODO maybe exception?
return false; return false;