core-lightning/lightningd
Rusty Russell 8f33f46960 closingd: use a more accurate fee for closing fee negotiation.
We were actually using the last commit tx's size, since we were
setting it in lightningd.  Instead, hand the min and desired feerates
to closingd, and (as it knows the weight of the closing tx), and have
it start negotiation from there.

This can be significantly less when anchor outputs are enabled: for
example in test_closing.py, the commit tx weight is 1124 Sipa, the
close is 672 Sipa!

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Changelog-Changed: Protocol: Use a more accurate fee for mutual close negotiation.
2021-06-30 14:12:24 +09:30
..
test channeld: add a message to read if we only want to reestablish. 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.c wallet: save thresholds for option_static_remotekey. 2021-06-04 16:13:08 +09:30
channel.h lightningd: add channel_closed helper, expose find_channel_by_id(). 2021-06-25 13:23:28 +09:30
channel_control.c channeld: send shutdown_complete even if reestablish_only. 2021-06-25 13:23:28 +09:30
channel_control.h channeld: add a message to read if we only want to reestablish. 2021-06-25 13:23:28 +09:30
channel_state.h channel-state: add two new states, for dualopend 2021-01-10 13:44:04 +01:00
closing_control.c closingd: use a more accurate fee for closing fee negotiation. 2021-06-30 14:12:24 +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 channeld: add a message to read if we only want to reestablish. 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 htlc: Keep the parsed TLV payload around with the htlc_in 2021-06-26 10:55:13 +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 lightningd: fix typo in debug statements. 2021-06-30 14:12:24 +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 opts: Add option to register extra TLV types to accept 2021-06-26 10:55:13 +09:30
lightningd.h opts: Add option to register extra TLV types to accept 2021-06-26 10:55:13 +09:30
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
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
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 openingd: tell lightningd if we get a reestablish. 2021-06-25 13:23:28 +09:30
opening_common.h openingd: tell lightningd if we get a reestablish. 2021-06-25 13:23:28 +09:30
opening_control.c openingd: tell lightningd if we get a reestablish. 2021-06-25 13:23:28 +09:30
opening_control.h openingd/dualopend: remove send_msg functionality. 2021-06-03 16:16:34 +09:30
options.c opts: Add option to register extra TLV types to accept 2021-06-26 10:55:13 +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 channeld: add a message to read if we only want to reestablish. 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 htlc: Keep the parsed TLV payload around with the htlc_in 2021-06-26 10:55:13 +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.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
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
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