Skip to content

Commit

Permalink
Merge pull request #33545 from nextcloud/occ-as-root
Browse files Browse the repository at this point in the history
make it possible to run occ as root
  • Loading branch information
susnux authored Feb 27, 2025
2 parents 001b12c + 53c083e commit 8f28fa2
Showing 1 changed file with 27 additions and 5 deletions.
32 changes: 27 additions & 5 deletions occ
Original file line number Diff line number Diff line change
@@ -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';

0 comments on commit 8f28fa2

Please sign in to comment.