Fixed SSPI session release bug.

Ylian Saint-Hilaire committed Mar 11, 2019 at 17:33 UTC 73fed8b37922fa3d9d1575bbfb60f662bfe10190
3 files changed +11 -13
meshuser.js
+9 -9
@@ -36,19 +36,19 @@ module.exports.CreateMeshUser = function (parent, db, ws, req, args, domain, use
36 if (obj.serverStatsTimer != null) { clearInterval(obj.serverStatsTimer); delete obj.serverStatsTimer; }
37 if (req.session && req.session.ws && req.session.ws == ws) { delete req.session.ws; }
38 if (parent.wssessions2[ws.sessionId]) { delete parent.wssessions2[ws.sessionId]; }
39 - if (parent.wssessions[ws.userid]) {
40 - var i = parent.wssessions[ws.userid].indexOf(ws);
39 + if (parent.wssessions[obj.user._id]) {
40 + var i = parent.wssessions[obj.user._id].indexOf(ws);
41 if (i >= 0) {
42 - parent.wssessions[ws.userid].splice(i, 1);
43 - var user = parent.users[ws.userid];
42 + parent.wssessions[obj.user._id].splice(i, 1);
43 + var user = parent.users[obj.user._id];
44 if (user) {
45 if (parent.parent.multiServer == null) {
46 - parent.parent.DispatchEvent(['*'], obj, { action: 'wssessioncount', username: user.name, count: parent.wssessions[ws.userid].length, nolog: 1, domain: domain.id });
46 + parent.parent.DispatchEvent(['*'], obj, { action: 'wssessioncount', username: obj.user.name, count: parent.wssessions[obj.user._id].length, nolog: 1, domain: domain.id });
47 } else {
48 parent.recountSessions(ws.sessionId); // Recount sessions
49 }
50 }
51 - if (parent.wssessions[ws.userid].length == 0) { delete parent.wssessions[ws.userid]; }
51 + if (parent.wssessions[obj.user._id].length == 0) { delete parent.wssessions[obj.user._id]; }
52 }
53 }
54
@@ -166,7 +166,7 @@ module.exports.CreateMeshUser = function (parent, db, ws, req, args, domain, use
166 }
167
168 // Associate this websocket session with the web session
169 - ws.userid = req.session.userid;
169 + ws.userid = user._id;
170 ws.domainid = domain.id;
171
172 // Create a new session id for this user.
@@ -1281,8 +1281,8 @@ module.exports.CreateMeshUser = function (parent, db, ws, req, args, domain, use
1281
1282 // Ask the RMCP scanning to scan a range of IP addresses
1283 if (parent.parent.amtScanner) {
1284 - if (parent.parent.amtScanner.performRangeScan(ws.userid, command.range) == false) {
1285 - parent.parent.DispatchEvent(['*', ws.userid], obj, { action: 'scanamtdevice', range: command.range, results: null, nolog: 1 });
1284 + if (parent.parent.amtScanner.performRangeScan(user._id, command.range) == false) {
1285 + parent.parent.DispatchEvent(['*', user._id], obj, { action: 'scanamtdevice', range: command.range, results: null, nolog: 1 });
1286 }
1287 }
1288 break;
package.json
+1 -1
@@ -1,6 +1,6 @@
1 {
2 "name": "meshcentral",
3 - "version": "0.3.0-h",
3 + "version": "0.3.0-i",
4 "keywords": [
5 "Remote Management",
6 "Intel AMT",
swarmserver.js
+1 -3
@@ -392,9 +392,7 @@ module.exports.CreateSwarmServer = function (parent, db, args, certificates) {
392 ptr += blen;
393 }
394 return info;
395 - } catch (e) {
396 - console.log(e);
397 - }
395 + } catch (e) { }
396 return null;
397 };
398