diff --git a/lib/base.php b/lib/base.php index ab838d366b190..c32ef74f0c8b3 100644 --- a/lib/base.php +++ b/lib/base.php @@ -548,10 +548,11 @@ private static function performSameSiteCookieProtection(IConfig $config): void { return; } + $requestUri = $request->getScriptName(); + $processingScript = explode('/', $requestUri); + $processingScript = $processingScript[count($processingScript) - 1]; + if (count($_COOKIE) > 0) { - $requestUri = $request->getScriptName(); - $processingScript = explode('/', $requestUri); - $processingScript = $processingScript[count($processingScript) - 1]; if ($processingScript === 'index.php' // index.php routes are handled in the middleware || $processingScript === 'cron.php' // and cron.php does not need any authentication at all @@ -573,7 +574,12 @@ private static function performSameSiteCookieProtection(IConfig $config): void { exit(); } } - } elseif (!isset($_COOKIE['nc_sameSiteCookielax']) || !isset($_COOKIE['nc_sameSiteCookiestrict'])) { + } else { + // Session not started for status.php, skip setting SS cookies + if ($processingScript === 'status.php') { + return; + } + // set nc_sameSiteCookielax and nc_sameSiteCookiestrict self::sendSameSiteCookies(); } }