mirror of
https://github.com/bitinflow/expose.git
synced 2026-03-13 13:35:54 +00:00
Allow specifying maximum connection counts per user
This commit is contained in:
@@ -6,6 +6,7 @@ use App\Contracts\ConnectionManager as ConnectionManagerContract;
|
||||
use App\Contracts\SubdomainGenerator;
|
||||
use App\Http\QueryParameters;
|
||||
use App\Server\Exceptions\NoFreePortAvailable;
|
||||
use Illuminate\Support\Collection;
|
||||
use Ratchet\ConnectionInterface;
|
||||
use React\EventLoop\LoopInterface;
|
||||
use React\Socket\Server;
|
||||
@@ -157,6 +158,20 @@ class ConnectionManager implements ConnectionManagerContract
|
||||
});
|
||||
}
|
||||
|
||||
public function findControlConnectionsForIp(string $ip): array
|
||||
{
|
||||
return collect($this->connections)->filter(function (ControlConnection $connection) use ($ip) {
|
||||
return $connection->socket->remoteAddress == $ip;
|
||||
})->toArray();
|
||||
}
|
||||
|
||||
public function findControlConnectionsForAuthToken(string $token): array
|
||||
{
|
||||
return collect($this->connections)->filter(function (ControlConnection $connection) use ($token) {
|
||||
return $connection->authToken === $token;
|
||||
})->toArray();
|
||||
}
|
||||
|
||||
public function getConnections(): array
|
||||
{
|
||||
return $this->connections;
|
||||
|
||||
Reference in New Issue
Block a user