Fixed agent invite codes to make them unique per domain.
Ylian Saint-Hilaire committed
Apr 30, 2020 at 18:52 UTC
3b11d528c3149e2d422b723c2fda72656b49ec84
3 files changed
+3
-3
meshuser.js
+1
-1
@@ -2457,7 +2457,7 @@ module.exports.CreateMeshUser = function (parent, db, ws, req, args, domain, use
2457
var dup = null;
2458
for (var i in command.invite.codes) {
2459
for (var j in parent.meshes) {
2460
- if ((j != command.meshid) && (parent.meshes[j].invite != null) && (parent.meshes[j].invite.codes.indexOf(command.invite.codes[i]) >= 0)) { dup = command.invite.codes[i]; break; }
2460
+ if ((j != command.meshid) && (parent.meshes[j].domain == domain.id) && (parent.meshes[j].invite != null) && (parent.meshes[j].invite.codes.indexOf(command.invite.codes[i]) >= 0)) { dup = command.invite.codes[i]; break; }
2461
}
2462
}
2463
if (dup != null) {
translate/translate.json
+1
-1
@@ -29886,4 +29886,4 @@
29886
]
29887
}
29888
]
29889
-}
29889
+}
\ No newline at end of file
webserver.js
+1
-1
@@ -1481,7 +1481,7 @@ module.exports.CreateWebServer = function (parent, db, args, certificates) {
1481
1482
// Each for a device group that has this invite code.
1483
for (var i in obj.meshes) {
1484
- if ((obj.meshes[i].invite != null) && (obj.meshes[i].invite.codes.indexOf(req.body.inviteCode) >= 0)) {
1484
+ if ((obj.meshes[i].domain == domain.id) && (obj.meshes[i].invite != null) && (obj.meshes[i].invite.codes.indexOf(req.body.inviteCode) >= 0)) {
1485
// Send invitation link, valid for 1 minute.
1486
res.redirect(domain.url + 'agentinvite?c=' + parent.encodeCookie({ a: 4, mid: i, f: obj.meshes[i].invite.flags, expire: 1 }, parent.invitationLinkEncryptionKey) + (req.query.key ? ('&key=' + req.query.key) : ''));
1487
return;