Browse Source

update daemon support for BCH,LTC,ETH,XMR

- Bitcoin-Cash-Node 24.1.0
- Litecoin Core 0.21.2.1
- Go-Ethereum (Geth) 1.10.21
- Monerod 0.18.1.0
The MMGen Project 2 years ago
parent
commit
49faea717f

+ 2 - 2
mmgen/base_proto/bitcoin/daemon.py

@@ -121,7 +121,7 @@ class bitcoin_core_daemon(CoinDaemon):
 		return e.args[0]
 
 class bitcoin_cash_node_daemon(bitcoin_core_daemon):
-	daemon_data = _dd('Bitcoin Cash Node', 24000000, '24.0.0')
+	daemon_data = _dd('Bitcoin Cash Node', 24010000, '24.1.0')
 	exec_fn = 'bitcoind-bchn'
 	cli_fn = 'bitcoin-cli-bchn'
 	rpc_ports = _nw(8432, 18432, 18543) # use non-standard ports (core+100)
@@ -149,7 +149,7 @@ class bitcoin_cash_node_daemon(bitcoin_core_daemon):
 class litecoin_core_daemon(bitcoin_core_daemon):
 	# v0.21.2rc5 crashes when mining more than 431 blocks in regtest mode:
 	#   CreateNewBlock: TestBlockValidity failed: bad-txns-vin-empty, Transaction check failed
-	daemon_data = _dd('Litecoin Core', 210200, '0.21.2')
+	daemon_data = _dd('Litecoin Core', 210201, '0.21.2.1')
 	exec_fn = 'litecoind'
 	cli_fn = 'litecoin-cli'
 	testnet_dir = 'testnet4'

+ 7 - 1
mmgen/base_proto/ethereum/daemon.py

@@ -21,6 +21,7 @@ from ...daemon import CoinDaemon,RPCDaemon,_nw,_dd
 class ethereum_daemon(CoinDaemon):
 	chain_subdirs = _nw('ethereum','goerli','DevelopmentChain')
 	base_rpc_port = 8545  # same for all networks!
+	base_authrpc_port = 8551 # same for all networks!
 	base_p2p_port = 30303 # same for all networks!
 	daemon_port_offset = 100
 	network_port_offsets = _nw(0,10,20)
@@ -39,6 +40,10 @@ class ethereum_daemon(CoinDaemon):
 	def get_rpc_port(self):
 		return self.base_rpc_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
 
@@ -86,7 +91,7 @@ class parity_daemon(openethereum_daemon):
 class geth_daemon(ethereum_daemon):
 	# bug in v1.10.17 requires --dev to be omitted to initialize blockchain (devnet_init_bug)
 	# daemon_data = _dd('Geth', 1010017, '1.10.17')
-	daemon_data = _dd('Geth', 1010014, '1.10.14')
+	daemon_data = _dd('Geth', 1010021, '1.10.21')
 	version_pat = r'Geth/v(\d+)\.(\d+)\.(\d+)'
 	exec_fn = 'geth'
 	use_pidfile = False
@@ -104,6 +109,7 @@ class geth_daemon(ethereum_daemon):
 			['--http'],
 			['--http.api=eth,web3,txpool'],
 			[f'--http.port={self.rpc_port}'],
+			[f'--authrpc.port={self.authrpc_port}'],
 			[f'--port={self.p2p_port}', self.p2p_port], # geth binds p2p port even with --maxpeers=0
 			['--maxpeers=0', not self.opt.online],
 			[f'--datadir={self.datadir}', self.non_dfl_datadir],

+ 1 - 1
mmgen/data/version

@@ -1 +1 @@
-13.2.dev13
+13.2.dev14

+ 1 - 1
test/test_py_d/ts_ethdev.py

@@ -1006,7 +1006,7 @@ class TestSuiteEthdev(TestSuiteBase,TestSuiteShared):
 					start_gas = ETHAmt(60000,'wei'),
 					gasPrice  = ETHAmt(8,'Gwei') )
 				if self.daemon.id == 'geth': # yet another Geth bug
-					await asyncio.sleep(0.1)
+					await asyncio.sleep(0.3)
 				if (await self.get_tx_receipt(txid)).status == 0:
 					die(2,'Transfer of token funds failed. Aborting')