core-lightning/lightningd
Rusty Russell 391da2f440 lightningd: don't let them fundpsbt below emergency reserve.
This is the simple version which always tries to keep some sats if we
have an anchor channel.  Turns out that we need something more
sophisticated for multifundchannel, so that's next.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Changelog-Changed: JSON-RPC: `withdraw` will refuse to spend funds below `min-emergency-msat` if we have any anchor channels (and `all` will be reduced appropriately).
Changelog-Changed: JSON-RPC: `fundpsbt` and `utxopsbt` will refuse to spend funds below `min-emergency-msat` if we have any anchor channels.
2023-06-29 11:28:47 -04:00
..
test global: thread zero fee option everywhere. 2023-06-29 11:28:47 -04:00
.gitignore Ignore all the deamon inside the git history 2021-10-28 15:51:38 +02:00
anchorspend.c global: thread zero fee option everywhere. 2023-06-29 11:28:47 -04:00
anchorspend.h lightningd: code to spend anchor outputs if we want to boost commitment tx. 2023-06-29 11:28:47 -04:00
bitcoind.c feat(bitcoind): pass the current known block height 2023-06-13 16:27:10 +02:00
bitcoind.h feat(bitcoind): pass the current known block height 2023-06-13 16:27:10 +02:00
chaintopology.c global: thread zero fee option everywhere. 2023-06-29 11:28:47 -04:00
chaintopology.h lightningd: use lowball feerate for commit_tx on anchor channels. 2023-06-29 11:28:47 -04:00
channel.c lightningd: don't let them fundpsbt below emergency reserve. 2023-06-29 11:28:47 -04:00
channel.h lightningd: don't let them fundpsbt below emergency reserve. 2023-06-29 11:28:47 -04:00
channel_control.c channeld: for anchors, use minrelayfee as minimum commit tx fee to allow. 2023-06-29 11:28:47 -04:00
channel_control.h doc: update BOLTs to bc86304b4b0af5fd5ce9d24f74e2ebbceb7e2730 2022-09-12 09:34:52 +09:30
channel_state.h wallet: make it clear that enum state_change is in db. 2023-03-25 15:28:02 +10:30
closed_channel.c lightningd: add listclosedchannels command. 2023-03-25 15:28:02 +10:30
closed_channel.h lightningd: add listclosedchannels command. 2023-03-25 15:28:02 +10:30
closing_control.c global: thread zero fee option everywhere. 2023-06-29 11:28:47 -04:00
closing_control.h lightningd: trace JSON id prefixes through sendrawtx. 2022-09-16 12:31:45 +09:30
coin_mvts.c lightningd: use hash map for peers instead of linked list. 2023-01-21 08:05:31 -06:00
coin_mvts.h coin_mvt: tiny, dont import lightningd header 2022-02-07 13:02:09 +10:30
configs.c setconfig: hook into plugin infrastructure for setconfig. 2023-06-20 20:08:25 +09:30
connect_control.c lightningd: listconfigs update, using configvars code. 2023-06-03 10:50:29 +09:30
connect_control.h lightningd: tell connectd we're shutting down. 2023-02-05 20:40:47 +01:00
datastore.c lightningd: unescape JSON strings for db. 2023-02-11 12:22:40 -06:00
dual_open_control.c global: thread zero fee option everywhere. 2023-06-29 11:28:47 -04:00
dual_open_control.h lightningd: prepare internal json routines for listpeerchannels. 2023-01-13 10:42:42 +10:30
feerate.c lightningd: use lowball feerate for commit_tx on anchor channels. 2023-06-29 11:28:47 -04:00
feerate.h lightningd: clean up feerate handling, deprecate old terms. 2023-04-10 07:31:12 +09:30
gossip_control.c cleanup: rename json_add_amount_msat_only to json_add_amount_msat 2023-03-18 15:55:49 +10:30
gossip_control.h gossipd: batch outpoints spent, add block height. 2022-09-24 15:22:27 +09:30
hsm_control.c lightningd: turn on experimental support for zero-fee htlc anchors. 2023-06-29 11:28:47 -04:00
hsm_control.h lightningd: create small hsm_sync_req() helper for hsm queries. 2023-04-10 17:26:47 +09:30
htlc_end.c channeld: don't calculate blinding shared secret, let lightningd do it. 2022-10-26 11:29:06 +10:30
htlc_end.h channeld: don't calculate blinding shared secret, let lightningd do it. 2022-10-26 11:29:06 +10:30
htlc_set.c Makefile: update bolts a0bbe47b0278b4f152dbaa4f5fab2562413a217c 2023-04-07 21:22:56 +09:30
htlc_set.h Makefile: use completely separate spec-derived files for EXPERIMENTAL_FEATURES 2020-09-08 09:42:00 +09:30
invoice.c pay, decodepay: handle descriptions with " inside them where we use hashed descriptions. 2023-06-22 13:23:21 +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 database: pull out database code into a new module 2022-03-05 15:03:34 +10:30
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
jsonrpc.c common: remove json_stream_log_suppress 2023-06-05 16:16:21 +02:00
jsonrpc.h lightningd: only use non-numeric JSON ids if plugin says we can. 2022-11-21 11:23:54 +01:00
lightningd.c config: add min-emergency-msat option. 2023-06-29 11:28:47 -04:00
lightningd.h config: add min-emergency-msat option. 2023-06-29 11:28:47 -04:00
log.c lightningd, libplugins: allocate opt strings from tmpctx, not NULL. 2023-06-20 20:08:25 +09:30
log.h options: let log-level subsystem filter also cover nodeid. 2022-07-09 09:59:52 +09:30
log_status.c check: make sure all files outside contrib/ include "config.h" first. 2021-12-06 10:05:39 +10:30
log_status.h cleanup: remove unneeded includes in header files. 2021-09-17 09:43:22 +09:30
Makefile lightningd: code to spend anchor outputs if we want to boost commitment tx. 2023-06-29 11:28:47 -04:00
memdump.c lightningd: fix parent reporting for memleaks. 2023-04-10 17:26:47 +09:30
memdump.h lightningd: simplify memleak code. 2022-03-10 09:40:09 +10:30
notification.c cleanup: rename json_add_amount_msat_only to json_add_amount_msat 2023-03-18 15:55:49 +10:30
notification.h jsonrpc: make error codes an enum. 2022-09-19 10:18:55 +09:30
offer.c lightningd: create small hsm_sync_req() helper for hsm queries. 2023-04-10 17:26:47 +09:30
onchain_control.c global: thread zero fee option everywhere. 2023-06-29 11:28:47 -04:00
onchain_control.h onchaind: remove 'is_replay' logic 2021-12-28 04:42:42 +10:30
onion_message.c common: update to latest onion-message spec. 2023-01-30 13:24:29 +10:30
onion_message.h common: remove support for pre v0.10.2 onionmessages. 2021-12-01 05:44:28 +10:30
opening_common.c lightningd: create small hsm_sync_req() helper for hsm queries. 2023-04-10 17:26:47 +09:30
opening_common.h openingd: Add reserve to fundchannel and multifundchannel 2022-09-21 11:25:47 +02:00
opening_control.c global: thread zero fee option everywhere. 2023-06-29 11:28:47 -04:00
opening_control.h lightningd: prepare internal json routines for listpeerchannels. 2023-01-13 10:42:42 +10:30
options.c lightningd: don't let them fundpsbt below emergency reserve. 2023-06-29 11:28:47 -04:00
options.h lightningd: move listconfigs into configs.c 2023-06-20 20:08:25 +09:30
pay.c Makefile: update bolts a0bbe47b0278b4f152dbaa4f5fab2562413a217c 2023-04-07 21:22:56 +09:30
pay.h jsonrpc: make error codes an enum. 2022-09-19 10:18:55 +09:30
peer_control.c global: thread zero fee option everywhere. 2023-06-29 11:28:47 -04:00
peer_control.h Persist feature bits across restarts 2023-06-20 10:07:11 +09:30
peer_fd.c subdaemons: remove gossipd fd from per-peer daemons. 2022-02-08 11:15:52 +10:30
peer_fd.h subdaemons: remove gossipd fd from per-peer daemons. 2022-02-08 11:15:52 +10:30
peer_htlcs.c ld: Add a couple of logging statements when forwarding 2023-04-11 11:22:30 +09:30
peer_htlcs.h lightningd: fix valgrind reported leak when we exit early. 2023-01-17 14:13:45 +10:30
ping.c common: clean up json routine locations. 2022-07-15 12:24:00 -05:00
plugin.c lightningd: call setconfig on plugins' dynamic options. 2023-06-20 20:08:25 +09:30
plugin.h setconfig: hook into plugin infrastructure for setconfig. 2023-06-20 20:08:25 +09:30
plugin_control.c lightningd: wire plugin command JSON id through to plugin commands. 2022-09-16 12:31:45 +09:30
plugin_control.h plugins: add command field to subcommand output. 2021-06-25 09:49:33 +09:30
plugin_hook.c lightningd: don't call memcpy with NULL. 2023-01-12 11:44:10 +10:30
plugin_hook.h plugin: wire JSON id for commands which caused hooks to fire. 2022-09-16 12:31:45 +09:30
routehint.c lightnind: use aliases in routehints for private channels. 2022-08-09 16:31:36 -05:00
routehint.h invoice: overhaul routehints to use topology.listincoming, cleanup. 2021-06-16 10:29:17 +09:30
signmessage.c lightningd: create small hsm_sync_req() helper for hsm queries. 2023-04-10 17:26:47 +09:30
subd.c lightningd: more graceful shutdown. 2022-09-12 14:00:41 +02:00
subd.h lightningd: more graceful shutdown. 2022-09-12 14:00:41 +02:00
watch.c lightningd/chaintopology: ensure htables are always tal objects. 2023-01-12 11:44:10 +10:30
watch.h Remove names of parameters of callbacks which confuse gcc. 2022-08-31 12:18:28 +03:00