cln/tests
Níckolas Goline 730e58818f
connectd: set IPV6_V6ONLY=1 on IPv6 sockets for consistent dual-stack behaviour
Systems with net.ipv6.bindv6only=0 (macOS, Fedora, Arch, vanilla kernels) create dual-stack sockets by default: binding '::' also covers '0.0.0.0', so the subsequent IPv4 wildcard bind fails with EADDRINUSE.  Debian/Ubuntu ship bindv6only=1 so both binds succeed here, which is why this was never noticed on typical Linux CI.

Explicitly set IPV6_V6ONLY=1 on AF_INET6 sockets before bind so both address families always get independent sockets regardless of the system sysctl.  Also free the errstr allocation left behind when the IPv4 bind fails acceptably (IPv6 succeeded), fixing a memleak in connectd on those systems.

test_ipv4_and_ipv6: accept IPv6-only binding in the single-socket case, which can still occur on IPv4-only hosts.

Changelog-Fixed: connectd: on macOS and other systems with dual-stack IPv6 default, wildcard '--addr=:<port>' now correctly binds both IPv4 and IPv6.
2026-07-10 15:33:10 +02:00
..
data tests: lower testpluguv's required python version 2026-07-07 17:56:59 +02:00
fuzz wire/splice: rename messages and TLV fields per updated BOLTs 2026-06-19 09:38:06 +09:30
plugins pytests: make sure test plugin misc_notifications.py exits fast 2026-06-17 18:49:59 +09:30
vectors pytest: Remove onion test vectors containing legacy onions. 2022-03-18 09:20:11 +10:30
__init__.py feat: add pytest config 2025-08-11 11:06:22 +09:30
autogenerate-rpc-examples.py schemas: remove old deprecations, add missing deprecations/added fields 2026-05-20 18:40:47 +09:30
benchmark.py pay: deprecate pay and paystatus. 2026-05-11 13:51:52 +09:30
conftest.py feat: Enhance JUnit XML reporting with environment variables and add import to conftest.py 2026-02-02 11:41:09 +01:00
fixtures.py pytest: don't invoke the pcap test every session. 2026-02-28 18:52:19 +10:30
pytest.ini feat: add pytest config 2025-08-11 11:06:22 +09:30
rkls_github_canned_server.py fix: replace deprecated flask.escape with markupsafe.escape 2025-08-11 11:06:22 +09:30
test_askrene.py getroutes: don't crash on source==destination 2026-06-18 13:20:16 +09:30
test_bookkeeper.py pytest: use xpay, not pay in misc tests. 2026-05-11 13:51:52 +09:30
test_cln_lsps.py pytest: use xpay, not pay in misc tests. 2026-05-11 13:51:52 +09:30
test_cln_rs.py cln-plugin: include the full error chain when given a context 2026-07-06 19:25:22 +02:00
test_clnrest.py clnrest: add clnrest-register-path method for dynamic paths 2026-01-19 12:55:57 +10:30
test_closing.py tests: fix flaky test_simple_close_delay_broadcast mempool race 2026-07-08 13:39:14 +02:00
test_coinmoves.py pytest: changed old_hsmsecret to default to false. 2026-01-27 09:32:49 +10:30
test_connection.py pytests: fix flakyness on test_no_delay: introduced statistical margin instead of fixed amount to reduce flakiness 2026-07-06 18:27:04 +02:00
test_currencyrate.py currencyrate: propagate http errors to currencyrate rpc if a source is provided 2026-06-10 14:26:41 +02:00
test_db.py gossipd: don't forget closed channels until 72 blocks, not 12. 2026-04-30 20:09:31 +09:30
test_downgrade.py db: add STRICT tables with migration for old databases 2026-02-23 15:55:55 +10:30
test_gossip.py connectd/tests: fix test_announce_and_connect_via_dns on macOS 2026-07-03 09:35:30 -03:00
test_invoices.py pay: deprecate pay and paystatus. 2026-05-11 13:51:52 +09:30
test_misc.py connectd: set IPV6_V6ONLY=1 on IPv6 sockets for consistent dual-stack behaviour 2026-07-10 15:33:10 +02:00
test_mkfunding.py pytest: add tests for devtools/mkfunding 2023-01-09 14:50:30 -06:00
test_onion.py lightningd: remove support for legacy onion format. 2022-03-18 09:20:11 +10:30
test_opening.py lightningd: don't try to re-xmit funding tx for already-confirmed channels. 2026-06-22 12:04:19 +09:30
test_p2tr_change_dust.py bitcoin/tx.c: use 330 sat dust limit for P2TR/P2WPKH change outputs Fixes #8395 2026-05-08 21:08:41 +09:30
test_pay.py pytest: listpays: test grouping by calling xpay 2026-06-30 15:54:43 -04:00
test_plugin.py tests: fix flaky bwatch 1-block reorg test 2026-06-25 17:20:57 +10:00
test_reckless.py Fix Reckless search command not finding partial matches 2026-02-02 13:01:00 -06:00
test_renepay.py renepay: deprecate. 2026-05-11 13:51:52 +09:30
test_restart.py splice: Remove experiemental splicing feature 2026-04-09 11:04:42 +09:30
test_runes.py pytest: changed old_hsmsecret to default to false. 2026-01-27 09:32:49 +10:30
test_splice.py splice: Make feerate opening + feerate_offset 2026-05-11 15:54:37 +09:30
test_splicing.py Revert "Bolt quote updates and improvements" 2026-06-18 13:22:14 +09:30
test_splicing_disconnect.py splice: Make feerate opening + feerate_offset 2026-05-11 15:54:37 +09:30
test_splicing_insane.py splice: Make feerate opening + feerate_offset 2026-05-11 15:54:37 +09:30
test_wallet.py Revert "Bolt quote updates and improvements" 2026-06-18 13:22:14 +09:30
test_xpay.py pytest: convert many tests to use inline_plugin helper. 2026-06-17 18:32:24 +09:30
utils.py splice: Remove experiemental splicing feature 2026-04-09 11:04:42 +09:30
valgrind-suppressions.txt pytest: Use valgrind target suppressions instead of skipping tests 2022-03-10 10:21:41 +10:30