summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Estabrook <jestabro@sentrium.io>2019-11-14 13:33:39 -0600
committerGitHub <noreply@github.com>2019-11-14 13:33:39 -0600
commit7456967924cc771b00488618a6edbd52e6ed6b15 (patch)
treec638fa39018909db15e56d51188b1a4220321c02
parentc9c8cd50f4165c7f86e71a6723f0ebb3a2cbdaf5 (diff)
parent6b25ed2a44dde77f5cbfbf68fb4f5f661a34c1c0 (diff)
downloadvyos-1x-7456967924cc771b00488618a6edbd52e6ed6b15.tar.gz
vyos-1x-7456967924cc771b00488618a6edbd52e6ed6b15.zip
Merge pull request #164 from jestabro/T1443
[service https] T1443: add setting of HTTPS listen port
-rw-r--r--interface-definitions/https.xml12
-rwxr-xr-xsrc/conf_mode/https.py6
2 files changed, 17 insertions, 1 deletions
diff --git a/interface-definitions/https.xml b/interface-definitions/https.xml
index 403d4ecb0..d9874a1f9 100644
--- a/interface-definitions/https.xml
+++ b/interface-definitions/https.xml
@@ -31,6 +31,18 @@
</constraint>
</properties>
<children>
+ <leafNode name='listen-port'>
+ <properties>
+ <help>Port to listen for HTTPS requests; default 443</help>
+ <valueHelp>
+ <format>1-65535</format>
+ <description>Numeric IP port</description>
+ </valueHelp>
+ <constraint>
+ <validator name="numeric" argument="--range 1-65535"/>
+ </constraint>
+ </properties>
+ </leafNode>
<leafNode name="server-name">
<properties>
<help>Server names: exact, wildcard, regex, or '_' (any)</help>
diff --git a/src/conf_mode/https.py b/src/conf_mode/https.py
index d7fcb74de..fbd351e45 100755
--- a/src/conf_mode/https.py
+++ b/src/conf_mode/https.py
@@ -49,7 +49,7 @@ server {
listen 443 ssl;
listen [::]:443 ssl;
{% else %}
- listen {{ server.address }}:443 ssl;
+ listen {{ server.address }}:{{ server.port }} ssl;
{% endif %}
{% for name in server.name %}
@@ -107,7 +107,11 @@ def get_config():
if conf.exists('listen-address'):
for addr in conf.list_nodes('listen-address'):
server_block = {'address' : addr}
+ server_block['port'] = '443'
server_block['name'] = ['_']
+ if conf.exists('listen-address {0} listen-port'.format(addr)):
+ port = conf.return_value('listen-address {0} listen-port'.format(addr))
+ server_block['port'] = port
if conf.exists('listen-address {0} server-name'.format(addr)):
names = conf.return_values('listen-address {0} server-name'.format(addr))
server_block['name'] = names[:]