diff options
| author | syuilo <4439005+syuilo@users.noreply.github.com> | 2024-08-17 09:30:03 +0900 |
|---|---|---|
| committer | dakkar <dakkar@thenautilus.net> | 2024-08-17 17:54:04 +0100 |
| commit | 76bbc10aa1305ce88c61783a6ac8aec4371eaa2b (patch) | |
| tree | 9f53a34c8bba2d02d3f22c62e228a91a68def375 /packages/backend/src/server/api | |
| parent | Limit number of rate limit requests (diff) | |
| download | sharkey-76bbc10aa1305ce88c61783a6ac8aec4371eaa2b.tar.gz sharkey-76bbc10aa1305ce88c61783a6ac8aec4371eaa2b.tar.bz2 sharkey-76bbc10aa1305ce88c61783a6ac8aec4371eaa2b.zip | |
fix(backend): 無制限にストリーミングのチャンネルに接続できる問題を修正
Diffstat (limited to 'packages/backend/src/server/api')
| -rw-r--r-- | packages/backend/src/server/api/stream/Connection.ts | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/packages/backend/src/server/api/stream/Connection.ts b/packages/backend/src/server/api/stream/Connection.ts index 0a7828d163..e8cd557c1c 100644 --- a/packages/backend/src/server/api/stream/Connection.ts +++ b/packages/backend/src/server/api/stream/Connection.ts @@ -20,6 +20,8 @@ import type Channel from './channel.js'; import { LoggerService } from '@/core/LoggerService.js'; import type Logger from '@/logger.js'; +const MAX_CHANNELS_PER_CONNECTION = 32; + /** * Main stream connection */ @@ -283,6 +285,10 @@ export default class Connection { */ @bindThis public connectChannel(id: string, params: any, channel: string, pong = false) { + if (this.channels.length >= MAX_CHANNELS_PER_CONNECTION) { + return; + } + const channelService = this.channelsService.getChannelService(channel); if (channelService.requireCredential && this.user == null) { |