From 8213d5df4f40410f851da31082bbb1fb8d84dd1e Mon Sep 17 00:00:00 2001 From: Roeland Jago Douma Date: Thu, 25 Feb 2016 20:22:35 +0100 Subject: Do not allow sharing of the root folder Sharing of the users root folder should not be allowed as it is very weird UX. Also many of our clients have no proper way of displaying this. Added unit test Also added intergration tests to make sure we won't allow it in the future. --- lib/private/share20/manager.php | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'lib/private/share20') diff --git a/lib/private/share20/manager.php b/lib/private/share20/manager.php index 9b33e947557..9fe33757473 100644 --- a/lib/private/share20/manager.php +++ b/lib/private/share20/manager.php @@ -197,6 +197,11 @@ class Manager implements IManager { throw new \InvalidArgumentException('Path should be either a file or a folder'); } + // And you can't share your rootfolder + if ($this->rootFolder->getUserFolder($share->getSharedBy())->isSubNode($share->getNode()) === false) { + throw new \InvalidArgumentException('You can\'t share your root folder'); + } + // Check if we actually have share permissions if (!$share->getNode()->isShareable()) { $message_t = $this->l->t('You are not allowed to share %s', [$share->getNode()->getPath()]); -- cgit v1.2.3