0
0
Fork 0
mirror of https://github.com/nextcloud/server.git synced 2025-03-03 11:46:01 +00:00
nextcloud_server/occ
Frank Karlitschek c6bb5f102e fix(occ): Make it possible to run as root
Signed-off-by: Frank Karlitschek <karlitschek@users.noreply.github.com>
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-02-27 21:23:49 +00:00

33 lines
595 B
PHP
Executable file

#!/usr/bin/env php
<?php
declare(strict_types=1);
/**
* SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
*/
/**
* Drop privileges when run as root
*/
function dropPrivileges(): void {
if (posix_getuid() !== 0) {
return;
}
$configPath = __DIR__ . '/config/config.php';
$uid = fileowner($configPath);
if ($uid === false) {
return;
}
$info = posix_getpwuid($uid);
if ($info === false) {
return;
}
posix_setuid($uid);
posix_setgid($info['gid']);
}
dropPrivileges();
require_once __DIR__ . '/console.php';