summary refs log tree commit diff
path: root/gateway/src/opcodes/instanceOf.ts
diff options
context:
space:
mode:
authorFlam3rboy <34555296+Flam3rboy@users.noreply.github.com>2021-08-12 20:18:05 +0200
committerFlam3rboy <34555296+Flam3rboy@users.noreply.github.com>2021-08-12 20:18:05 +0200
commitfa31e7f8db61efe085f7d8a317e6a8640ebb3f46 (patch)
tree5d12bfa42b9ed09e67935c1e6a5063babe33eeb8 /gateway/src/opcodes/instanceOf.ts
parentMerge branch 'master' into gateway (diff)
downloadserver-fa31e7f8db61efe085f7d8a317e6a8640ebb3f46.tar.xz
:sparkles: gateway
Diffstat (limited to 'gateway/src/opcodes/instanceOf.ts')
-rw-r--r--gateway/src/opcodes/instanceOf.ts18
1 files changed, 18 insertions, 0 deletions
diff --git a/gateway/src/opcodes/instanceOf.ts b/gateway/src/opcodes/instanceOf.ts
new file mode 100644

index 00000000..c4ee5ee6 --- /dev/null +++ b/gateway/src/opcodes/instanceOf.ts
@@ -0,0 +1,18 @@ +import { instanceOf } from "lambert-server"; +import { CLOSECODES } from "../util/Constants"; +import WebSocket from "../util/WebSocket"; + +export function check(this: WebSocket, schema: any, data: any) { + try { + const error = instanceOf(schema, data, { path: "body" }); + if (error !== true) { + throw error; + } + return true; + } catch (error) { + console.error(error); + // invalid payload + this.close(CLOSECODES.Decode_error); + throw error; + } +}