From 563f1318cdaf8681c4977fb32d7ea2441269aa1c Mon Sep 17 00:00:00 2001 From: hoellen Date: Sat, 3 Oct 2020 16:32:49 +0200 Subject: [PATCH] Remove posix_getpwuid and compare only userid Signed-off-by: hoellen --- console.php | 14 +++++++------- cron.php | 11 ++++++----- 2 files changed, 13 insertions(+), 12 deletions(-) diff --git a/console.php b/console.php index 565569ef28b..5f3bea427d9 100644 --- a/console.php +++ b/console.php @@ -64,14 +64,14 @@ try { echo "The posix extensions are required - see http://php.net/manual/en/book.posix.php" . PHP_EOL; exit(1); } - $user = posix_getpwuid(posix_getuid()); - $configUser = posix_getpwuid(fileowner(OC::$configDir . 'config.php')); - if ($user['name'] !== $configUser['name']) { + $user = posix_getuid(); + $configUser = fileowner(OC::$configDir . 'config.php'); + if ($user !== $configUser) { echo "Console has to be executed with the user that owns the file config/config.php" . PHP_EOL; - echo "Current user: " . $user['name'] . PHP_EOL; - echo "Owner of config.php: " . $configUser['name'] . PHP_EOL; - echo "Try adding 'sudo -u " . $configUser['name'] . " ' to the beginning of the command (without the single quotes)" . PHP_EOL; - echo "If running with 'docker exec' try adding the option '-u " . $configUser['name'] . "' to the docker command (without the single quotes)" . PHP_EOL; + echo "Current user id: " . $user . PHP_EOL; + echo "Owner id of config.php: " . $configUser . PHP_EOL; + echo "Try adding 'sudo -u " . $configUser . " ' to the beginning of the command (without the single quotes)" . PHP_EOL; + echo "If running with 'docker exec' try adding the option '-u " . $configUser . "' to the docker command (without the single quotes)" . PHP_EOL; exit(1); } diff --git a/cron.php b/cron.php index fd7d2040f1b..b8202dd9a88 100644 --- a/cron.php +++ b/cron.php @@ -94,15 +94,16 @@ try { exit(1); } - $user = posix_getpwuid(posix_getuid()); - $configUser = posix_getpwuid(fileowner(OC::$configDir . 'config.php')); - if ($user['name'] !== $configUser['name']) { + $user = posix_getuid(); + $configUser = fileowner(OC::$configDir . 'config.php'); + if ($user !== $configUser) { echo "Console has to be executed with the user that owns the file config/config.php" . PHP_EOL; - echo "Current user: " . $user['name'] . PHP_EOL; - echo "Owner of config.php: " . $configUser['name'] . PHP_EOL; + echo "Current user id: " . $user . PHP_EOL; + echo "Owner id of config.php: " . $configUser . PHP_EOL; exit(1); } + // We call Nextcloud from the CLI (aka cron) if ($appMode !== 'cron') { $config->setAppValue('core', 'backgroundjobs_mode', 'cron');