aboutsummaryrefslogtreecommitdiffstats
path: root/build
diff options
context:
space:
mode:
authorRblSb <msrblsb@gmail.com>2020-07-18 14:42:13 +0300
committerRblSb <msrblsb@gmail.com>2020-07-18 14:42:13 +0300
commit8636d8156b591a9d1ebcc95a188491e88561aca6 (patch)
treec6f4742b885c541a62ed7617fddd311728e30ea0 /build
parent2f8739d53ac6c90424756eb463d8d82bb8d4bfeb (diff)
Improve data validation
Diffstat (limited to 'build')
-rw-r--r--build/server.js20
1 files changed, 18 insertions, 2 deletions
diff --git a/build/server.js b/build/server.js
index aff7631..81d54d2 100644
--- a/build/server.js
+++ b/build/server.js
@@ -3945,7 +3945,7 @@ server_Main.prototype = {
this.onMessage(client,{ type : "Connected"},true);
ws.on("message",function(data) {
var obj = _gthis.wsEventParser.fromJson(data);
- if(_gthis.wsEventParser.errors.length > 0) {
+ if(_gthis.wsEventParser.errors.length > 0 || _gthis.noTypeObj(obj)) {
var errors = "" + ("Wrong request for type \"" + obj.type + "\":") + "\n" + json2object_ErrorUtils.convertErrorArray(_gthis.wsEventParser.errors);
haxe_Log.trace(errors,{ fileName : "src/server/Main.hx", lineNumber : 301, className : "server.Main", methodName : "onConnect"});
_gthis.serverMessage(client,errors);
@@ -3957,6 +3957,22 @@ server_Main.prototype = {
_gthis.onMessage(client,{ type : "Disconnected"},true);
});
}
+ ,noTypeObj: function(data) {
+ if(data.type == "GetTime") {
+ return false;
+ }
+ if(data.type == "TogglePlaylistLock") {
+ return false;
+ }
+ if(data.type == "UpdatePlaylist") {
+ return false;
+ }
+ if(data.type == "Logout") {
+ return false;
+ }
+ var t = data.type;
+ return ((Reflect.field(data,t.charAt(0).toLowerCase() + HxOverrides.substr(t,1,null))) === null);
+ }
,onMessage: function(client,data,internal) {
var _gthis = this;
this.logger.log({ clientName : client.name, clientGroup : client.group, event : data, time : new Date().getTime()});
@@ -4028,7 +4044,7 @@ server_Main.prototype = {
if(!internal) {
return;
}
- haxe_Log.trace("Client " + client.name + " disconnected",{ fileName : "src/server/Main.hx", lineNumber : 346, className : "server.Main", methodName : "onMessage"});
+ haxe_Log.trace("Client " + client.name + " disconnected",{ fileName : "src/server/Main.hx", lineNumber : 356, className : "server.Main", methodName : "onMessage"});
server_Utils.sortedPush(this.freeIds,client.id);
HxOverrides.remove(this.clients,client);
this.sendClientList();
send patches to the email below
yukais@pinapelz.com
include the subject [PATCH repo_name]
pinapelz.com
homepage