diff --git a/plinth/action_utils.py b/plinth/action_utils.py index 353fb7423..c2f2e725d 100644 --- a/plinth/action_utils.py +++ b/plinth/action_utils.py @@ -20,6 +20,7 @@ Python action utility functions. import logging import os +import re import shutil import socket import subprocess @@ -351,7 +352,16 @@ def _check_port(port, kind='tcp', listen_address=None): def check_url(url, kind=None, env=None, check_certificate=True, extra_options=None, wrapper=None, expected_output=None): """Check whether a URL is accessible.""" - command = ['curl', '--location', '-f', '-w', '%{response_code}', url] + command = ['curl', '--location', '-f', '-w', '%{response_code}'] + + if kind == '6': + # extract zone index + match = re.match(r'(.*://)\[(.*)%(?P.*)\](.*)', url) + if match: + command = command + ['--interface', match.group('zone')] + url = '{0}[{1}]{2}'.format(*match.group(1, 2, 4)) + + command.append(url) if wrapper: command.insert(0, wrapper) diff --git a/plinth/modules/deluge/__init__.py b/plinth/modules/deluge/__init__.py index 08fda23f9..93e515b06 100644 --- a/plinth/modules/deluge/__init__.py +++ b/plinth/modules/deluge/__init__.py @@ -111,7 +111,6 @@ def diagnose(): results = [] results.append(action_utils.diagnose_port_listening(8112, 'tcp4')) - results.append(action_utils.diagnose_port_listening(8112, 'tcp6')) results.extend( action_utils.diagnose_url_on_all('https://{host}/deluge', check_certificate=False)) diff --git a/plinth/modules/diagnostics/__init__.py b/plinth/modules/diagnostics/__init__.py index 78246b4c5..dfc228729 100644 --- a/plinth/modules/diagnostics/__init__.py +++ b/plinth/modules/diagnostics/__init__.py @@ -67,7 +67,6 @@ def diagnose(): """Run diagnostics and return the results.""" results = [] results.append(action_utils.diagnose_port_listening(8000, 'tcp4')) - results.append(action_utils.diagnose_port_listening(8000, 'tcp6')) results.extend( action_utils.diagnose_url_on_all('http://{host}/plinth/', check_certificate=False)) diff --git a/plinth/modules/transmission/__init__.py b/plinth/modules/transmission/__init__.py index 1e43e832e..5dd37b104 100644 --- a/plinth/modules/transmission/__init__.py +++ b/plinth/modules/transmission/__init__.py @@ -122,7 +122,6 @@ def diagnose(): results = [] results.append(action_utils.diagnose_port_listening(9091, 'tcp4')) - results.append(action_utils.diagnose_port_listening(9091, 'tcp6')) results.extend( action_utils.diagnose_url_on_all('https://{host}/transmission', check_certificate=False))