core-lightning/lightningd
Rusty Russell a2c6ec6c9b lightningd: use tal_link for log_book.
BackgroundL Each log has a log_book: many logs can share the same one,
as each one can have a separate prefix.

Testing tickled a bug at the end of this series, where subd was
logging to the peer's log_book on shutdown, but the peer was already
freed.  We've already had issues with logging while lightningd is
shutting down.

There are times when reference counting really is the right answer,
this seems to be one of them: the 'struct log' share the 'struct
log_book' and the last 'struct log' cleans it up.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2018-02-19 02:56:51 +00:00
..
test lightningd: use tal_link for log_book. 2018-02-19 02:56:51 +00:00
.gitignore handshaked: remove. 2017-10-20 18:31:32 +02:00
bitcoind.c bitcoind: trivial cleanups. 2018-02-01 03:12:43 +00:00
bitcoind.h lightningd: bitcoind and topology routines take channel, not peer. 2018-02-14 11:31:58 +01:00
build_utxos.c wallet: Use newindex primitive to generate change key index 2018-01-08 17:19:25 +01:00
build_utxos.h build_utxos: fix weight calculation, and make more accurate. 2017-12-20 12:56:15 +01:00
chaintopology.c chaintopology: fix 100 block subtraction. 2018-02-16 13:07:12 +01:00
chaintopology.h lightningd: bitcoind and topology routines take channel, not peer. 2018-02-14 11:31:58 +01:00
channel.c wallet: don't use rowid for the channel's DBID. 2018-02-19 02:56:51 +00:00
channel.h wallet: don't use rowid for the channel's DBID. 2018-02-19 02:56:51 +00:00
dev_ping.c lightningd: split struct peer into struct peer and struct channel. 2018-02-14 11:31:58 +01:00
gossip_control.c gossip: Fix up some comments on PR #955 2018-02-11 11:40:59 +01:00
gossip_control.h gossipd: rewrite to do the handshake internally. 2017-10-20 18:31:32 +02:00
gossip_msg.c tools/generate_wire.py: make varlen structs self-allocate. 2018-02-08 19:07:12 +01:00
gossip_msg.h tools/generate_wire.py: make varlen structs self-allocate. 2018-02-08 19:07:12 +01:00
hsm_control.c hsm: give it its own log, so it has unique prefix. 2018-02-07 00:46:49 +00:00
hsm_control.h lightningd/hsm_control: use a simple fd for HSM. 2017-06-27 10:25:53 +09:30
htlc_end.c Rename (almost) all destructors to destroy_<type>. 2018-02-14 11:31:58 +01:00
htlc_end.h htlc: keep channel pointer, not peer pointer. 2018-02-14 11:31:58 +01:00
invoice.c invoice: Disable overlong description. 2018-02-19 02:42:11 +00:00
invoice.h invoices: Extensive reorganization of invoice system. 2018-01-16 13:03:54 +01:00
jsonrpc_errors.h payalgo: Create a new failure for paying expired invoice. 2018-02-18 13:51:37 +01:00
jsonrpc.c jsonrpc: allow multiple commands in-flight from single JSON connection. 2018-02-16 17:51:04 +01:00
jsonrpc.h jsonrpc: allow multiple commands in-flight from single JSON connection. 2018-02-16 17:51:04 +01:00
lightningd.c lightningd: use tal_link for log_book. 2018-02-19 02:56:51 +00:00
lightningd.h lightningd: use tal_link for log_book. 2018-02-19 02:56:51 +00:00
log_status.c status: generate messages rather than marshal/unmarshal manually. 2018-02-08 19:07:12 +01:00
log_status.h status: add multiple levels of logging. 2018-02-07 00:46:49 +00:00
log.c lightningd: use tal_link for log_book. 2018-02-19 02:56:51 +00:00
log.h lightningd: use tal_link for log_book. 2018-02-19 02:56:51 +00:00
Makefile payalgo: New file for pay command. 2018-02-16 13:08:29 +01:00
memdump.c Start all command descriptions with a verb ("Show", "Set", etc.). Remove unused help texts. 2018-01-23 13:32:44 +01:00
netaddress.c Fix a-vs-an typos 2018-02-08 22:49:34 +01:00
netaddress.h wireaddr: add ip[:port] parsing 2017-12-21 09:56:20 +00: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 lightningd: implement --daemon. 2018-02-16 13:02:41 +01:00
options.h lightningd: --deprecated-api option to turn off deprecated APIs. 2018-01-19 22:23:45 +00:00
pay.c payalgo: Repeat pay command if possible. 2018-02-16 13:08:29 +01:00
pay.h payalgo: New file for pay command. 2018-02-16 13:08:29 +01:00
payalgo.c payalgo: Create a new failure for paying expired invoice. 2018-02-18 13:51:37 +01:00
payalgo.h payalgo: New file for pay command. 2018-02-16 13:08:29 +01:00
peer_control.c lightningd: use tal_link for log_book. 2018-02-19 02:56:51 +00:00
peer_control.h wallet: don't implicitly remove peers, but do it explicitly. 2018-02-14 11:31:58 +01:00
peer_htlcs.c onchain: handle case where multiple HTLCs exist for same payment_hash. 2018-02-14 11:57:42 +01:00
peer_htlcs.h lightningd/peer_htlcs: remove remaining peer_ shims. 2018-02-14 11:31:58 +01:00
peer_state.h wallet: don't use rowid for the channel's DBID. 2018-02-19 02:56:51 +00:00
subd.c Rename (almost) all destructors to destroy_<type>. 2018-02-14 11:31:58 +01:00
subd.h subd: keep pointer to channel, not peer. 2018-02-14 11:31:58 +01:00
txfilter.c txfilter: Expose the txfilter_add_scriptpubkey function 2018-01-08 17:19:25 +01:00
txfilter.h txfilter: Expose the txfilter_add_scriptpubkey function 2018-01-08 17:19:25 +01:00
watch.c lightningd: bitcoind and topology routines take channel, not peer. 2018-02-14 11:31:58 +01:00
watch.h lightningd: bitcoind and topology routines take channel, not peer. 2018-02-14 11:31:58 +01:00