From 61b114a999dab5826ef5815b8a4aed13434cbab2 Mon Sep 17 00:00:00 2001 From: Torsten Dittmann Date: Tue, 2 Mar 2021 11:23:15 +0100 Subject: [PATCH] force cancel on connection close --- app/realtime.php | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/app/realtime.php b/app/realtime.php index 503f1cae0..15b32c1bb 100644 --- a/app/realtime.php +++ b/app/realtime.php @@ -240,6 +240,7 @@ $server->on('open', function (Server $server, Request $request) use (&$connectio if (empty($project->getId())) { $server->push($connection, 'Missing or unknown project ID'); $server->close($connection); + return; } /* @@ -258,6 +259,7 @@ $server->on('open', function (Server $server, Request $request) use (&$connectio if ($abuse->check() && App::getEnv('_APP_OPTIONS_ABUSE', 'enabled') === 'enabled') { $server->push($connection, 'Too many requests'); $server->close($connection); + return; } /* @@ -271,6 +273,7 @@ $server->on('open', function (Server $server, Request $request) use (&$connectio if (!$originValidator->isValid($origin)) { $server->push($connection, $originValidator->getDescription()); $server->close($connection); + return; } Realtime::setUser($user); @@ -284,6 +287,7 @@ $server->on('open', function (Server $server, Request $request) use (&$connectio if (empty($channels)) { $server->push($connection, 'Missing channels'); $server->close($connection); + return; } Realtime::subscribe($project->getId(), $connection, $roles, $subscriptions, $connections, $channels);