Modifications for ip session cookie

This commit is contained in:
calzoneman 2016-08-10 22:10:02 -07:00
parent 74cb1b3efc
commit 0327b3de2e
2 changed files with 8 additions and 6 deletions

View file

@ -450,15 +450,15 @@ User.prototype.refreshAccount = function (cb) {
};
User.prototype.getFirstSeenTime = function getFirstSeenTime() {
if (this.registrationTime && this.socket.ipReputation && this.socket.ipReputation.first_seen) {
return Math.min(this.registrationTime.getTime(), this.socket.ipReputation.first_seen.getTime());
if (this.registrationTime && this.socket.ipSessionFirstSeen) {
return Math.min(this.registrationTime.getTime(), this.socket.ipSessionFirstSeen);
} else if (this.registrationTime) {
return this.registrationTime.getTime();
} else if (this.socket.ipReputation && this.socket.ipReputation.first_seen) {
return this.socket.ipReputation.first_seen.getTime();
} else if (this.socket.ipSessionFirstSeen) {
return this.socket.ipSessionFirstSeen;
} else {
Logger.errlog.log(`User "${this.getName()}" (IP: ${this.realip}) has neither ` +
"an IP reputation nor a registered account.");
"an IP sesion first seen time nor a registered account.");
return Date.now();
}
};

View file

@ -4,6 +4,7 @@ import crypto from 'crypto';
const SALT_PATH = path.resolve(__dirname, '..', '..', '..', 'state', 'ipsessionsalt.json');
const NO_EXPIRATION = new Date('Fri, 31 Dec 9999 23:59:59 GMT');
var SALT;
try {
SALT = require(SALT_PATH);
@ -67,7 +68,8 @@ export function ipSessionCookieMiddleware(req, res, next) {
if (!hasSession) {
res.cookie('ip-session', createIPSessionCookie(req.realIP, firstSeen), {
signed: true,
httpOnly: true
httpOnly: true,
expires: NO_EXPIRATION
});
}