From c1558af16da9126ad4da5db001bc5c8c92c8bc51 Mon Sep 17 00:00:00 2001 From: Maxence Lange Date: Thu, 14 Nov 2019 00:55:22 -0100 Subject: [PATCH 1/2] adding share type circles Signed-off-by: Maxence Lange --- apps/dav/lib/Connector/PublicAuth.php | 5 ++++- lib/private/Share20/Manager.php | 3 ++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/apps/dav/lib/Connector/PublicAuth.php b/apps/dav/lib/Connector/PublicAuth.php index 8d29704c97..6b8341f704 100644 --- a/apps/dav/lib/Connector/PublicAuth.php +++ b/apps/dav/lib/Connector/PublicAuth.php @@ -97,7 +97,10 @@ class PublicAuth extends AbstractBasic { // check if the share is password protected if ($share->getPassword() !== null) { - if ($share->getShareType() === \OCP\Share::SHARE_TYPE_LINK || $share->getShareType() === \OCP\Share::SHARE_TYPE_EMAIL) { + + if ($share->getShareType() === \OCP\Share::SHARE_TYPE_LINK + || $share->getShareType() === \OCP\Share::SHARE_TYPE_EMAIL + || $share->getShareType() === \OCP\Share::SHARE_TYPE_CIRCLE) { if ($this->shareManager->checkPassword($share, $password)) { return true; } else if ($this->session->exists('public_link_authenticated') diff --git a/lib/private/Share20/Manager.php b/lib/private/Share20/Manager.php index db9c704871..57a129e492 100644 --- a/lib/private/Share20/Manager.php +++ b/lib/private/Share20/Manager.php @@ -1445,7 +1445,8 @@ class Manager implements IManager { */ public function checkPassword(\OCP\Share\IShare $share, $password) { $passwordProtected = $share->getShareType() !== \OCP\Share::SHARE_TYPE_LINK - || $share->getShareType() !== \OCP\Share::SHARE_TYPE_EMAIL; + || $share->getShareType() !== \OCP\Share::SHARE_TYPE_EMAIL + || $share->getShareType() !== \OCP\Share::SHARE_TYPE_CIRCLE; if (!$passwordProtected) { //TODO maybe exception? return false; From 0f32f8119e1d27548732bb1468376959779c39cf Mon Sep 17 00:00:00 2001 From: Maxence Lange Date: Wed, 4 Dec 2019 22:11:18 -0100 Subject: [PATCH 2/2] using IShare:: Signed-off-by: Maxence Lange --- apps/dav/lib/Connector/PublicAuth.php | 9 +++++---- lib/private/Share20/Manager.php | 6 +++--- 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/apps/dav/lib/Connector/PublicAuth.php b/apps/dav/lib/Connector/PublicAuth.php index 6b8341f704..149ed62bfa 100644 --- a/apps/dav/lib/Connector/PublicAuth.php +++ b/apps/dav/lib/Connector/PublicAuth.php @@ -34,6 +34,7 @@ use OCP\IRequest; use OCP\ISession; use OCP\Share\Exceptions\ShareNotFound; use OCP\Share\IManager; +use OCP\Share\IShare; use Sabre\DAV\Auth\Backend\AbstractBasic; /** @@ -98,9 +99,9 @@ class PublicAuth extends AbstractBasic { // check if the share is password protected if ($share->getPassword() !== null) { - if ($share->getShareType() === \OCP\Share::SHARE_TYPE_LINK - || $share->getShareType() === \OCP\Share::SHARE_TYPE_EMAIL - || $share->getShareType() === \OCP\Share::SHARE_TYPE_CIRCLE) { + if ($share->getShareType() === IShare::TYPE_LINK + || $share->getShareType() === IShare::TYPE_EMAIL + || $share->getShareType() === IShare::TYPE_CIRCLE) { if ($this->shareManager->checkPassword($share, $password)) { return true; } else if ($this->session->exists('public_link_authenticated') @@ -115,7 +116,7 @@ class PublicAuth extends AbstractBasic { } return false; } - } else if ($share->getShareType() === \OCP\Share::SHARE_TYPE_REMOTE) { + } else if ($share->getShareType() === IShare::TYPE_REMOTE) { return true; } else { return false; diff --git a/lib/private/Share20/Manager.php b/lib/private/Share20/Manager.php index 57a129e492..6d2836a233 100644 --- a/lib/private/Share20/Manager.php +++ b/lib/private/Share20/Manager.php @@ -1444,9 +1444,9 @@ class Manager implements IManager { * @return bool */ public function checkPassword(\OCP\Share\IShare $share, $password) { - $passwordProtected = $share->getShareType() !== \OCP\Share::SHARE_TYPE_LINK - || $share->getShareType() !== \OCP\Share::SHARE_TYPE_EMAIL - || $share->getShareType() !== \OCP\Share::SHARE_TYPE_CIRCLE; + $passwordProtected = $share->getShareType() !== IShare::TYPE_LINK + || $share->getShareType() !== IShare::TYPE_EMAIL + || $share->getShareType() !== IShare::TYPE_CIRCLE; if (!$passwordProtected) { //TODO maybe exception? return false;