From 40174dcb00e23cd5b8f3846a296dbd32b4e03ba0 Mon Sep 17 00:00:00 2001 From: rumblefrog Date: Wed, 15 Dec 2021 03:09:28 -0500 Subject: [PATCH 1/2] fix - remove signed prefix Remove signed prefix to be compatible with fastify session --- index.js | 59 +++++++++++++++++++++++++++++++++++++------------------- 1 file changed, 39 insertions(+), 20 deletions(-) diff --git a/index.js b/index.js index d7efeab9..afbb4f8b 100644 --- a/index.js +++ b/index.js @@ -239,6 +239,8 @@ function session(options) { touched = true } + console.log('setting session id', req.sessionID); + // set cookie setcookie(res, name, req.sessionID, secrets[0], req.session.cookie.data); }); @@ -538,16 +540,22 @@ function getcookie(req, name, secrets) { raw = cookies[name]; if (raw) { - if (raw.substr(0, 2) === 's:') { - val = unsigncookie(raw.slice(2), secrets); + val = unsigncookie(raw, secrets); - if (val === false) { - debug('cookie signature invalid'); - val = undefined; - } - } else { - debug('cookie unsigned') + if (val === false) { + debug('cookie signature invalid'); + val = undefined; } + // if (raw.substr(0, 2) === 's:') { + // val = unsigncookie(raw.slice(2), secrets); + + // if (val === false) { + // debug('cookie signature invalid'); + // val = undefined; + // } + // } else { + // debug('cookie unsigned') + // } } } @@ -565,20 +573,31 @@ function getcookie(req, name, secrets) { raw = req.cookies[name]; if (raw) { - if (raw.substr(0, 2) === 's:') { - val = unsigncookie(raw.slice(2), secrets); + val = unsigncookie(raw, secrets); - if (val) { - deprecate('cookie should be available in req.headers.cookie'); - } + if (val) { + deprecate('cookie should be available in req.headers.cookie'); + } - if (val === false) { - debug('cookie signature invalid'); - val = undefined; - } - } else { - debug('cookie unsigned') + if (val === false) { + debug('cookie signature invalid'); + val = undefined; } + + // if (raw.substr(0, 2) === 's:') { + // val = unsigncookie(raw.slice(2), secrets); + + // if (val) { + // deprecate('cookie should be available in req.headers.cookie'); + // } + + // if (val === false) { + // debug('cookie signature invalid'); + // val = undefined; + // } + // } else { + // debug('cookie unsigned') + // } } } @@ -653,7 +672,7 @@ function issecure(req, trustProxy) { */ function setcookie(res, name, val, secret, options) { - var signed = 's:' + signature.sign(val, secret); + var signed = signature.sign(val, secret); var data = cookie.serialize(name, signed, options); debug('set-cookie %s', data); From b09c5405d163b35b8245649eaee8553f359ab322 Mon Sep 17 00:00:00 2001 From: rumblefrog Date: Wed, 15 Dec 2021 03:10:11 -0500 Subject: [PATCH 2/2] chore - cleanup --- index.js | 2 -- 1 file changed, 2 deletions(-) diff --git a/index.js b/index.js index afbb4f8b..ff6c6d3e 100644 --- a/index.js +++ b/index.js @@ -239,8 +239,6 @@ function session(options) { touched = true } - console.log('setting session id', req.sessionID); - // set cookie setcookie(res, name, req.sessionID, secrets[0], req.session.cookie.data); });