core-lightning/common
Rusty Russell c9a907cd71 common: handle peer input before gossipd input (for closingd, openingd)
Similar to the previous "handle peer input before gossip input", this
fixes similar potential deadlock for closingd and openingd which use
peer_or_gossip_sync_read.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2019-01-29 11:45:17 +01:00
..
test jsmn: upgrade so JSMN_OBJECT's size parameter is usable. 2019-01-17 16:22:32 +01:00
base32.c Remove tal_len, use tal_count() or tal_bytelen(). 2018-07-30 11:31:17 +02:00
base32.h common/base32: make this a simple tal-wrapper around ccan/base32. 2018-05-10 02:28:44 +00:00
bech32.c bech32: fix overflow bug. 2018-11-02 05:58:01 +00:00
bech32.h Use expected LIGHTNING_DIR_FILE_H define 2018-03-25 23:54:21 +00:00
bech32_util.c Remove tal_len, use tal_count() or tal_bytelen(). 2018-07-30 11:31:17 +02:00
bech32_util.h common: Moving some bech32 related utilities to bech32_util 2018-04-25 12:34:55 +02:00
bip32.c common: move some files out of lightningd/ 2017-08-29 17:54:14 +02:00
bip32.h headers: fix up header idempotent lines. 2017-08-29 17:54:14 +02:00
bolt11.c bolt11: fix encoding of routes of length > 1. 2019-01-15 12:01:38 +01:00
bolt11.h bolt11: allow multiple fallback addresses. 2018-04-06 14:26:53 +02:00
channel_config.c common: move some files out of lightningd/ 2017-08-29 17:54:14 +02:00
channel_config.h struct channel: remove most helpers. 2018-11-21 21:43:37 +00:00
close_tx.c channeld: tiebreak identical HTLC outputs by CLTV. 2018-10-23 16:55:35 +02:00
close_tx.h Use expected LIGHTNING_DIR_FILE_H define 2018-03-25 23:54:21 +00:00
configdir.c lightningd: fix double-specified args. 2018-05-05 17:55:10 +02:00
configdir.h options: don't leak memory when people override options. 2017-12-13 22:46:10 +01:00
crypto_state.c crypto_state: move to its own file. 2017-10-20 18:31:32 +02:00
crypto_state.h crypto_state: move to its own file. 2017-10-20 18:31:32 +02:00
crypto_sync.c crypto_sync: sync_crypto_write_no_delay to flush TCP after critical packets. 2018-08-10 12:46:45 +02:00
crypto_sync.h crypto_sync: sync_crypto_write_no_delay to flush TCP after critical packets. 2018-08-10 12:46:45 +02:00
cryptomsg.c common/cryptomsg: remove unused async routines. 2018-09-28 04:14:28 +00:00
cryptomsg.h common/cryptomsg: remove unused async routines. 2018-09-28 04:14:28 +00:00
daemon.c plugin/libplugin: API for C plugins. 2019-01-17 13:02:24 +01:00
daemon.h plugin/libplugin: API for C plugins. 2019-01-17 13:02:24 +01:00
daemon_conn.c daemon_conn: don't rely on outq_empty callback telling us to retry queue. 2018-11-21 00:36:31 +00:00
daemon_conn.h daemon_conn: don't rely on outq_empty callback telling us to retry queue. 2018-11-21 00:36:31 +00:00
decode_short_channel_ids.c utils: make tal_arr_expand safer. 2019-01-15 12:01:38 +01:00
decode_short_channel_ids.h Update to latest BOLT version. 2018-07-01 17:37:03 +02:00
derive_basepoints.c derive_basepoints: harden checking. 2018-08-23 14:46:22 +02:00
derive_basepoints.h derive_basepoints: harden checking. 2018-08-23 14:46:22 +02:00
dev_disconnect.c Spelling corrections (#824) 2018-01-29 04:46:54 +00:00
dev_disconnect.h Add DEVELOPER flag, set by default. 2017-10-26 12:53:09 +02:00
features.c option_data_loss_protect: reenable by default 2019-01-21 00:48:25 +00:00
features.h features: add local_feature_negotiated / global_feature_negotiated helpers. 2018-12-06 23:11:51 +01:00
funding_tx.c common: make funding_tx and withdraw_tx share UTXO code. 2018-12-06 23:11:51 +01:00
funding_tx.h bitcoin: create new wrapper type bitcoin_txid, log backward endianness. 2017-12-21 11:05:38 +00:00
hash_u5.c common/hash_u5: routines to hash 5 bit values. 2017-11-01 01:09:23 +00:00
hash_u5.h common/hash_u5: routines to hash 5 bit values. 2017-11-01 01:09:23 +00:00
htlc.h Remove unused functions not covered by unit tests 2018-03-28 11:22:05 +02:00
htlc_state.c common: absorb remaining files from daemon/ 2017-08-29 17:54:14 +02:00
htlc_state.h Fix a-vs-an typos 2018-02-08 22:49:34 +01:00
htlc_tx.c signature: wrap almost all signatures in struct bitcoin_signature. 2018-12-06 23:11:51 +01:00
htlc_tx.h signature: wrap almost all signatures in struct bitcoin_signature. 2018-12-06 23:11:51 +01:00
htlc_wire.c Remove tal_len, use tal_count() or tal_bytelen(). 2018-07-30 11:31:17 +02:00
htlc_wire.h channeld: always receive and maintain short_channel_id of failing channel. 2018-07-27 14:12:00 +02:00
initial_channel.c struct channel: keep a copy of configs, not just pointers. 2018-11-21 21:43:37 +00:00
initial_channel.h struct channel: keep a copy of configs, not just pointers. 2018-11-21 21:43:37 +00:00
initial_commit_tx.c bolt: Updated the BOLT specification to a07dc3df3b4611989e3359f28f96c574f7822850 2019-01-15 02:19:56 +00:00
initial_commit_tx.h commit_tx: make fee msat vs sat explicit. 2018-12-15 13:50:15 +01:00
io_lock.c common/io_lock: add helper to query if lock is taken. 2018-10-19 22:02:11 +00:00
io_lock.h common/io_lock: add helper to query if lock is taken. 2018-10-19 22:02:11 +00:00
json.c json: add more efficient iterators for objects and arrays. 2019-01-17 16:22:32 +01:00
json.h json: add more efficient iterators for objects and arrays. 2019-01-17 16:22:32 +01:00
json_command.h param: make command_fail/command_success WARN_UNUSED_RESULT. 2018-12-20 03:22:32 +00:00
json_escaped.c Move json and param core functionality into common, for plugins. 2018-12-10 00:00:50 +00:00
json_escaped.h Move json and param core functionality into common, for plugins. 2018-12-10 00:00:50 +00:00
json_helpers.c json: move bitcoin/lightning specific helpers into common/json_helpers. 2019-01-15 12:01:38 +01:00
json_helpers.h json: move bitcoin/lightning specific helpers into common/json_helpers. 2019-01-15 12:01:38 +01:00
json_tok.c json: move bitcoin/lightning specific helpers into common/json_helpers. 2019-01-15 12:01:38 +01:00
json_tok.h json: move bitcoin/lightning specific helpers into common/json_helpers. 2019-01-15 12:01:38 +01:00
jsonrpc_errors.h openingd/json_fund_channel: 2019-01-29 04:50:01 +00:00
key_derive.c bolt: Updated the BOLT specification to the latest version 2019-01-15 02:19:56 +00:00
key_derive.h headers: fix up header idempotent lines. 2017-08-29 17:54:14 +02:00
keyset.c bolt: Updated the BOLT specification to the latest version 2019-01-15 02:19:56 +00:00
keyset.h common/keyset: use struct basepoints rather than open-coding fields. 2018-07-24 00:40:01 +02:00
Makefile json: move bitcoin/lightning specific helpers into common/json_helpers. 2019-01-15 12:01:38 +01:00
memleak.c utils: make tal_arr_expand safer. 2019-01-15 12:01:38 +01:00
memleak.h memleak: allow for scanning non-talloc regions. 2018-08-24 19:54:32 +02:00
msg_queue.c utils: make tal_arr_expand safer. 2019-01-15 12:01:38 +01:00
msg_queue.h common/msg_queue: make it a tal object. 2018-10-29 04:06:16 +00:00
overflows.h The overflow check mul_overflows_s64(int64_t, int64_t) overflows and triggers UB :-) Remove it 2018-03-27 23:18:48 +00:00
param.c libplugin: quick fix for bad JSON produced by plugins on bad paramters. 2019-01-21 11:20:11 +01:00
param.h param: make json_tok_ handlers all return command_result, rename to param_ 2018-12-20 03:22:32 +00:00
peer_billboard.c common: peer_billboard() helper for updating the billboard. 2018-02-23 18:02:00 +01:00
peer_billboard.h common: peer_billboard() helper for updating the billboard. 2018-02-23 18:02:00 +01:00
peer_failed.c peer_failed: write error message to peer directly. 2018-08-09 19:44:27 +02:00
peer_failed.h common/read_peer_msg: deconstruct into individual helper routines. 2018-08-05 02:03:58 +00:00
peer_status_wire.csv gossipd: drain fd instead of passing around gossip index. 2018-04-26 05:47:57 +00:00
permute_tx.c channeld: tiebreak identical HTLC outputs by CLTV. 2018-10-23 16:55:35 +02:00
permute_tx.h channeld: tiebreak identical HTLC outputs by CLTV. 2018-10-23 16:55:35 +02:00
ping.c Remove tal_len, use tal_count() or tal_bytelen(). 2018-07-30 11:31:17 +02:00
ping.h pong: embed version string into ping replies if DEVELOPER=1. 2018-02-22 12:24:26 +01:00
pseudorand.c common: absorb remaining files from daemon/ 2017-08-29 17:54:14 +02:00
pseudorand.h headers: fix up header idempotent lines. 2017-08-29 17:54:14 +02:00
read_peer_msg.c common: handle peer input before gossipd input (for closingd, openingd) 2019-01-29 11:45:17 +01:00
read_peer_msg.h common/read_peer_msg: remove. 2018-08-05 02:03:58 +00:00
socket_close.c closingd: Ensure proper closing of TCP socket. 2018-05-09 04:43:21 +00:00
socket_close.h closingd: Ensure proper closing of TCP socket. 2018-05-09 04:43:21 +00:00
sphinx.c sphinx: use struct pubkey. 2019-01-08 19:20:28 +01:00
sphinx.h sphinx: use struct pubkey. 2019-01-08 19:20:28 +01:00
status.c pytest: fix spurious valgrind output. 2019-01-17 13:02:24 +01:00
status.h status: make status_io a more generic mechanism. 2018-05-10 02:28:44 +00:00
status_levels.h status: separate types for peer failure vs "impossible" failures. 2018-02-08 19:07:12 +01:00
status_wire.c status: generate messages rather than marshal/unmarshal manually. 2018-02-08 19:07:12 +01:00
status_wire.csv status: make status_io a more generic mechanism. 2018-05-10 02:28:44 +00:00
status_wire.h status: generate messages rather than marshal/unmarshal manually. 2018-02-08 19:07:12 +01:00
subdaemon.c plugin/libplugin: API for C plugins. 2019-01-17 13:02:24 +01:00
subdaemon.h common/subdaemon: helpers for dumping memleaks in subdaemons. 2018-11-22 05:15:42 +00:00
timeout.c utils: remove tal_tmpctx altogether, use global. 2018-03-16 00:16:10 +00:00
timeout.h headers: fix up header idempotent lines. 2017-08-29 17:54:14 +02:00
type_to_string.c Fix order of includes 2018-03-06 19:26:21 +01:00
type_to_string.h short_channel_id_dir: new primitive for one direction of short_channel_id 2019-01-15 12:01:38 +01:00
utils.c common: Add tal_arr_remove helper 2018-12-05 23:15:59 +00:00
utils.h utils: make tal_arr_expand safer. 2019-01-15 12:01:38 +01:00
utxo.c common: make funding_tx and withdraw_tx share UTXO code. 2018-12-06 23:11:51 +01:00
utxo.h common: make funding_tx and withdraw_tx share UTXO code. 2018-12-06 23:11:51 +01:00
version.c Make version output simpler/more user-friendly 2018-04-04 02:32:44 +00:00
version.h Onboarding: Make log output texts friendlier to new users 2018-01-29 03:22:27 +00:00
wallet_tx.c wallet_tx: make wtx_select_utxos return command_result. 2018-12-20 03:22:32 +00:00
wallet_tx.h wallet_tx: make wtx_select_utxos return command_result. 2018-12-20 03:22:32 +00:00
wire_error.c Remove tal_len, use tal_count() or tal_bytelen(). 2018-07-30 11:31:17 +02:00
wire_error.h common: fix up BOLT 1 references. 2018-06-18 12:31:09 +02:00
wireaddr.c wireaddr: update bolt version, remove 'padding' from addresses. 2018-10-28 23:51:05 +00:00
wireaddr.h wireaddr: update bolt version, remove 'padding' from addresses. 2018-10-28 23:51:05 +00:00
withdraw_tx.c common: make funding_tx and withdraw_tx share UTXO code. 2018-12-06 23:11:51 +01:00
withdraw_tx.h Change withdraw_tx to accept scriptpubkey rather than plain address. 2017-12-13 03:10:04 +00:00