From dd4be58c58849beeaac484f35a405a8149bb879a Mon Sep 17 00:00:00 2001 From: The MMGen Project Date: Mon, 21 Sep 2026 10:30:52 +0000 Subject: [PATCH] daemon: new `dfl_rpc_port`, `dfl_p2p_port` properties --- mmgen/daemon.py | 10 ++++++---- mmgen/proto/eth/daemon.py | 10 ++++++---- mmgen/proto/xmr/daemon.py | 3 ++- 3 files changed, 14 insertions(+), 9 deletions(-) diff --git a/mmgen/daemon.py b/mmgen/daemon.py index 8f96114f..f8c0d89e 100755 --- a/mmgen/daemon.py +++ b/mmgen/daemon.py @@ -432,10 +432,10 @@ class CoinDaemon(Daemon): # user-set values take precedence usr_rpc_port = self.proto.rpc_port or cfg.rpc_port - self.rpc_port = usr_rpc_port + (port_shift or 0) if usr_rpc_port else ps_adj + self.get_rpc_port() + self.rpc_port = usr_rpc_port + (port_shift or 0) if usr_rpc_port else ps_adj + self.dfl_rpc_port self.p2p_port = ( p2p_port or ( - self.get_p2p_port() + ps_adj if self.get_p2p_port() and (self.test_suite or ps_adj) else None + self.dfl_p2p_port + ps_adj if self.dfl_p2p_port and (self.test_suite or ps_adj) else None ) if self.network != 'regtest' else None) if hasattr(self, 'private_ports'): @@ -457,10 +457,12 @@ class CoinDaemon(Daemon): os.path.join('test', 'daemons', self.network_id) if self.test_suite else os.path.join(*self.datadirs[gc.platform])) - def get_rpc_port(self): + @property + def dfl_rpc_port(self): return getattr(self.rpc_ports, self.network) - def get_p2p_port(self): + @property + def dfl_p2p_port(self): return None @property diff --git a/mmgen/proto/eth/daemon.py b/mmgen/proto/eth/daemon.py index 2bf2f19e..063c42eb 100755 --- a/mmgen/proto/eth/daemon.py +++ b/mmgen/proto/eth/daemon.py @@ -38,16 +38,18 @@ class ethereum_daemon(CoinDaemon): super().__init__(*args, test_suite=test_suite, **kwargs) - def get_rpc_port(self): + @property + def dfl_rpc_port(self): return self.base_rpc_port + self.port_offset + @property + def dfl_p2p_port(self): + return self.base_p2p_port + self.port_offset + @property def authrpc_port(self): return self.base_authrpc_port + self.port_offset - def get_p2p_port(self): - return self.base_p2p_port + self.port_offset - class openethereum_daemon(ethereum_daemon): daemon_data = _dd('OpenEthereum', 3003005, '3.3.5') version_pat = r'OpenEthereum//v(\d+)\.(\d+)\.(\d+)' diff --git a/mmgen/proto/xmr/daemon.py b/mmgen/proto/xmr/daemon.py index 37201c05..c7d93dd1 100755 --- a/mmgen/proto/xmr/daemon.py +++ b/mmgen/proto/xmr/daemon.py @@ -32,7 +32,8 @@ class monero_daemon(CoinDaemon): 'win32': ['/', 'c', 'ProgramData', 'bitmonero']} use_pidfile = gc.platform == 'linux' - def get_p2p_port(self): + @property + def dfl_p2p_port(self): return self.rpc_port - 1 def init_subclass(self):