mirror of
https://github.com/ElementsProject/lightning.git
synced 2025-01-18 21:35:11 +01:00
Set default port according to network
The idea is to have different default ports for different networks. Current default port is `9735` for everything. Let's use it for the mainnet and reuse the difference added to the default port from `rpc_port` values in `bitcoin/chainstate.c`. Testnet would be `19735` (adding rpc_port - 8332 = `10000`). Signet would be `39735` (adding rpc_port - 8332 = `30000`). Regtest would be `19846` (adding rpc_port - 8332 = `10111`). With Vincenzo's kind pair-programming help over tmate. Two other commits were squashed into this one so that bisecting never ends up in half-baked state: 1. chainparams: Fix regtest default rpc_port bitcoind -help says this: -rpcport=<port> Listen for JSON-RPC connections on <port> (default: 8332, testnet: 18332, signet: 38332, regtest: 18443) 2. test_gossip: Default port for regtest hex: 2607 is now .... (could be 4d86 but Elements uses another port) dec: 9735 is now any port (could be 19846 ^^ but now is for any port) The lines which were binding to default port were removed as the default port is different on each network. NOTE: Remember not to modify gossip_store tests which loads everything raw including the checksums. Changelog-Changed: If the port is unspecified, the default port is chosen according to used network similarly to Bitcoin Core.
This commit is contained in:
parent
78fb78478b
commit
96f28323bd
@ -64,7 +64,7 @@ const struct chainparams networks[] = {
|
||||
0x5b, 0xbf, 0x28, 0xc3, 0x4f, 0x3a, 0x5e,
|
||||
0x33, 0x2a, 0x1f, 0xc7, 0xb2, 0xb7, 0x3c,
|
||||
0xf1, 0x88, 0x91, 0x0f}}}},
|
||||
.rpc_port = 18332,
|
||||
.rpc_port = 18443,
|
||||
.cli = "bitcoin-cli",
|
||||
.cli_args = "-regtest",
|
||||
.cli_min_supported_version = 150000,
|
||||
|
@ -199,7 +199,6 @@ static struct lightningd *new_lightningd(const tal_t *ctx)
|
||||
* NULL. So we start with a zero-length array. */
|
||||
ld->proposed_wireaddr = tal_arr(ld, struct wireaddr_internal, 0);
|
||||
ld->proposed_listen_announce = tal_arr(ld, enum addr_listen_announce, 0);
|
||||
ld->portnum = DEFAULT_PORT;
|
||||
ld->listen = true;
|
||||
ld->autolisten = true;
|
||||
ld->reconnect = true;
|
||||
@ -954,6 +953,10 @@ int main(int argc, char *argv[])
|
||||
* non-early opts. This also forks if they say --daemon. */
|
||||
handle_early_opts(ld, argc, argv);
|
||||
|
||||
/*~ Set the default portnum according to the used network
|
||||
* similarly to what Bitcoin Core does to ports by default. */
|
||||
ld->portnum = DEFAULT_PORT + chainparams->rpc_port - 8332;
|
||||
|
||||
/*~ Initialize all the plugins we just registered, so they can
|
||||
* do their thing and tell us about themselves (including
|
||||
* options registration). */
|
||||
|
@ -139,8 +139,8 @@ def test_announce_address(node_factory, bitcoind):
|
||||
l1.daemon.wait_for_log(r"\[OUT\] 0101.*47"
|
||||
"010102030404d2"
|
||||
"017f000001...."
|
||||
"02000000000000000000000000000000002607"
|
||||
"04e00533f3e8f2aedaa8969b3d0fa03a96e857bbb28064dca5e147e934244b9ba50230032607")
|
||||
"0200000000000000000000000000000000...."
|
||||
"04e00533f3e8f2aedaa8969b3d0fa03a96e857bbb28064dca5e147e934244b9ba5023003....")
|
||||
return
|
||||
|
||||
# We should see it send node announce with all addresses (257 = 0x0101)
|
||||
@ -154,8 +154,8 @@ def test_announce_address(node_factory, bitcoind):
|
||||
l1.daemon.wait_for_log(r"\[OUT\] 0101.*0063"
|
||||
"010102030404d2" # IPv4 01 1.2.3.4:1234
|
||||
"017f000001...." # IPv4 01 127.0.0.1:wxyz
|
||||
"02000000000000000000000000000000002607" # IPv6 02 :::9735
|
||||
"04e00533f3e8f2aedaa8969b3d0fa03a96e857bbb28064dca5e147e934244b9ba50230032607" # TORv3 04
|
||||
"0200000000000000000000000000000000...." # IPv6 02 :::<any_port>
|
||||
"04e00533f3e8f2aedaa8969b3d0fa03a96e857bbb28064dca5e147e934244b9ba5023003...." # TORv3 04
|
||||
"05096c6f63616c686f737404d3" # DNS 05 len localhost:1235
|
||||
"050b6578616d706c652e636f6d04d4") # DNS 05 len example.com:1236
|
||||
|
||||
@ -1019,10 +1019,7 @@ def test_gossip_addresses(node_factory, bitcoind):
|
||||
l1 = node_factory.get_node(options={
|
||||
'announce-addr': [
|
||||
'[::]:3',
|
||||
'[::]',
|
||||
'127.0.0.1:2',
|
||||
'127.0.0.1',
|
||||
'vww6ybal4bd7szmgncyruucpgfkqahzddi37ktceo3ah7ngmcopnpyyd.onion',
|
||||
'4acth47i6kxnvkewtm6q7ib2s3ufpo5sqbsnzjpbi7utijcltosqemad.onion:1234'
|
||||
],
|
||||
})
|
||||
@ -1037,10 +1034,7 @@ def test_gossip_addresses(node_factory, bitcoind):
|
||||
nodes = l2.rpc.listnodes(l1.info['id'])['nodes']
|
||||
assert len(nodes) == 1 and nodes[0]['addresses'] == [
|
||||
{'type': 'ipv4', 'address': '127.0.0.1', 'port': 2},
|
||||
{'type': 'ipv4', 'address': '127.0.0.1', 'port': 9735},
|
||||
{'type': 'ipv6', 'address': '::', 'port': 3},
|
||||
{'type': 'ipv6', 'address': '::', 'port': 9735},
|
||||
{'type': 'torv3', 'address': 'vww6ybal4bd7szmgncyruucpgfkqahzddi37ktceo3ah7ngmcopnpyyd.onion', 'port': 9735},
|
||||
{'type': 'torv3', 'address': '4acth47i6kxnvkewtm6q7ib2s3ufpo5sqbsnzjpbi7utijcltosqemad.onion', 'port': 1234},
|
||||
]
|
||||
|
||||
@ -1912,7 +1906,7 @@ def test_statictor_onions(node_factory):
|
||||
})
|
||||
|
||||
assert l1.daemon.is_in_log('127.0.0.1:{}'.format(l1.port))
|
||||
assert l2.daemon.is_in_log('x2y4zvh4fn5q3eouuh7nxnc7zeawrqoutljrup2xjtiyxgx3emgkemad.onion:9735,127.0.0.1:{}'.format(l2.port))
|
||||
assert l2.daemon.is_in_log('x2y4zvh4fn5q3eouuh7nxnc7zeawrqoutljrup2xjtiyxgx3emgkemad.onion:{},127.0.0.1:{}'.format(l2.port, l2.port))
|
||||
|
||||
|
||||
@pytest.mark.developer("needs a running Tor service instance at port 9151 or 9051")
|
||||
|
Loading…
Reference in New Issue
Block a user