core-lightning/lightningd
Rusty Russell 5889ad5fc4 dev-disconnect: add blackhole option.
To reproduce the next bug, I had to ensure that one node keeps thinking it's
disconnected, then the other node reconnects, then the first node realizes
it's disconnected.

This code does that, adding a '0' dev-disconnect modifier.  That means
we fork off a process which (due to pipebuf) will accept a little
data, but when the dev_disconnect file is truncated (a hacky, but
effective, signalling mechanism) will exit, as if the socket finally
realized it's not connected any more.

The python tests hang waiting for the daemon to terminate if you leave
the blackhole around; to give a clue as to what's happening in this
case I moved the log dump to before killing the daemon.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2017-09-06 19:11:21 +02:00
..
test dev-disconnect: add blackhole option. 2017-09-06 19:11:21 +02:00
.gitignore Rename subdaemons, move them into top level. 2017-08-29 17:54:14 +02:00
bitcoind.c common: absorb remaining files from daemon/ 2017-08-29 17:54:14 +02:00
bitcoind.h lightningd: remove lightningd_state. 2017-08-29 17:54:14 +02:00
build_utxos.c common: absorb remaining files from daemon/ 2017-08-29 17:54:14 +02:00
build_utxos.h common: move some files out of lightningd/ 2017-08-29 17:54:14 +02:00
chaintopology.c lightningd: remove lightningd_state. 2017-08-29 17:54:14 +02:00
chaintopology.h external: new subdirectory for all external libraries and submodules. 2017-08-29 17:54:14 +02:00
dev_ping.c Rename subdaemons, move them into top level. 2017-08-29 17:54:14 +02:00
dns.c lightningd: remove lightningd_state. 2017-08-29 17:54:14 +02:00
dns.h lightningd: remove lightningd_state. 2017-08-29 17:54:14 +02:00
gossip_control.c gossip: make rpc responses correct. 2017-09-03 02:01:54 +02:00
gossip_control.h headers: fix up header idempotent lines. 2017-08-29 17:54:14 +02:00
gossip_msg.c gossip: fix address descriptor handling. 2017-09-03 02:01:54 +02:00
gossip_msg.h gossip: make rpc responses correct. 2017-09-03 02:01:54 +02:00
hsm_control.c Rename subdaemons, move them into top level. 2017-08-29 17:54:14 +02:00
hsm_control.h lightningd/hsm_control: use a simple fd for HSM. 2017-06-27 10:25:53 +09:30
htlc_end.c common: absorb remaining files from daemon/ 2017-08-29 17:54:14 +02:00
htlc_end.h common: move some files out of lightningd/ 2017-08-29 17:54:14 +02:00
invoice.c lightningd: remove lightningd_state. 2017-08-29 17:54:14 +02:00
invoice.h lightningd: remove lightningd_state. 2017-08-29 17:54:14 +02:00
jsonrpc.c lightningd: remove lightningd_state. 2017-08-29 17:54:14 +02:00
jsonrpc.h lightningd: remove lightningd_state. 2017-08-29 17:54:14 +02:00
lightningd.c Rename subdaemons, move them into top level. 2017-08-29 17:54:14 +02:00
lightningd.h Cleanup: remove unused IRC flag. 2017-09-04 08:47:13 +02:00
log.c common: absorb remaining files from daemon/ 2017-08-29 17:54:14 +02:00
log.h lightningd: remove lightningd_state. 2017-08-29 17:54:14 +02:00
Makefile Rename subdaemons, move them into top level. 2017-08-29 17:54:14 +02:00
netaddr.c common: absorb remaining files from daemon/ 2017-08-29 17:54:14 +02:00
netaddr.h headers: fix up header idempotent lines. 2017-08-29 17:54:14 +02:00
new_connection.c Rename subdaemons, move them into top level. 2017-08-29 17:54:14 +02:00
new_connection.h lightningd: remove lightningd_state. 2017-08-29 17:54:14 +02:00
opt_time.c common: absorb remaining files from daemon/ 2017-08-29 17:54:14 +02:00
opt_time.h headers: fix up header idempotent lines. 2017-08-29 17:54:14 +02:00
options.c cleanup: Remove IRC flags from default options 2017-09-04 08:47:13 +02:00
options.h lightningd: remove lightningd_state. 2017-08-29 17:54:14 +02:00
pay.c Rename subdaemons, move them into top level. 2017-08-29 17:54:14 +02:00
pay.h lightningd: unify pay vs forward path when handling failures. 2017-06-23 09:29:42 +09:30
peer_control.c dev-disconnect: add blackhole option. 2017-09-06 19:11:21 +02:00
peer_control.h common: move some files out of lightningd/ 2017-08-29 17:54:14 +02:00
peer_htlcs.c lightningd: handle case where channeld fails locally-generated HTLC. 2017-08-30 11:36:37 +02:00
peer_htlcs.h common: move some files out of lightningd/ 2017-08-29 17:54:14 +02:00
peer_state.h lightningd: new peer state CLOSINGD_COMPLETE. 2017-07-12 10:21:16 +09:30
subd.c lightningd: remove lightningd_state. 2017-08-29 17:54:14 +02:00
subd.h Rename subdaemons, move them into top level. 2017-08-29 17:54:14 +02:00
watch.c common: absorb remaining files from daemon/ 2017-08-29 17:54:14 +02:00
watch.h lightningd: remove lightningd_state. 2017-08-29 17:54:14 +02:00