diff options
author | Bjoern Schiessle <schiessle@owncloud.com> | 2013-08-14 09:44:29 +0200 |
---|---|---|
committer | Bjoern Schiessle <schiessle@owncloud.com> | 2013-08-14 09:44:29 +0200 |
commit | 6c3efaf26c397eb957081f1d7a3a05286ca8445f (patch) | |
tree | 7f1421d400931d832e41ae74bf4887f9ccae104d | |
parent | 53bb89824deaf97095acf6bcc2997aa7141dd573 (diff) | |
download | nextcloud-server-6c3efaf26c397eb957081f1d7a3a05286ca8445f.tar.gz nextcloud-server-6c3efaf26c397eb957081f1d7a3a05286ca8445f.zip |
throw exception if encryption was disabled but files are still encrypted to prevent the client from syncing unreadable files
-rw-r--r-- | lib/connector/sabre/file.php | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/lib/connector/sabre/file.php b/lib/connector/sabre/file.php index 06ab73e3e4d..61bdcd5e0ae 100644 --- a/lib/connector/sabre/file.php +++ b/lib/connector/sabre/file.php @@ -50,6 +50,11 @@ class OC_Connector_Sabre_File extends OC_Connector_Sabre_Node implements Sabre_D throw new \Sabre_DAV_Exception_Forbidden(); } + // throw an exception if encryption was disabled but the files are still encrypted + if (\OC_Util::encryptedFiles()) { + throw new \Sabre_DAV_Exception_ServiceUnavailable(); + } + // mark file as partial while uploading (ignored by the scanner) $partpath = $this->path . '.part'; @@ -89,7 +94,12 @@ class OC_Connector_Sabre_File extends OC_Connector_Sabre_Node implements Sabre_D */ public function get() { - return \OC\Files\Filesystem::fopen($this->path, 'rb'); + //throw execption if encryption is disabled but files are still encrypted + if (\OC_Util::encryptedFiles()) { + throw new \Sabre_DAV_Exception_ServiceUnavailable(); + } else { + return \OC\Files\Filesystem::fopen($this->path, 'rb'); + } } |