From df696d362a135d483d72f05697d41322bd974ad0 Mon Sep 17 00:00:00 2001 From: Madeline <46743919+MaddyUnderStars@users.noreply.github.com> Date: Wed, 5 Apr 2023 20:47:47 +1000 Subject: Close if already identified --- src/gateway/opcodes/Identify.ts | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/gateway/opcodes/Identify.ts b/src/gateway/opcodes/Identify.ts index 2e661a14..5816c308 100644 --- a/src/gateway/opcodes/Identify.ts +++ b/src/gateway/opcodes/Identify.ts @@ -59,7 +59,6 @@ import { check } from "./instanceOf"; // TODO: user sharding // TODO: check privileged intents, if defined in the config -// TODO: check if already identified const getUserFromToken = async (token: string): Promise => { try { @@ -73,6 +72,11 @@ const getUserFromToken = async (token: string): Promise => { }; export async function onIdentify(this: WebSocket, data: Payload) { + if (this.user_id) { + // we've already identified + return this.close(CLOSECODES.Already_authenticated); + } + clearTimeout(this.readyTimeout); // Check payload matches schema @@ -106,7 +110,7 @@ export async function onIdentify(this: WebSocket, data: Payload) { this.shard_id < 0 || this.shard_count <= 0 ) { - // TODO: why do we even care about this? + // TODO: why do we even care about this right now? console.log( `[Gateway] Invalid sharding from ${user_id}: ${identify.shard}`, ); -- cgit 1.4.1