From b8af7ee9bc9badb76bbf8d7eb4ff9dcc8744ba6c Mon Sep 17 00:00:00 2001 From: Roeland Jago Douma Date: Fri, 13 Oct 2017 21:30:29 +0200 Subject: [PATCH] Nextcloud 13 is not compatible with newer than php 7.2 Just to avoid users from trying this with a to new (untested) php version * Moved the check logic to 1 place * All directly callable scripts just require this on top * exit hard (-1) so we know scripts won't continue * Return status 500 so no sync clients will try fancy stuff Signed-off-by: Roeland Jago Douma --- console.php | 10 ++-------- cron.php | 7 +------ index.php | 8 +------- lib/versioncheck.php | 18 ++++++++++++++++++ ocs/providers.php | 1 + ocs/v1.php | 1 + public.php | 3 +++ remote.php | 2 ++ status.php | 2 ++ 9 files changed, 31 insertions(+), 21 deletions(-) create mode 100644 lib/versioncheck.php diff --git a/console.php b/console.php index d6854279ca..67856a17b3 100644 --- a/console.php +++ b/console.php @@ -29,20 +29,14 @@ * */ +require_once __DIR__ . '/lib/versioncheck.php'; + use OC\Console\Application; use Symfony\Component\Console\Input\ArgvInput; use Symfony\Component\Console\Output\ConsoleOutput; define('OC_CONSOLE', 1); -// Show warning if a PHP version below 5.6.0 is used, this has to happen here -// because base.php will already use 5.6 syntax. -if (version_compare(PHP_VERSION, '5.6.0') === -1) { - echo 'This version of Nextcloud requires at least PHP 5.6.0'.PHP_EOL; - echo 'You are currently running ' . PHP_VERSION . '. Please update your PHP version.'.PHP_EOL; - return; -} - function exceptionHandler($exception) { echo "An unhandled exception has been thrown:" . PHP_EOL; echo $exception; diff --git a/cron.php b/cron.php index 511a56f295..acc7eaae50 100644 --- a/cron.php +++ b/cron.php @@ -34,12 +34,7 @@ * */ -// Show warning if a PHP version below 5.6.0 is used -if (version_compare(PHP_VERSION, '5.6.0') === -1) { - echo 'This version of Nextcloud requires at least PHP 5.6.0
'; - echo 'You are currently running ' . PHP_VERSION . '. Please update your PHP version.'; - return; -} +require_once __DIR__ . '/lib/versioncheck.php'; try { diff --git a/index.php b/index.php index abe30d48ab..858e433b98 100644 --- a/index.php +++ b/index.php @@ -28,13 +28,7 @@ * */ -// Show warning if a PHP version below 5.6.0 is used, this has to happen here -// because base.php will already use 5.6 syntax. -if (version_compare(PHP_VERSION, '5.6.0') === -1) { - echo 'This version of Nextcloud requires at least PHP 5.6.0
'; - echo 'You are currently running ' . PHP_VERSION . '. Please update your PHP version.'; - return; -} +require_once __DIR__ . '/lib/versioncheck.php'; try { diff --git a/lib/versioncheck.php b/lib/versioncheck.php new file mode 100644 index 0000000000..23b09c28e1 --- /dev/null +++ b/lib/versioncheck.php @@ -0,0 +1,18 @@ +'; + echo 'You are currently running ' . PHP_VERSION . '. Please update your PHP version.'; + exit(-1); +} + +// Show warning if > PHP 7.2 is used as Nextcloud is not compatible with > PHP 7.2 for now +if (version_compare(PHP_VERSION, '7.3.0') !== -1) { + http_response_code(500); + echo 'This version of Nextcloud is not compatible with > PHP 7.2.
'; + echo 'You are currently running ' . PHP_VERSION . '.'; + exit(-1); +} diff --git a/ocs/providers.php b/ocs/providers.php index 79fc747c06..ded7680a2c 100644 --- a/ocs/providers.php +++ b/ocs/providers.php @@ -23,6 +23,7 @@ * */ +require_once __DIR__ . '/../lib/versioncheck.php'; require_once __DIR__ . '/../lib/base.php'; header('Content-type: application/xml'); diff --git a/ocs/v1.php b/ocs/v1.php index 857dc0fd14..43a1c2d9e0 100644 --- a/ocs/v1.php +++ b/ocs/v1.php @@ -29,6 +29,7 @@ * */ +require_once __DIR__ . '/../lib/versioncheck.php'; require_once __DIR__ . '/../lib/base.php'; if (\OCP\Util::needUpgrade() diff --git a/public.php b/public.php index 567408217d..f8ef7a272b 100644 --- a/public.php +++ b/public.php @@ -27,6 +27,9 @@ * along with this program. If not, see * */ + +require_once __DIR__ . '/lib/versioncheck.php'; + try { require_once __DIR__ . '/lib/base.php'; diff --git a/remote.php b/remote.php index 1d83e5a7f8..8879a30029 100644 --- a/remote.php +++ b/remote.php @@ -28,6 +28,8 @@ * */ +require_once __DIR__ . '/lib/versioncheck.php'; + use OCA\DAV\Connector\Sabre\ExceptionLoggerPlugin; use Sabre\DAV\Exception\ServiceUnavailable; use Sabre\DAV\Server; diff --git a/status.php b/status.php index f97c4410cc..cc5d521577 100644 --- a/status.php +++ b/status.php @@ -29,6 +29,8 @@ * */ +require_once __DIR__ . '/lib/versioncheck.php'; + try { require_once __DIR__ . '/lib/base.php';