core-lightning/lightningd
Rusty Russell 72c459dd6c gossipd: keep reaching struct only when we're actively connecting, and don't retry
1. Lifetime of 'struct reaching' now only while we're actively doing connect.
2. Always free after a single attempt: if it's an important peer, retry
   on a timer.
3. Have a single response message to master, rather than relying on
   peer_connected on success and other msgs on failure.
4. If we are actively connecting and we get another command for the same
   id, just increment the counter

The result is much simpler in the master daemon, and much nicer for
reconnection: if they say to connect they get an immediate response,
rather than waiting for 10 retries.  Even if it's an important peer,
it fires off another reconnect attempt, unless it's actively
connecting now.

This removes exponential backoff: that's restored in next patch.  It
also doesn't handle multiple addresses for a single peer.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2018-04-26 05:47:57 +00:00
..
test chaintopology: Simplify rescan offset computation 2018-04-25 14:33:38 +02:00
.gitignore handshaked: remove. 2017-10-20 18:31:32 +02:00
bitcoind.c Support debugging with lldb 2018-04-15 17:42:24 +02:00
bitcoind.h Add --bitcoin-rpcport option to pass to bitcoin-rpc 2018-03-25 23:17:36 +02:00
build_utxos.c Remove include in file foo.c that is already included in foo.h 2018-03-25 23:54:21 +00:00
build_utxos.h build_utxos: fix weight calculation, and make more accurate. 2017-12-20 12:56:15 +01:00
chaintopology.c chaintopology: Simplify rescan offset computation 2018-04-25 14:33:38 +02:00
chaintopology.h topo: Remove in-memory txs from the block struct 2018-04-13 00:04:37 +02:00
channel.c openingd: tell gossipd that the peer is important once funding tx in place. 2018-04-26 05:47:57 +00:00
channel.h channel: Allow channel lookup by database id 2018-04-25 14:33:38 +02:00
channel_control.c lightningd: re-allow closing negotiation when CLOSINGD_COMPLETE 2018-04-23 20:18:15 +00:00
channel_control.h channeld: don't do explicit state update. 2018-04-23 20:18:15 +00:00
channel_state.h channel_states: fold all the ONCHAIND states into one. 2018-02-23 18:02:00 +01:00
closing_control.c openingd: tell gossipd that the peer is important once funding tx in place. 2018-04-26 05:47:57 +00:00
closing_control.h lightningd: re-allow closing negotiation when CLOSINGD_COMPLETE 2018-04-23 20:18:15 +00:00
connect_control.c gossipd: keep reaching struct only when we're actively connecting, and don't retry 2018-04-26 05:47:57 +00:00
connect_control.h gossipd: keep reaching struct only when we're actively connecting, and don't retry 2018-04-26 05:47:57 +00:00
dev_ping.c lightningd/json: Move json helpers specific for lightningd to new module. 2018-03-19 00:27:55 +00:00
gossip_control.c gossipd: keep reaching struct only when we're actively connecting, and don't retry 2018-04-26 05:47:57 +00:00
gossip_control.h gossip: Add function to notify gossipd about an outpoint spend 2018-03-30 16:35:00 +02:00
gossip_msg.c change spaces to tabs, align function parameters 2018-04-21 15:55:00 +02:00
gossip_msg.h jsonrpc: Return the channel capacity for listchannels 2018-03-12 22:34:51 +00:00
hsm_control.c utils: remove tal_tmpctx altogether, use global. 2018-03-16 00:16:10 +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 Remove unused parameter ptr in corrupt(const void *ptr, ...) 2018-02-22 10:46:30 +01:00
htlc_end.h htlc: keep channel pointer, not peer pointer. 2018-02-14 11:31:58 +01:00
invoice.c invoice: Check duplicate preimage when explicitly sprcified. 2018-04-26 05:47:09 +00:00
invoice.h invoices: Extensive reorganization of invoice system. 2018-01-16 13:03:54 +01:00
json.c pay: Also record how much we actually ended up sending. 2018-03-26 05:01:49 +00:00
json.h Use expected LIGHTNING_DIR_FILE_H define 2018-03-25 23:54:21 +00:00
jsonrpc.c Reduce variable scopes 2018-03-26 01:31:21 +00:00
jsonrpc.h lightningd/json: Move json helpers specific for lightningd to new module. 2018-03-19 00:27:55 +00:00
jsonrpc_errors.h Use expected LIGHTNING_DIR_FILE_H define 2018-03-25 23:54:21 +00:00
lightningd.c chaintopology: Simplify rescan offset computation 2018-04-25 14:33:38 +02:00
lightningd.h opts: Add the --rescan option 2018-04-25 14:33:38 +02:00
log.c common/daemon: common routines for all daemons. 2018-04-03 14:03:28 +02:00
log.h common/daemon: common routines for all daemons. 2018-04-03 14:03:28 +02:00
log_status.c tools/generate-wire.py: remove length argument from fromwire_ routines. 2018-02-20 22:36:21 +01:00
log_status.h status: add multiple levels of logging. 2018-02-07 00:46:49 +00:00
Makefile common: Moving some bech32 related utilities to bech32_util 2018-04-25 12:34:55 +02:00
memdump.c memdump: fix overzealous assertions from b857b2e843 2018-03-16 00:16:10 +00:00
netaddress.c lightningd: remove ltmp context now we have tmpctx. 2018-03-16 00:16:10 +00:00
netaddress.h wireaddr: add ip[:port] parsing 2017-12-21 09:56:20 +00:00
onchain_control.c onchaind: Replay stored channeltxs to restore onchaind state 2018-04-25 14:33:38 +02:00
onchain_control.h onchaind: Replay stored channeltxs to restore onchaind state 2018-04-25 14:33:38 +02:00
opening_control.c lightningd: tell gossipd that peers we load from db are important. 2018-04-26 05:47:57 +00:00
opening_control.h lightningd: tell gossipd that peers we load from db are important. 2018-04-26 05:47:57 +00:00
opt_time.c Remove unused functions not covered by unit tests 2018-03-26 23:35:56 +00:00
opt_time.h Remove unused functions not covered by unit tests 2018-03-26 23:35:56 +00:00
options.c opts: Add the --rescan option 2018-04-25 14:33:38 +02:00
options.h lightningd: --deprecated-api option to turn off deprecated APIs. 2018-01-19 22:23:45 +00:00
pay.c wallet, payalgo: Save detail of payment failures for later reporting. (#1345) 2018-04-16 15:29:40 +02:00
pay.h pay: Let sendpay modify the recorded msatoshi of payments. 2018-03-30 15:40:32 +02:00
payalgo.c payalgo: Describe maxdelay argument of pay. 2018-04-17 17:29:36 +02:00
payalgo.h payalgo: New file for pay command. 2018-02-16 13:08:29 +01:00
peer_control.c gossipd: keep reaching struct only when we're actively connecting, and don't retry 2018-04-26 05:47:57 +00:00
peer_control.h openingd: tell gossipd that the peer is important once funding tx in place. 2018-04-26 05:47:57 +00:00
peer_htlcs.c wallet: Add msatoshi_to_us_min and msatoshi_to_us_max statistics for channels. 2018-04-05 19:01:53 +02:00
peer_htlcs.h lightningd/peer_control: reorder, move more functions out. 2018-02-20 22:36:21 +01:00
subd.c lightningd/subd.h: Add missing wire/wire.h. 2018-03-26 01:09:59 +00:00
subd.h lightningd/subd.h: Add missing wire/wire.h. 2018-03-26 01:09:59 +00:00
watch.c topo: Remove in-memory txs from the block struct 2018-04-13 00:04:37 +02:00
watch.h topo: Remove in-memory txs from the block struct 2018-04-13 00:04:37 +02:00