Add 'allow Symlinks' as an option to config.php
Signed-off-by: Johannes Leuker <j.leuker@hosting.de>
This commit is contained in:
parent
15924b8832
commit
ac88bcbd5f
|
@ -1619,6 +1619,15 @@ $CONFIG = [
|
||||||
*/
|
*/
|
||||||
'minimum.supported.desktop.version' => '2.0.0',
|
'minimum.supported.desktop.version' => '2.0.0',
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Option to allow local storage to contain symlinks.
|
||||||
|
* WARNING: Not recommended. This would make it possible for Nextcloud to access
|
||||||
|
* files outside the data directory and could be considered a security risk.
|
||||||
|
*
|
||||||
|
* Defaults to ``false``
|
||||||
|
*/
|
||||||
|
'localstorage.allowsymlinks' => false,
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* EXPERIMENTAL: option whether to include external storage in quota
|
* EXPERIMENTAL: option whether to include external storage in quota
|
||||||
* calculation, defaults to false.
|
* calculation, defaults to false.
|
||||||
|
|
|
@ -58,8 +58,6 @@ class Local extends \OC\Files\Storage\Common {
|
||||||
|
|
||||||
protected $dataDirLength;
|
protected $dataDirLength;
|
||||||
|
|
||||||
protected $allowSymlinks = false;
|
|
||||||
|
|
||||||
protected $realDataDir;
|
protected $realDataDir;
|
||||||
|
|
||||||
public function __construct($arguments) {
|
public function __construct($arguments) {
|
||||||
|
@ -441,7 +439,8 @@ class Local extends \OC\Files\Storage\Common {
|
||||||
|
|
||||||
$fullPath = $this->datadir . $path;
|
$fullPath = $this->datadir . $path;
|
||||||
$currentPath = $path;
|
$currentPath = $path;
|
||||||
if ($this->allowSymlinks || $currentPath === '') {
|
$allowSymlinks = \OC::$server->getConfig()->getSystemValue('localstorage.allowsymlinks', false);
|
||||||
|
if ($allowSymlinks || $currentPath === '') {
|
||||||
return $fullPath;
|
return $fullPath;
|
||||||
}
|
}
|
||||||
$pathToResolve = $fullPath;
|
$pathToResolve = $fullPath;
|
||||||
|
|
Loading…
Reference in New Issue