mirror of
https://github.com/ElementsProject/lightning.git
synced 2025-02-21 14:24:09 +01:00
connectd: DNS Bolt7 #911 no longer EXPERIMENTAL
Changelog-Changed: Bolt7 #911 DNS annoucenent support is no longer EXPERIMENTAL
This commit is contained in:
parent
375215a141
commit
e0d6f3ceb1
3 changed files with 8 additions and 35 deletions
|
@ -766,14 +766,12 @@ static void try_connect_one_addr(struct connecting *connect)
|
|||
bool use_proxy = connect->daemon->always_use_proxy;
|
||||
const struct wireaddr_internal *addr = &connect->addrs[connect->addrnum];
|
||||
struct io_conn *conn;
|
||||
#if EXPERIMENTAL_FEATURES /* BOLT7 DNS RFC #911 */
|
||||
bool use_dns = connect->daemon->use_dns;
|
||||
struct addrinfo hints, *ais, *aii;
|
||||
struct wireaddr_internal addrhint;
|
||||
int gai_err;
|
||||
struct sockaddr_in *sa4;
|
||||
struct sockaddr_in6 *sa6;
|
||||
#endif
|
||||
|
||||
assert(!connect->conn);
|
||||
|
||||
|
@ -823,7 +821,6 @@ static void try_connect_one_addr(struct connecting *connect)
|
|||
af = AF_INET6;
|
||||
break;
|
||||
case ADDR_TYPE_DNS:
|
||||
#if EXPERIMENTAL_FEATURES /* BOLT7 DNS RFC #911 */
|
||||
if (use_proxy) /* hand it to the proxy */
|
||||
break;
|
||||
if (!use_dns) { /* ignore DNS when we can't use it */
|
||||
|
@ -875,12 +872,6 @@ static void try_connect_one_addr(struct connecting *connect)
|
|||
addr = &connect->addrs[connect->addrnum];
|
||||
}
|
||||
freeaddrinfo(ais);
|
||||
#endif
|
||||
tal_append_fmt(&connect->errors,
|
||||
"%s: EXPERIMENTAL_FEATURES needed. ",
|
||||
type_to_string(tmpctx,
|
||||
struct wireaddr_internal,
|
||||
addr));
|
||||
goto next;
|
||||
case ADDR_TYPE_WEBSOCKET:
|
||||
af = -1;
|
||||
|
@ -1636,10 +1627,8 @@ static void add_seed_addrs(struct wireaddr_internal **addrs,
|
|||
NULL, broken_reply, NULL);
|
||||
if (new_addrs) {
|
||||
for (size_t j = 0; j < tal_count(new_addrs); j++) {
|
||||
#if EXPERIMENTAL_FEATURES /* BOLT7 DNS RFC #911 */
|
||||
if (new_addrs[j].type == ADDR_TYPE_DNS)
|
||||
continue;
|
||||
#endif
|
||||
struct wireaddr_internal a;
|
||||
a.itype = ADDR_INTERNAL_WIREADDR;
|
||||
a.u.wireaddr = new_addrs[j];
|
||||
|
|
|
@ -195,7 +195,6 @@ static char *opt_set_accept_extra_tlv_types(const char *arg,
|
|||
}
|
||||
#endif
|
||||
|
||||
#if EXPERIMENTAL_FEATURES /* BOLT7 DNS RFC #911 */
|
||||
/* Returns the number of wireaddr types already announced */
|
||||
static size_t num_announced_types(enum wire_addr_type type, struct lightningd *ld)
|
||||
{
|
||||
|
@ -210,7 +209,6 @@ static size_t num_announced_types(enum wire_addr_type type, struct lightningd *l
|
|||
}
|
||||
return num;
|
||||
}
|
||||
#endif
|
||||
|
||||
static char *opt_add_addr_withtype(const char *arg,
|
||||
struct lightningd *ld,
|
||||
|
@ -257,7 +255,6 @@ static char *opt_add_addr_withtype(const char *arg,
|
|||
tal_arr_expand(&ld->proposed_wireaddr, wi);
|
||||
}
|
||||
|
||||
#if EXPERIMENTAL_FEATURES /* BOLT7 DNS RFC #911 */
|
||||
/* Add ADDR_TYPE_DNS to announce DNS hostnames */
|
||||
if (is_dnsaddr(address) && ala & ADDR_ANNOUNCE) {
|
||||
/* BOLT-hostnames #7:
|
||||
|
@ -282,7 +279,6 @@ static char *opt_add_addr_withtype(const char *arg,
|
|||
tal_arr_expand(&ld->proposed_listen_announce, ADDR_ANNOUNCE);
|
||||
tal_arr_expand(&ld->proposed_wireaddr, wi);
|
||||
}
|
||||
#endif
|
||||
|
||||
return NULL;
|
||||
|
||||
|
|
|
@ -5,7 +5,7 @@ from fixtures import TEST_NETWORK
|
|||
from pyln.client import RpcError, Millisatoshi
|
||||
from utils import (
|
||||
DEVELOPER, wait_for, TIMEOUT, only_one, sync_blockheight,
|
||||
expected_node_features, COMPAT, EXPERIMENTAL_FEATURES,
|
||||
expected_node_features, COMPAT,
|
||||
mine_funding_to_announce, default_ln_port
|
||||
)
|
||||
|
||||
|
@ -124,13 +124,6 @@ def test_announce_address(node_factory, bitcoind):
|
|||
'::'],
|
||||
'log-level': 'io',
|
||||
'dev-allow-localhost': None}
|
||||
if not EXPERIMENTAL_FEATURES: # BOLT7 DNS RFC #911
|
||||
opts = {'disable-dns': None, 'announce-addr':
|
||||
['4acth47i6kxnvkewtm6q7ib2s3ufpo5sqbsnzjpbi7utijcltosqemad.onion',
|
||||
'1.2.3.4:1234',
|
||||
'::'],
|
||||
'log-level': 'io',
|
||||
'dev-allow-localhost': None}
|
||||
l1, l2 = node_factory.get_nodes(2, opts=[opts, {}])
|
||||
|
||||
l1.rpc.connect(l2.info['id'], 'localhost', l2.port)
|
||||
|
@ -140,14 +133,6 @@ def test_announce_address(node_factory, bitcoind):
|
|||
l1.wait_channel_active(scid)
|
||||
l2.wait_channel_active(scid)
|
||||
|
||||
if not EXPERIMENTAL_FEATURES: # BOLT7 DNS RFC #911
|
||||
l1.daemon.wait_for_log(r"\[OUT\] 0101.*47"
|
||||
"010102030404d2"
|
||||
"017f000001...."
|
||||
"0200000000000000000000000000000000...."
|
||||
"04e00533f3e8f2aedaa8969b3d0fa03a96e857bbb28064dca5e147e934244b9ba5023003....")
|
||||
return
|
||||
|
||||
# We should see it send node announce with all addresses (257 = 0x0101)
|
||||
# Note: local ephemeral port is masked out.
|
||||
# Note: Since we `disable-dns` it should not announce a resolved IPv4
|
||||
|
@ -173,7 +158,6 @@ def test_announce_address(node_factory, bitcoind):
|
|||
assert addresses_dns[0]['port'] == 1236
|
||||
|
||||
|
||||
@unittest.skipIf(not EXPERIMENTAL_FEATURES, "BOLT7 DNS RFC #911")
|
||||
@pytest.mark.developer("gossip without DEVELOPER=1 is slow")
|
||||
def test_announce_and_connect_via_dns(node_factory, bitcoind):
|
||||
""" Test that DNS annoucements propagate and can be used when connecting.
|
||||
|
@ -238,7 +222,6 @@ def test_announce_and_connect_via_dns(node_factory, bitcoind):
|
|||
l4.rpc.connect(l1.info['id'])
|
||||
|
||||
|
||||
@unittest.skipIf(not EXPERIMENTAL_FEATURES, "BOLT7 DNS RFC #911")
|
||||
def test_only_announce_one_dns(node_factory, bitcoind):
|
||||
# and test that we can't announce more than one DNS address
|
||||
l1 = node_factory.get_node(expect_fail=True, start=False,
|
||||
|
@ -247,7 +230,6 @@ def test_only_announce_one_dns(node_factory, bitcoind):
|
|||
wait_for(lambda: l1.daemon.is_in_stderr("Only one DNS can be announced"))
|
||||
|
||||
|
||||
@unittest.skipIf(not EXPERIMENTAL_FEATURES, "BOLT7 DNS RFC #911")
|
||||
def test_announce_dns_without_port(node_factory, bitcoind):
|
||||
""" Checks that the port of a DNS announcement is set to the corresponding
|
||||
network port. In this case regtest 19846
|
||||
|
@ -259,7 +241,13 @@ def test_announce_dns_without_port(node_factory, bitcoind):
|
|||
info = l1.rpc.getinfo()
|
||||
assert info['address'][0]['type'] == 'dns'
|
||||
assert info['address'][0]['address'] == 'example.com'
|
||||
assert info['address'][0]['port'] == 19846
|
||||
|
||||
if TEST_NETWORK == 'regtest':
|
||||
default_port = 19846
|
||||
else:
|
||||
assert TEST_NETWORK == 'liquid-regtest'
|
||||
default_port = 20735
|
||||
assert info['address'][0]['port'] == default_port
|
||||
|
||||
|
||||
@pytest.mark.developer("needs DEVELOPER=1")
|
||||
|
|
Loading…
Add table
Reference in a new issue