diff --git a/lib/middlewares/populateDeviceId.js b/lib/middlewares/populateDeviceId.js index 4c8913ae..dd2fd9e2 100644 --- a/lib/middlewares/populateDeviceId.js +++ b/lib/middlewares/populateDeviceId.js @@ -4,6 +4,7 @@ const crypto = require('crypto') const logger = require('../logger') function sha256 (buf) { + if (!buf) return null const hash = crypto.createHash('sha256') hash.update(buf) @@ -12,9 +13,10 @@ function sha256 (buf) { const populateDeviceId = function (req, res, next) { const deviceId = _.isFunction(req.connection.getPeerCertificate) - ? sha256(req.connection.getPeerCertificate().raw) + ? sha256(req.connection.getPeerCertificate()?.raw) : null + if (!deviceId) return res.status(500).json({ error: 'Unable to find certificate' }) req.deviceId = deviceId req.deviceTime = req.get('date')