diff --git a/src/calibre/gui2/actions/device.py b/src/calibre/gui2/actions/device.py index 1fc26ca647..656fc5be79 100644 --- a/src/calibre/gui2/actions/device.py +++ b/src/calibre/gui2/actions/device.py @@ -16,15 +16,9 @@ from calibre.utils.smtp import config as email_config def local_url_for_content_server(): - def is_ipv6_addr(addr): - import socket - try: - socket.inet_pton(socket.AF_INET6, addr) - return True - except OSError: - return False - from calibre.srv.opts import server_config + from calibre.utils.network import is_ipv6_addr + opts = server_config() interface = opts.listen_on or '0.0.0.0' diff --git a/src/calibre/gui2/preferences/server.py b/src/calibre/gui2/preferences/server.py index 98a3b783d3..65aa700d55 100644 --- a/src/calibre/gui2/preferences/server.py +++ b/src/calibre/gui2/preferences/server.py @@ -1299,13 +1299,7 @@ class ConfigWidget(ConfigWidgetBase): self.stopping_msg.accept() def test_server(self): - def is_ipv6_addr(addr): - import socket - try: - socket.inet_pton(socket.AF_INET6, addr) - return True - except OSError: - return False + from calibre.utils.network import is_ipv6_addr prefix = self.advanced_tab.get('url_prefix') or '' protocol = 'https' if self.advanced_tab.has_ssl else 'http' diff --git a/src/calibre/srv/loop.py b/src/calibre/srv/loop.py index 4fc4f68738..beb02b8bdf 100644 --- a/src/calibre/srv/loop.py +++ b/src/calibre/srv/loop.py @@ -508,13 +508,7 @@ class ServerLoop: self.setup_socket() def serve(self): - def is_ipv6_addr(addr): - import socket - try: - socket.inet_pton(socket.AF_INET6, addr) - return True - except OSError: - return False + from calibre.utils.network import is_ipv6_addr self.connection_map = {} if not self.socket_was_preactivated: diff --git a/src/calibre/utils/network.py b/src/calibre/utils/network.py index 410206df81..ca469f9c89 100644 --- a/src/calibre/utils/network.py +++ b/src/calibre/utils/network.py @@ -108,3 +108,11 @@ def internet_connected(): DummyNetworkStatus() return internet_connected.checker() + +def is_ipv6_addr(addr): + import socket + try: + socket.inet_pton(socket.AF_INET6, addr) + return True + except OSError: + return False