core-lightning/lightningd
Rusty Russell 9f8a6e2314 lightningd: always pass closing connections through channeld.
It handles all the cases of retransmission, and in the normal case
retransmits shutdown and immediately returns for us to run closingd.

This is actually far simpler and reduces code duplication.

[ Includes fixup to stop warn_unused_result from Christian ]

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Changelog-Fixed: Protocol: We could get stuck on signature exchange if we needed to retransmit the final revoke_and_ack.
2021-06-25 13:23:28 +09:30
..
test lightningd: always pass closing connections through channeld. 2021-06-25 13:23:28 +09:30
.gitignore dualopend: new dualopend daemon, containing most of accepter side 2020-09-09 19:54:20 +09:30
bitcoind.c typo: information is an uncountable mass noun 2021-03-16 10:45:40 +10:30
bitcoind.h plugins/bcli.c: sendrawtransaction now has a required allowhighfees argument. 2020-09-09 12:38:19 +09:30
chaintopology.c chaintopology: remove deprecated urgent/normal/slow feerate display. 2021-04-07 14:34:39 +09:30
chaintopology.h plugins/bcli.c: sendrawtransaction now has a required allowhighfees argument. 2020-09-09 12:38:19 +09:30
channel_control.c lightningd: always pass closing connections through channeld. 2021-06-25 13:23:28 +09:30
channel_control.h channel_fallen_behind: break out functionality into two methods 2021-01-10 13:44:04 +01:00
channel_state.h channel-state: add two new states, for dualopend 2021-01-10 13:44:04 +01:00
channel.c wallet: save thresholds for option_static_remotekey. 2021-06-04 16:13:08 +09:30
channel.h wallet: save thresholds for option_static_remotekey. 2021-06-04 16:13:08 +09:30
closing_control.c lightningd: always pass closing connections through channeld. 2021-06-25 13:23:28 +09:30
closing_control.h lightningd: always pass closing connections through channeld. 2021-06-25 13:23:28 +09:30
coin_mvts.c channel_id: save to database, dont derive from funding_txid 2020-09-09 19:54:20 +09:30
coin_mvts.h coins: re-write API interface for htlc notices 2020-05-12 15:46:58 +09:30
connect_control.c connectd: new command to make us send message and close. 2021-06-03 16:16:34 +09:30
connect_control.h lightningd: get connection direction from connectd. 2021-03-26 13:22:33 +10:30
dual_open_control.c lightningd: always pass closing connections through channeld. 2021-06-25 13:23:28 +09:30
dual_open_control.h openingd/dualopend: remove send_msg functionality. 2021-06-03 16:16:34 +09:30
gossip_control.c lightningd: wait for gossipd to finish initalizing before starting plugins. 2021-06-16 10:29:17 +09:30
gossip_control.h gossipd: get fed the blockheight from lightningd when we know it. 2019-09-25 04:01:56 +00:00
gossip_msg.c gossipd: remove routing, listchannels and listnodes infrastructure. 2021-06-16 10:29:17 +09:30
gossip_msg.h gossipd: remove routing, listchannels and listnodes infrastructure. 2021-06-16 10:29:17 +09:30
hsm_control.c hsmd: cleanup encrypted hsm_secret detection 2021-01-06 13:50:01 +01:00
hsm_control.h hsm: decouple hsm from wallet; init before wallet 2020-06-11 13:13:13 +02:00
htlc_end.c lightning: Add status field to htlc_in 2021-06-05 17:47:32 +09:30
htlc_end.h lightning: Add status field to htlc_in 2021-06-05 17:47:32 +09:30
htlc_set.c lightningd: note whether payment secret is used or not. 2020-10-28 12:03:14 +01:00
htlc_set.h Makefile: use completely separate spec-derived files for EXPERIMENTAL_FEATURES 2020-09-08 09:42:00 +09:30
invoice.c invoice: allow creation of giant invoices. 2021-06-20 14:25:40 +09:30
invoice.h Makefile: use completely separate spec-derived files for EXPERIMENTAL_FEATURES 2020-09-08 09:42:00 +09:30
io_loop_with_timers.c plugins: don't crash if getmanifest times out. 2019-07-24 16:16:53 +02:00
io_loop_with_timers.h lightningd/io_loop_with_timers.c: Move mainloop to its own source file, have chaintopology use it. 2019-05-31 17:57:10 +02:00
json.c common/json_tok: hoist param_short_channel_id from inside lightningd/ 2021-05-22 17:53:04 +09:30
json.h common: hoist param_bitcoin_address where plugins can use it. 2020-08-11 08:39:24 +09:30
jsonrpc.c plugin: Add the plugin we're serializing for in the serializer 2021-06-05 17:47:32 +09:30
jsonrpc.h lightningd: infrastructure for internal notifications. 2020-10-23 13:53:16 +10:30
lightningd.c lightningd: option_shutdown_anysegwit is no longer experimental. 2021-05-26 20:01:03 +09:30
lightningd.h lightningd: don't abort on incorrect versions, but try to re-exec. 2021-04-24 13:56:58 +09:30
log_status.c common: convert to new wire generation style. 2020-08-25 12:53:13 +09:30
log_status.h lightningd: have logging include an optional node_id for each entry. 2019-11-18 04:50:22 +00:00
log.c lightningd: implement --log-timestamps=false. 2021-05-05 17:19:19 -05:00
log.h lightningd: use a simple array for less memory usage. 2019-11-18 04:50:22 +00:00
Makefile dual-funding: convert to runtime flag, --experimental-dual-fund 2021-03-25 20:05:11 +10:30
memdump.c common/memleak: simplify and document API. 2020-09-23 13:52:49 +09:30
memdump.h lightningd: add code to search strmaps for memleak detection. 2019-02-07 20:33:50 +00:00
notification.c plugin: Move list of notification topics to each plugin 2021-05-03 11:20:15 +09:30
notification.h plugin: Prevent plugins from registering native notification topics 2021-05-03 11:20:15 +09:30
offer.c offers: make 'used' flag more useful. 2021-02-25 14:44:03 +10:30
onchain_control.c onchaind: handle static_remotekey thresholds. 2021-06-04 16:13:08 +09:30
onchain_control.h closingd: convert to new wire generation style. 2020-08-25 12:53:13 +09:30
onion_message.c plugin: Add the plugin we're serializing for in the serializer 2021-06-05 17:47:32 +09:30
onion_message.h gossipd, channeld: handle onion messages in gossipd so we don't need a channel. 2021-01-09 14:34:35 +10:30
opening_common.c memleak,df: patchup memleak code for v2 channels 2021-03-03 16:19:04 -06:00
opening_common.h lightningd/opening_control: store funding scriptpubkey. 2021-03-16 13:10:07 +10:30
opening_control.c listpeers: clean up JSON output. 2021-06-25 09:49:33 +09:30
opening_control.h openingd/dualopend: remove send_msg functionality. 2021-06-03 16:16:34 +09:30
options.c lightningd: clean up listconfigs output. 2021-06-25 09:49:33 +09:30
options.h common: parse --allow-deprecated-apis extremely early. 2019-11-23 22:42:34 +00:00
pay.c gossipd: remove routing, listchannels and listnodes infrastructure. 2021-06-16 10:29:17 +09:30
pay.h lightningd: don't report spurious temporary_node_failure on local failures. 2020-05-04 18:56:33 +09:30
peer_control.c lightningd: always pass closing connections through channeld. 2021-06-25 13:23:28 +09:30
peer_control.h lightningd: set "direction" correctly for connect which is already connected. 2021-03-26 13:22:33 +10:30
peer_htlcs.c plugin: Add a status field to htlcs in listpeers 2021-06-05 17:47:32 +09:30
peer_htlcs.h lightningd: separate fee_states out of struct channel_info. 2020-09-23 15:51:13 +09:30
ping.c gossipd: convert wire to new scheme. 2020-08-25 12:53:13 +09:30
ping.h ping: complete JSON RPC ping commands even if one ping gets no response. 2018-09-14 22:11:23 +02:00
plugin_control.c plugins: add command field to subcommand output. 2021-06-25 09:49:33 +09:30
plugin_control.h plugins: add command field to subcommand output. 2021-06-25 09:49:33 +09:30
plugin_hook.c plugin: Add debug log entries when calling and returning from hooks 2021-06-05 17:47:32 +09:30
plugin_hook.h plugin: Add the plugin we're serializing for in the serializer 2021-06-05 17:47:32 +09:30
plugin.c plugins: add command field to subcommand output. 2021-06-25 09:49:33 +09:30
plugin.h plugins: add command field to subcommand output. 2021-06-25 09:49:33 +09:30
routehint.c invoice: overhaul routehints to use topology.listincoming, cleanup. 2021-06-16 10:29:17 +09:30
routehint.h invoice: overhaul routehints to use topology.listincoming, cleanup. 2021-06-16 10:29:17 +09:30
signmessage.c signmessage: use listnodes instead of gossipd_getnodes_request. 2021-06-16 10:29:17 +09:30
subd.c lightningd: don't send other messages until we've received version. 2021-04-24 13:56:58 +09:30
subd.h lightningd: don't send other messages until we've received version. 2021-04-24 13:56:58 +09:30
watch.c wallet: remove edgecase around transaction checks 2020-01-02 16:56:42 +01:00
watch.h lightningd: fix occasional missing txid detection. 2019-06-28 03:31:43 +00:00