Port 2d373416d8
to master
This commit is contained in:
parent
38b2239b0d
commit
19f770d0db
|
@ -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);
|
||||
|
|
|
@ -29,7 +29,7 @@ class ExcludeFoldersByPathFilterIterator extends \RecursiveFilterIterator {
|
|||
parent::__construct($iterator);
|
||||
|
||||
$appFolders = \OC::$APPSROOTS;
|
||||
foreach($appFolders as $key => $appFolder) {
|
||||
foreach($appFolders as $key => $appFolder) {c
|
||||
$appFolders[$key] = rtrim($appFolder['path'], '/');
|
||||
}
|
||||
|
||||
|
@ -40,6 +40,11 @@ class ExcludeFoldersByPathFilterIterator extends \RecursiveFilterIterator {
|
|||
rtrim($root . '/apps', '/'),
|
||||
rtrim($root . '/assets', '/'),
|
||||
rtrim($root . '/lost+found', '/'),
|
||||
// Ignore folders generated by updater since the updater is replaced
|
||||
// after the integrity check is run.
|
||||
// See https://github.com/owncloud/updater/issues/318#issuecomment-212497846
|
||||
rtrim($root . '/updater', '/'),
|
||||
rtrim($root . '/_oc_upgrade', '/'),
|
||||
];
|
||||
$customDataDir = \OC::$server->getConfig()->getSystemValue('datadirectory', '');
|
||||
if($customDataDir !== '') {
|
||||
|
|
Loading…
Reference in New Issue