From aece96f53909c3945b66b1f2f726b07b5fb6489f Mon Sep 17 00:00:00 2001
From: David Mehren
Date: Tue, 4 May 2021 11:51:06 +0200
Subject: Automatically enable protocolUseSSL when useSSL is set

 This makes the behavior consistent with the docs and
 saves the user from having to both set
 `useSSL` and `protocolUseSSL`.

Signed-off-by: David Mehren <git@herrmehren.de>
---
 lib/config/index.js | 15 +++++++++++----
 1 file changed, 11 insertions(+), 4 deletions(-)

(limited to 'lib/config')

diff --git a/lib/config/index.js b/lib/config/index.js
index 48e61b6c..bdbdfea9 100644
--- a/lib/config/index.js
+++ b/lib/config/index.js
@@ -1,4 +1,3 @@
-
 'use strict'
 
 const crypto = require('crypto')
@@ -31,7 +30,7 @@ const packageConfig = {
 }
 
 const configFilePath = path.resolve(appRootPath, process.env.CMD_CONFIG_FILE ||
-'config.json')
+  'config.json')
 const fileConfig = fs.existsSync(configFilePath) ? require(configFilePath)[env] : undefined
 
 let config = require('./default')
@@ -88,6 +87,14 @@ config.isStandardHTTPPort = (function isStandardHTTPPort () {
   return !config.useSSL && config.port === 80
 })()
 
+// Use HTTPS protocol if the internal TLS server is enabled
+if (config.useSSL === true) {
+  if (config.protocolUseSSL === false) {
+    logger.warn('Overriding protocolUseSSL to \'true\' as useSSL is enabled.')
+  }
+  config.protocolUseSSL = true
+}
+
 // cache serverURL
 config.serverURL = (function getserverurl () {
   let url = ''
@@ -147,8 +154,8 @@ for (let i = keys.length; i--;) {
   // and the config with uppercase is not set
   // we set the new config using the old key.
   if (uppercase.test(keys[i]) &&
-  config[lowercaseKey] !== undefined &&
-  fileConfig[keys[i]] === undefined) {
+    config[lowercaseKey] !== undefined &&
+    fileConfig[keys[i]] === undefined) {
     logger.warn('config.json contains deprecated lowercase setting for ' + keys[i] + '. Please change your config.json file to replace ' + lowercaseKey + ' with ' + keys[i])
     config[keys[i]] = config[lowercaseKey]
   }
-- 
cgit v1.2.3