Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/server.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/apps
diff options
context:
space:
mode:
authorMorris Jobke <hey@morrisjobke.de>2021-04-19 22:50:48 +0300
committerGitHub <noreply@github.com>2021-04-19 22:50:48 +0300
commita67f0b0c4783b2a5fdbf13edaf0d1e944e145588 (patch)
tree28c3e8eb55946dbd5b171d0063e09b5b3ed6787a /apps
parent2ef326d6b65c7c000e6e626d26d2459d44eec53c (diff)
parent5c42c303e46ca1a83e3c02cc79e46f72ff38d5b2 (diff)
Merge pull request #26615 from nextcloud/enh/ffs/require_read
Require read permissions for federated shares
Diffstat (limited to 'apps')
-rw-r--r--apps/federatedfilesharing/lib/FederatedShareProvider.php8
1 files changed, 8 insertions, 0 deletions
diff --git a/apps/federatedfilesharing/lib/FederatedShareProvider.php b/apps/federatedfilesharing/lib/FederatedShareProvider.php
index 045bfecd5a2..733ce27b596 100644
--- a/apps/federatedfilesharing/lib/FederatedShareProvider.php
+++ b/apps/federatedfilesharing/lib/FederatedShareProvider.php
@@ -38,6 +38,7 @@ namespace OCA\FederatedFileSharing;
use OC\Share20\Exception\InvalidShare;
use OC\Share20\Share;
+use OCP\Constants;
use OCP\DB\QueryBuilder\IQueryBuilder;
use OCP\Federation\ICloudFederationProviderManager;
use OCP\Federation\ICloudIdManager;
@@ -208,6 +209,13 @@ class FederatedShareProvider implements IShareProvider {
throw new \Exception($message_t);
}
+ // Federated shares always have read permissions
+ if (($share->getPermissions() & Constants::PERMISSION_READ) === 0) {
+ $message = 'Federated shares require read permissions';
+ $message_t = $this->l->t('Federated shares require read permissions');
+ $this->logger->debug($message, ['app' => 'Federated File Sharing']);
+ throw new \Exception($message_t);
+ }
$share->setSharedWith($cloudId->getId());