network: follow-up ProxySettings. make sure probe_tor cleans-up.
follow-up 2aa427b4bf
This commit is contained in:
@@ -258,14 +258,16 @@ class ProxySettings:
|
|||||||
@classmethod
|
@classmethod
|
||||||
def probe_tor(cls, on_finished: Callable[[str | None, int | None], None]):
|
def probe_tor(cls, on_finished: Callable[[str | None, int | None], None]):
|
||||||
async def detect_task(finished: Callable[[str | None, int | None], None]):
|
async def detect_task(finished: Callable[[str | None, int | None], None]):
|
||||||
net_addr = await detect_tor_socks_proxy()
|
try:
|
||||||
if net_addr is None:
|
net_addr = await detect_tor_socks_proxy()
|
||||||
finished('', -1)
|
if net_addr is None:
|
||||||
else:
|
finished('', -1)
|
||||||
host = net_addr[0]
|
else:
|
||||||
port = net_addr[1]
|
host = net_addr[0]
|
||||||
finished(host, port)
|
port = net_addr[1]
|
||||||
cls.probe_fut = None
|
finished(host, port)
|
||||||
|
finally:
|
||||||
|
cls.probe_fut = None
|
||||||
|
|
||||||
if cls.probe_fut: # one probe at a time
|
if cls.probe_fut: # one probe at a time
|
||||||
return
|
return
|
||||||
@@ -397,7 +399,7 @@ class Network(Logger, NetworkRetryManager[ServerAddr]):
|
|||||||
self._allowed_protocols = {PREFERRED_NETWORK_PROTOCOL}
|
self._allowed_protocols = {PREFERRED_NETWORK_PROTOCOL}
|
||||||
|
|
||||||
self.proxy = ProxySettings()
|
self.proxy = ProxySettings()
|
||||||
self.is_proxy_tor = None
|
self.is_proxy_tor = None # type: Optional[bool] # tri-state. None means unknown.
|
||||||
self._init_parameters_from_config()
|
self._init_parameters_from_config()
|
||||||
|
|
||||||
self.taskgroup = None
|
self.taskgroup = None
|
||||||
@@ -441,7 +443,6 @@ class Network(Logger, NetworkRetryManager[ServerAddr]):
|
|||||||
self.fee_estimates = FeeTimeEstimates()
|
self.fee_estimates = FeeTimeEstimates()
|
||||||
self.last_time_fee_estimates_requested = 0 # zero ensures immediate fees
|
self.last_time_fee_estimates_requested = 0 # zero ensures immediate fees
|
||||||
|
|
||||||
|
|
||||||
def has_internet_connection(self) -> bool:
|
def has_internet_connection(self) -> bool:
|
||||||
"""Our guess whether the device has Internet-connectivity."""
|
"""Our guess whether the device has Internet-connectivity."""
|
||||||
return self._has_ever_managed_to_connect_to_server
|
return self._has_ever_managed_to_connect_to_server
|
||||||
|
|||||||
Reference in New Issue
Block a user