Skip to content

Commit

Permalink
Put in a mult-auth collision check (#1354)
Browse files Browse the repository at this point in the history
* Put in a mult-auth collision check

* Best to be safe on this in case another auth is present and for some way rare case it has the exact same digest. Can handle these manually if need be but should be extremely rare.

Applies to #1347

* Fix conditional positioning

* Add a few more stdout and stderr messages to monitor

Applies to #1354

Auto-merge
  • Loading branch information
Martii authored Apr 23, 2018
1 parent 6273552 commit be60abe
Showing 1 changed file with 23 additions and 9 deletions.
32 changes: 23 additions & 9 deletions libs/passportVerify.js
Original file line number Diff line number Diff line change
Expand Up @@ -99,19 +99,33 @@ exports.verify = function (aId, aStrategy, aUsername, aLoggedIn, aDone) {
pos = aUser.auths.indexOf(digestUnsecure);

if (pos > -1) {
aUser.auths[pos] = digest;
if (aUser.strategies[pos] === 'steam') {
aUser.auths[pos] = digest;

aUser.markModified('auths');
aUser.save(function (aErr, aUser) {
if (aErr) {
aDone(null, false, 'username recovery failed');
aUser.markModified('auths');
aUser.save(function (aErr, aUser) {
if (aErr) {
console.error('UNRECOVERED STEAM AUTH WITH ERROR WRITE',
aUser.name, digestUnsecure, '->', digest);

aDone(null, false, 'username recovery failed');
return;
}

console.log('RECOVERED STEAM AUTH',
aUser.name, digestUnsecure, '->', digest);

aDone(null, false, 'username recovered');
return;
}
console.log('RECOVERED STEAM AUTH', aUser.name, digestUnsecure, '->', digest);
});
} else {
console.warn('UNRECOVERED STEAM AUTH',
aUser.name, digestUnsecure, '->', digest,
'WARNING TYPE', aUser.strategies[pos]);

aDone(null, false, 'username recovered');
aDone(null, false, 'username multi-auth collision');
return;
});
}
} else {
aDone(null, false, 'username is taken');
return;
Expand Down

0 comments on commit be60abe

Please sign in to comment.