core-lightning/lightningd
Christian Decker b6d583c26a db: Move tracking of pending statements into the struct db
We now have a much stronger consistency check from the combination of
transaction wrapping, tal memory leak detection. Tramsaction wrapping ensures
that each statement is executed before the transaction is committed. The
commit is also driven by the `io_loop`, which means that it is no longer
possible for us to have statements outside of transactions and transactions
are guaranteed to commit at the round's end.

By adding the tal-awareness we can also get a much better indication as to
whether we have un-freed statements flying around, which we can test at the
end of the round as well.

Signed-off-by: Christian Decker <decker.christian@gmail.com>
2019-09-05 23:41:05 +00:00
..
test db: Move tracking of pending statements into the struct db 2019-09-05 23:41:05 +00:00
.gitignore
bitcoind.c bitcoind: Defer initialization of filteredblock_call->result 2019-08-20 00:07:38 +00:00
bitcoind.h bitcoind: detect when it's still syncing, add field to getinfo. 2019-08-10 22:09:09 +02:00
chaintopology.c lightningd: add flag for whether we're synced, and callback infrastructure. 2019-08-10 22:09:09 +02:00
chaintopology.h lightningd: add flag for whether we're synced, and callback infrastructure. 2019-08-10 22:09:09 +02:00
channel_control.c channeld: get current block height when an HTLC fails. 2019-08-29 09:01:48 +02:00
channel_control.h common/per_per_state: generalize lightningd/peer_comm Part 1 2019-06-04 01:29:39 +00:00
channel_state.h wallet: Add a final CLOSED state to channels 2019-06-30 16:41:30 +09:30
channel.c tx: Add chainparams when deserializing transactions from wire msgs 2019-07-31 23:22:54 +00:00
channel.h lightningd: add slow_reconnect flag for transient failure. 2019-07-26 03:53:03 +00:00
closing_control.c Spec: Update to latest BOLT, include our first global feature definition. 2019-08-29 09:01:48 +02:00
closing_control.h common/per_per_state: generalize lightningd/peer_comm Part 1 2019-06-04 01:29:39 +00:00
connect_control.c lightningd: add slow_reconnect flag for transient failure. 2019-07-26 03:53:03 +00:00
connect_control.h Use node_id everywhere for nodes. 2019-04-09 12:37:16 -07:00
gossip_control.c bitcoind: Defer initialization of filteredblock_call->result 2019-08-20 00:07:38 +00:00
gossip_control.h connectd: wean off gossip_wire message types, use our own. 2018-07-25 02:13:52 +00:00
gossip_msg.c listchannels: add htlc_minimum_msat and htlc_maximum_msat fields. 2019-06-11 23:19:11 +00:00
gossip_msg.h listchannels: add htlc_minimum_msat and htlc_maximum_msat fields. 2019-06-11 23:19:11 +00:00
hsm_control.c hsmd: Tell hsmd which chain we are working on 2019-07-31 23:22:54 +00:00
hsm_control.h Use node_id everywhere for nodes. 2019-04-09 12:37:16 -07:00
htlc_end.c wallet: Add received_time to htlc_in for forwarding times 2019-04-10 23:48:39 +00:00
htlc_end.h wallet: Add received_time to htlc_in for forwarding times 2019-04-10 23:48:39 +00:00
invoice.c json: Make payment_hash use json_add_sha256 2019-08-21 09:32:21 +08:00
invoice.h lightningd: move local invoice resolution into invoice.c function. 2019-04-12 03:32:48 +00:00
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_stream.c lightningd: restore ' ' before '}' for older pylightning. 2019-06-17 21:46:25 +02:00
json_stream.h lightningd: restore ' ' before '}' for older pylightning. 2019-06-17 21:46:25 +02:00
json.c json: Add the json interface for struct sha256 2019-08-21 09:32:21 +08:00
json.h json: Add the json interface for struct sha256 2019-08-21 09:32:21 +08:00
jsonrpc.c json: Make payment_hash use json_add_sha256 2019-08-21 09:32:21 +08:00
jsonrpc.h lightningd: tighten interal json_stream API. 2019-06-12 02:00:15 +00:00
lightningd.c db: Move tracking of pending statements into the struct db 2019-09-05 23:41:05 +00:00
lightningd.h Added possibility to configure max_concurrent_htlcs value for our channels. Eclaire has a default of 30 and I thought why not going with their value and while doing so make it configureable. 2019-08-09 05:45:06 +00:00
log_status.c log: add 'warning' notification when log 2019-06-07 01:23:51 +00:00
log_status.h
log.c log: make --log-file an early arg (since we move to dir early now). 2019-08-05 17:09:57 +08:00
log.h log: add 'warning' notification when log 2019-06-07 01:23:51 +00:00
Makefile bigsize: make it a proper first-class type. 2019-07-31 23:25:59 +00:00
memdump.c json-rpc: Add size and cumulative size to dev-memdump 2019-08-04 20:54:53 +02:00
memdump.h lightningd: add code to search strmaps for memleak detection. 2019-02-07 20:33:50 +00:00
notification.c wallet: Use struct sha256 for payment_hash in struct forwarding 2019-08-21 09:32:21 +08:00
notification.h lightningd/notification: Add missing includes for 'forward_event' 2019-08-07 01:55:38 +00:00
onchain_control.c tx: Add chainparams when deserializing transactions from wire msgs 2019-07-31 23:22:54 +00:00
onchain_control.h onchaind: Replay stored channeltxs to restore onchaind state 2018-04-25 14:33:38 +02:00
opening_control.c funding: don't allow funding new channels until we're synced. 2019-08-10 22:09:09 +02:00
opening_control.h common/per_per_state: generalize lightningd/peer_comm Part 1 2019-06-04 01:29:39 +00:00
options.c lightningd: create --list-features-only which lists what features we support. 2019-08-29 09:01:48 +02:00
options.h opt: make sure early cmdline options override config file. 2019-07-27 05:16:22 +00:00
pay.c lightningd: expose full onion error when we have it. 2019-08-29 09:01:48 +02:00
pay.h lightningd: move pay internals back into pay.c 2019-01-23 22:08:08 +01:00
peer_control.c lightningd: delay reprocessing of incoming htlcs at startup until plugins ready. 2019-09-01 16:55:32 +02:00
peer_control.h lightningd: delay reprocessing of incoming htlcs at startup until plugins ready. 2019-09-01 16:55:32 +02:00
peer_htlcs.c lightningd: delay reprocessing of incoming htlcs at startup until plugins ready. 2019-09-01 16:55:32 +02:00
peer_htlcs.h lightningd: delay reprocessing of incoming htlcs at startup until plugins ready. 2019-09-01 16:55:32 +02:00
ping.c bolt: update to BOLT spec changes (extract format + type specifications) 2019-07-16 06:10:58 +00:00
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 plugin: notice when plugin has *started* configuring. 2019-07-30 08:44:01 +08:00
plugin_control.h lightningd/plugin_control: add a 'plugin' command 2019-07-28 07:24:04 +00:00
plugin_hook.c lightningd/plugin_hook: make it possible to unregister a hook 2019-07-28 07:24:04 +00:00
plugin_hook.h lightningd/plugin_hook: make it possible to unregister a hook 2019-07-28 07:24:04 +00:00
plugin.c lightningd/plugin: extend plugins->startup window to include plugins_config 2019-08-27 00:02:20 +00:00
plugin.h plugin: notice when plugin has *started* configuring. 2019-07-30 08:44:01 +08:00
subd.c db: Make the db struct private and provide accessors instead 2019-09-05 23:41:05 +00:00
subd.h common: add peer_error flag to treat this error as "soft". 2019-07-26 03:53:03 +00:00
watch.c lightningd: fix occasional missing txid detection. 2019-06-28 03:31:43 +00:00
watch.h lightningd: fix occasional missing txid detection. 2019-06-28 03:31:43 +00:00