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>
pull/33545/head
Frank Karlitschek 3 years ago committed by Joas Schilling
parent 001b12c482
commit 53c083ea2a
No known key found for this signature in database
GPG Key ID: F72FA5B49FFA96B0
  1. 32
      occ

32
occ

@ -1,11 +1,33 @@
#!/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
*/
/**
* SPDX-FileCopyrightText: 2014 ownCloud, Inc.
* SPDX-FileCopyrightText: 2014 Olivier Paroz
* SPDX-FileCopyrightText: 2013 Thomas Müller <thomas.mueller@tmit.eu>
* SPDX-License-Identifier: AGPL-3.0-only
* 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']);
}
//$argv = $_SERVER['argv'];
dropPrivileges();
require_once __DIR__ . '/console.php';

Loading…
Cancel
Save