summaryrefslogtreecommitdiff
path: root/smoketest/scripts/cli/test_service_https.py
diff options
context:
space:
mode:
authorDaniil Baturin <daniil@vyos.io>2025-04-30 12:23:43 +0100
committerGitHub <noreply@github.com>2025-04-30 12:23:43 +0100
commitcec3c1b68b743ab87d610cb5cb9604609e8727d9 (patch)
tree5e50eb890ea234429041e54ea66163125bdca768 /smoketest/scripts/cli/test_service_https.py
parent93d9679656a80d3d58ce7649ec06a83dd559a5b6 (diff)
parent4fb731756e9cc7c5b2589c05f738d24b8e50c18d (diff)
downloadvyos-1x-cec3c1b68b743ab87d610cb5cb9604609e8727d9.tar.gz
vyos-1x-cec3c1b68b743ab87d610cb5cb9604609e8727d9.zip
Merge pull request #4485 from jestabro/nginx-bind-requires-restart
https: T7393: set listen-address bind fails silently without restart
Diffstat (limited to 'smoketest/scripts/cli/test_service_https.py')
-rwxr-xr-xsmoketest/scripts/cli/test_service_https.py24
1 files changed, 24 insertions, 0 deletions
diff --git a/smoketest/scripts/cli/test_service_https.py b/smoketest/scripts/cli/test_service_https.py
index 04c4a2e51..b4fe35d81 100755
--- a/smoketest/scripts/cli/test_service_https.py
+++ b/smoketest/scripts/cli/test_service_https.py
@@ -16,6 +16,7 @@
import unittest
import json
+import psutil
from requests import request
from urllib3.exceptions import InsecureRequestWarning
@@ -113,6 +114,29 @@ class TestHTTPSService(VyOSUnitTestSHIM.TestCase):
# Check for stopped process
self.assertFalse(process_named_running(PROCESS_NAME))
+ def test_listen_address(self):
+ test_prefix = ['192.0.2.1/26', '2001:db8:1::ffff/64']
+ test_addr = [ i.split('/')[0] for i in test_prefix ]
+ for i, addr in enumerate(test_prefix):
+ self.cli_set(['interfaces', 'dummy', f'dum{i}', 'address', addr])
+
+ key = 'MySuperSecretVyOS'
+ self.cli_set(base_path + ['api', 'keys', 'id', 'key-01', 'key', key])
+ # commit base config first, for testing update of listen-address
+ self.cli_commit()
+
+ for addr in test_addr:
+ self.cli_set(base_path + ['listen-address', addr])
+ self.cli_commit()
+
+ res = set()
+ t = psutil.net_connections(kind="tcp")
+ for c in t:
+ if c.laddr.port == 443:
+ res.add(c.laddr.ip)
+
+ self.assertEqual(res, set(test_addr))
+
def test_certificate(self):
cert_name = 'test_https'
dh_name = 'dh-test'