diff --git a/electrum/daemon.py b/electrum/daemon.py index becf9d441..2ebe408ce 100644 --- a/electrum/daemon.py +++ b/electrum/daemon.py @@ -357,8 +357,8 @@ class CommandsServer(AuthenticatedServer): class WatchTowerServer(AuthenticatedServer): - def __init__(self, network: 'Network', netaddress): - self.addr = netaddress + def __init__(self, network: 'Network', port:int): + self.port = port self.config = network.config self.network = network watchtower_user = self.config.WATCHTOWER_SERVER_USER or "" @@ -373,9 +373,9 @@ class WatchTowerServer(AuthenticatedServer): async def run(self): self.runner = web.AppRunner(self.app) await self.runner.setup() - site = web.TCPSite(self.runner, host=str(self.addr.host), port=self.addr.port) + site = web.TCPSite(self.runner, host='localhost', port=self.port) await site.start() - self.logger.info(f"now running and listening. addr={self.addr}") + self.logger.info(f"running and listening on port {self.port}") async def get_ctn(self, *args): return await self.lnwatcher.get_ctn(*args) @@ -453,8 +453,8 @@ class Daemon(Logger): assert not self.config.NETWORK_OFFLINE assert self.network # server-side watchtower - if watchtower_address := self.config.get_netaddress(self.config.cv.WATCHTOWER_SERVER_ADDRESS): - self.watchtower = WatchTowerServer(self.network, watchtower_address) + if watchtower_port := self.config.WATCHTOWER_SERVER_PORT: + self.watchtower = WatchTowerServer(self.network, watchtower_port) asyncio.run_coroutine_threadsafe(self.taskgroup.spawn(self.watchtower.run), self.asyncio_loop) self.network.start(jobs=[self.fx.run]) diff --git a/electrum/plugins/payserver/payserver.py b/electrum/plugins/payserver/payserver.py index b2d4c5e00..64b2f8d69 100644 --- a/electrum/plugins/payserver/payserver.py +++ b/electrum/plugins/payserver/payserver.py @@ -29,7 +29,6 @@ from collections import defaultdict from typing import TYPE_CHECKING, Optional from aiohttp import web -from aiorpcx import NetAddress from electrum import util from electrum.util import log_exceptions, ignore_exceptions @@ -80,8 +79,7 @@ class PayServer(Logger, EventListener): assert self.has_www_dir(), self.WWW_DIR self.config = config self.wallet = wallet - url = self.config.PAYSERVER_ADDRESS - self.addr = NetAddress.from_string(url) + self.port = self.config.PAYSERVER_PORT self.pending = defaultdict(asyncio.Event) self.register_callbacks() @@ -92,9 +90,7 @@ class PayServer(Logger, EventListener): @property def base_url(self): - payserver = self.config.PAYSERVER_ADDRESS - payserver = NetAddress.from_string(payserver) - return 'http://%s:%d'%(payserver.host, payserver.port) + return 'http://localhost:%d'%self.port @property def root(self): @@ -121,9 +117,9 @@ class PayServer(Logger, EventListener): app.add_routes([web.post('/api/create_invoice', self.create_request)]) runner = web.AppRunner(app) await runner.setup() - site = web.TCPSite(runner, host=str(self.addr.host), port=self.addr.port) + site = web.TCPSite(runner, host='localhost', port=self.port) await site.start() - self.logger.info(f"now running and listening. addr={self.addr}") + self.logger.info(f"running and listening on port {self.port}") async def create_request(self, request): params = await request.post() diff --git a/electrum/plugins/swapserver/server.py b/electrum/plugins/swapserver/server.py index 36654453f..e8852b8a4 100644 --- a/electrum/plugins/swapserver/server.py +++ b/electrum/plugins/swapserver/server.py @@ -3,7 +3,6 @@ import asyncio from collections import defaultdict from aiohttp import web -from aiorpcx import NetAddress from electrum.util import log_exceptions, ignore_exceptions from electrum.logging import Logger @@ -24,7 +23,7 @@ class SwapServer(Logger, EventListener): self.config = config self.wallet = wallet self.sm = self.wallet.lnworker.swap_manager - self.addr = NetAddress.from_string(self.config.SWAPSERVER_ADDRESS) + self.port = self.config.SWAPSERVER_PORT self.register_callbacks() # eventlistener self.pending = defaultdict(asyncio.Event) @@ -41,9 +40,9 @@ class SwapServer(Logger, EventListener): runner = web.AppRunner(app) await runner.setup() - site = web.TCPSite(runner, host=str(self.addr.host), port=self.addr.port) + site = web.TCPSite(runner, host='localhost', port=self.port) await site.start() - self.logger.info(f"now running and listening. addr={self.addr}") + self.logger.info(f"running and listening on port {self.port}") async def get_pairs(self, r): sm = self.sm diff --git a/electrum/simple_config.py b/electrum/simple_config.py index 21e0e3710..a840baa6d 100644 --- a/electrum/simple_config.py +++ b/electrum/simple_config.py @@ -9,7 +9,6 @@ from numbers import Real from functools import cached_property from copy import deepcopy -from aiorpcx import NetAddress from . import util from . import constants @@ -756,17 +755,6 @@ class SimpleConfig(Logger): device = '' return device - def get_netaddress(self, key: Union[str, ConfigVar, ConfigVarWithConfig]) -> Optional[NetAddress]: - if isinstance(key, (ConfigVar, ConfigVarWithConfig)): - key = key.key() - assert isinstance(key, str), key - text = self.get(key) - if text: - try: - return NetAddress.from_string(text) - except Exception: - pass - def format_amount( self, amount_sat, @@ -950,23 +938,23 @@ class SimpleConfig(Logger): # submarine swap server SWAPSERVER_URL = ConfigVar('swapserver_url', default='', type_=str) + SWAPSERVER_PORT = ConfigVar('swapserver_port', default=5455, type_=int) TEST_SWAPSERVER_REFUND = ConfigVar('test_swapserver_refund', default=False, type_=bool) + # connect to remote WT WATCHTOWER_CLIENT_ENABLED = ConfigVar('use_watchtower', default=False, type_=bool) WATCHTOWER_CLIENT_URL = ConfigVar('watchtower_url', default=None, type_=str) # run WT locally WATCHTOWER_SERVER_ENABLED = ConfigVar('run_watchtower', default=False, type_=bool) - WATCHTOWER_SERVER_ADDRESS = ConfigVar('watchtower_address', default=None, type_=str) + WATCHTOWER_SERVER_PORT = ConfigVar('watchtower_port', default=None, type_=int) WATCHTOWER_SERVER_USER = ConfigVar('watchtower_user', default=None, type_=str) WATCHTOWER_SERVER_PASSWORD = ConfigVar('watchtower_password', default=None, type_=str) - PAYSERVER_ADDRESS = ConfigVar('payserver_address', default='localhost:8080', type_=str) + PAYSERVER_PORT = ConfigVar('payserver_port', default=8080, type_=int) PAYSERVER_ROOT = ConfigVar('payserver_root', default='/r', type_=str) PAYSERVER_ALLOW_CREATE_INVOICE = ConfigVar('payserver_allow_create_invoice', default=False, type_=bool) - SWAPSERVER_ADDRESS = ConfigVar('swapserver_address', default='localhost:5455', type_=str) - PLUGIN_TRUSTEDCOIN_NUM_PREPAY = ConfigVar('trustedcoin_prepay', default=20, type_=int) diff --git a/electrum/tests/regtest/regtest.sh b/electrum/tests/regtest/regtest.sh index 836380daa..e32141945 100755 --- a/electrum/tests/regtest/regtest.sh +++ b/electrum/tests/regtest/regtest.sh @@ -413,7 +413,7 @@ if [[ $1 == "configure_test_watchtower" ]]; then $carol setconfig -o run_watchtower true $carol setconfig -o watchtower_user wtuser $carol setconfig -o watchtower_password wtpassword - $carol setconfig -o watchtower_address 127.0.0.1:12345 + $carol setconfig -o watchtower_port 12345 $bob setconfig -o watchtower_url http://wtuser:wtpassword@127.0.0.1:12345 fi