Improved MeshCentral Router.

Ylian Saint-Hilaire committed Mar 21, 2020 at 00:25 UTC 47c520b5b36c45cd1b92141d4ac9c429649024d2
3 files changed +8 -8
agents/MeshCentralRouter.exe
Binary files a/agents/MeshCentralRouter.exe and b/agents/MeshCentralRouter.exe differ
meshuser.js
+7 -7
@@ -1271,7 +1271,7 @@ module.exports.CreateMeshUser = function (parent, db, ws, req, args, domain, use
1271 if (mesh.links[deluser._id] != null) { delete mesh.links[deluser._id]; parent.db.Set(common.escapeLinksFieldName(mesh)); }
1272 // Notify mesh change
1273 change = 'Removed user ' + deluser.name + ' from group ' + mesh.name;
1274 - var event = { etype: 'mesh', userid: user._id, username: user.name, meshid: mesh._id, name: mesh.name, mtype: mesh.mtype, desc: mesh.desc, action: 'meshchange', links: mesh.links, msg: change, domain: domain.id };
1274 + var event = { etype: 'mesh', userid: user._id, username: user.name, meshid: mesh._id, name: mesh.name, mtype: mesh.mtype, desc: mesh.desc, action: 'meshchange', links: mesh.links, msg: change, domain: domain.id, invite: mesh.invite };
1275 if (db.changeStream) { event.noact = 1; } // If DB change stream is active, don't use this event to change the mesh. Another event will come.
1276 parent.parent.DispatchEvent(['*', mesh._id, deluser._id, user._id], obj, event);
1277 }
@@ -1667,7 +1667,7 @@ module.exports.CreateMeshUser = function (parent, db, ws, req, args, domain, use
1667 db.Set(common.escapeLinksFieldName(xmesh));
1668
1669 // Notify mesh change
1670 - var event = { etype: 'mesh', userid: user._id, username: user.name, meshid: xmesh._id, name: xmesh.name, mtype: xmesh.mtype, desc: xmesh.desc, action: 'meshchange', links: xmesh.links, msg: 'Added group ' + ugrp.name + ' to mesh ' + xmesh.name, domain: domain.id };
1670 + var event = { etype: 'mesh', userid: user._id, username: user.name, meshid: xmesh._id, name: xmesh.name, mtype: xmesh.mtype, desc: xmesh.desc, action: 'meshchange', links: xmesh.links, msg: 'Added group ' + ugrp.name + ' to mesh ' + xmesh.name, domain: domain.id, invite: mesh.invite };
1671 if (db.changeStream) { event.noact = 1; } // If DB change stream is active, don't use this event to change the mesh. Another event will come.
1672 //parent.parent.DispatchEvent(['*', xmesh._id, user._id], obj, event);
1673 pendingDispatchEvents.push([['*', xmesh._id, user._id], obj, event]);
@@ -1728,7 +1728,7 @@ module.exports.CreateMeshUser = function (parent, db, ws, req, args, domain, use
1728 db.Set(common.escapeLinksFieldName(xmesh));
1729
1730 // Notify mesh change
1731 - var event = { etype: 'mesh', userid: user._id, username: user.name, meshid: xmesh._id, name: xmesh.name, mtype: xmesh.mtype, desc: xmesh.desc, action: 'meshchange', links: xmesh.links, msg: 'Removed group ' + group.name + ' from mesh ' + xmesh.name, domain: domain.id };
1731 + var event = { etype: 'mesh', userid: user._id, username: user.name, meshid: xmesh._id, name: xmesh.name, mtype: xmesh.mtype, desc: xmesh.desc, action: 'meshchange', links: xmesh.links, msg: 'Removed group ' + group.name + ' from mesh ' + xmesh.name, domain: domain.id, invite: mesh.invite };
1732 if (db.changeStream) { event.noact = 1; } // If DB change stream is active, don't use this event to change the mesh. Another event will come.
1733 parent.parent.DispatchEvent(['*', xmesh._id, user._id], obj, event);
1734 }
@@ -2378,7 +2378,7 @@ module.exports.CreateMeshUser = function (parent, db, ws, req, args, domain, use
2378 db.Set(common.escapeLinksFieldName(mesh));
2379
2380 // Notify mesh change
2381 - var event = { etype: 'mesh', username: newuser.name, userid: user._id, meshid: mesh._id, name: mesh.name, mtype: mesh.mtype, desc: mesh.desc, action: 'meshchange', links: mesh.links, msg: 'Added user ' + newuser.name + ' to mesh ' + mesh.name, domain: domain.id };
2381 + var event = { etype: 'mesh', username: newuser.name, userid: user._id, meshid: mesh._id, name: mesh.name, mtype: mesh.mtype, desc: mesh.desc, action: 'meshchange', links: mesh.links, msg: 'Added user ' + newuser.name + ' to mesh ' + mesh.name, domain: domain.id, invite: mesh.invite };
2382 if (db.changeStream) { event.noact = 1; } // If DB change stream is active, don't use this event to change the mesh. Another event will come.
2383 parent.parent.DispatchEvent(['*', mesh._id, user._id, newuserid], obj, event);
2384 removedCount++;
@@ -2458,9 +2458,9 @@ module.exports.CreateMeshUser = function (parent, db, ws, req, args, domain, use
2458 // Notify mesh change
2459 var event;
2460 if (deluser != null) {
2461 - event = { etype: 'mesh', username: user.name, userid: deluser.name, meshid: mesh._id, name: mesh.name, mtype: mesh.mtype, desc: mesh.desc, action: 'meshchange', links: mesh.links, msg: 'Removed user ' + deluser.name + ' from group ' + mesh.name, domain: domain.id };
2461 + event = { etype: 'mesh', username: user.name, userid: deluser.name, meshid: mesh._id, name: mesh.name, mtype: mesh.mtype, desc: mesh.desc, action: 'meshchange', links: mesh.links, msg: 'Removed user ' + deluser.name + ' from group ' + mesh.name, domain: domain.id, invite: mesh.invite };
2462 } else {
2463 - event = { etype: 'mesh', username: user.name, userid: (deluserid.split('/')[2]), meshid: mesh._id, name: mesh.name, mtype: mesh.mtype, desc: mesh.desc, action: 'meshchange', links: mesh.links, msg: 'Removed user ' + (deluserid.split('/')[2]) + ' from group ' + mesh.name, domain: domain.id };
2463 + event = { etype: 'mesh', username: user.name, userid: (deluserid.split('/')[2]), meshid: mesh._id, name: mesh.name, mtype: mesh.mtype, desc: mesh.desc, action: 'meshchange', links: mesh.links, msg: 'Removed user ' + (deluserid.split('/')[2]) + ' from group ' + mesh.name, domain: domain.id, invite: mesh.invite };
2464 }
2465 parent.parent.DispatchEvent(['*', mesh._id, user._id, command.userid], obj, event);
2466 if (command.responseid != null) { try { ws.send(JSON.stringify({ action: 'removemeshuser', responseid: command.responseid, result: 'ok' })); } catch (ex) { } }
@@ -2501,7 +2501,7 @@ module.exports.CreateMeshUser = function (parent, db, ws, req, args, domain, use
2501 db.Set(common.escapeLinksFieldName(mesh));
2502 var amtpolicy2 = Object.assign({}, amtpolicy); // Shallow clone
2503 delete amtpolicy2.password;
2504 - var event = { etype: 'mesh', userid: user._id, username: user.name, meshid: mesh._id, amt: amtpolicy2, action: 'meshchange', links: mesh.links, msg: change, domain: domain.id };
2504 + var event = { etype: 'mesh', userid: user._id, username: user.name, meshid: mesh._id, amt: amtpolicy2, action: 'meshchange', links: mesh.links, msg: change, domain: domain.id, invite: mesh.invite };
2505 if (db.changeStream) { event.noact = 1; } // If DB change stream is active, don't use this event to change the mesh. Another event will come.
2506 parent.parent.DispatchEvent(['*', mesh._id, user._id], obj, event);
2507
package.json
+1 -1
@@ -1,6 +1,6 @@
1 {
2 "name": "meshcentral",
3 - "version": "0.5.0-n",
3 + "version": "0.5.0-p",
4 "keywords": [
5 "Remote Management",
6 "Intel AMT",