summaryrefslogtreecommitdiffstats
path: root/lib/private/IntegrityCheck/Checker.php
diff options
context:
space:
mode:
authorLukas Reschke <lukas@statuscode.ch>2016-07-21 01:43:32 +0200
committerLukas Reschke <lukas@statuscode.ch>2016-07-21 01:43:32 +0200
commit19f770d0db516617fa6b533661c168cda95f5e14 (patch)
tree62bd3545adbc75cda0ecf6d6633ad7abf3987ae3 /lib/private/IntegrityCheck/Checker.php
parent38b2239b0d1f7380c4293d910f1ed362ea386479 (diff)
downloadnextcloud-server-19f770d0db516617fa6b533661c168cda95f5e14.tar.gz
nextcloud-server-19f770d0db516617fa6b533661c168cda95f5e14.zip
Port https://github.com/nextcloud/server/commit/2d373416d8e54a7de84879a365c372a85104c6df to master
Diffstat (limited to 'lib/private/IntegrityCheck/Checker.php')
-rw-r--r--lib/private/IntegrityCheck/Checker.php13
1 files changed, 13 insertions, 0 deletions
diff --git a/lib/private/IntegrityCheck/Checker.php b/lib/private/IntegrityCheck/Checker.php
index 2af402196ae..d087720c11a 100644
--- a/lib/private/IntegrityCheck/Checker.php
+++ b/lib/private/IntegrityCheck/Checker.php
@@ -354,6 +354,19 @@ class Checker {
throw new InvalidSignatureException('Signature could not get verified.');
}
+ // Fixes for the updater as shipped with ownCloud 9.0.x: The updater is
+ // replaced after the code integrity check is performed.
+ //
+ // Due to this reason we exclude the whole updater/ folder from the code
+ // integrity check.
+ if($basePath === $this->environmentHelper->getServerRoot()) {
+ foreach($expectedHashes as $fileName => $hash) {
+ if(strpos($fileName, 'updater/') === 0) {
+ unset($expectedHashes[$fileName]);
+ }
+ }
+ }
+
// Compare the list of files which are not identical
$currentInstanceHashes = $this->generateHashes($this->getFolderIterator($basePath), $basePath);
$differencesA = array_diff($expectedHashes, $currentInstanceHashes);