Fixed x-forwarded-host where multiple hosts are specified.
Ylian Saint-Hilaire committed
Feb 16, 2022 at 13:00 UTC
f791515546298883d1ddbf08b22532bbb97d0723
2 files changed
+2
-3
meshcentral.js
+1
-2
@@ -1623,8 +1623,7 @@ function CreateMeshCentralServer(config, args) {
1623
}
1624
1625
// Setup and start the legacy swarm server
1626
- if ((obj.certificates.swarmserver != null) && (obj.args.swarmport !== 0)) {
1627
- if (obj.args.swarmport == null) { obj.args.swarmport = 8080; }
1626
+ if ((obj.certificates.swarmserver != null) && (obj.args.swarmport != null) && (obj.args.swarmport !== 0)) {
1627
obj.swarmserver = require('./swarmserver.js').CreateSwarmServer(obj, obj.db, obj.args, obj.certificates);
1628
}
1629
webserver.js
+1
-1
@@ -5716,7 +5716,7 @@ module.exports.CreateWebServer = function (parent, db, args, certificates, doneF
5716
if (clientIpSplit.length == 2) { req.clientIp = clientIpSplit[0]; }
5717
5718
// Get server host
5719
- if (req.headers['x-forwarded-host']) { xforwardedhost = req.headers['x-forwarded-host']; }
5719
+ if (req.headers['x-forwarded-host']) { xforwardedhost = req.headers['x-forwarded-host'].split(',')[0]; } // If multiple hosts are specified with a comma, take the first one.
5720
} else {
5721
req.clientIp = ipex;
5722
}