core-lightning/lightningd
Rusty Russell ca53c1b699 gossipd: push our own gossip messages harder.
I had a report of a 0.7.2 user whose node hadn't appeared on 1ml.  Their
node_announcement wasn't visible to my node, either.

I suspect this is a consequence of recent version reducing the amount of
gossip they send, as well as large nodes increasingly turning off gossip
altogether from some peers (as we do).  We should ignore timestamp filters
for our own channels: the easiest way to do this is to push them out
directly from gossipd (other messages are sent via the store).

We change channeld to wrap the local channel_announcements: previously
we just handed it to gossipd as for any other gossip message we received
from our peer.  Now gossipd knows to push it out, as it's local.

This interferes with the logic in tests/test_misc.py::test_htlc_send_timeout
which expects the node_announcement message last, so we generalize
that too.

[ Thanks to @trueptolmy for bugfix! ]
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2019-10-14 15:00:37 -05:00
..
test gossipd: push our own gossip messages harder. 2019-10-14 15:00:37 -05:00
.gitignore handshaked: remove. 2017-10-20 18:31:32 +02:00
bitcoind.c elements: Add amount_asset to support more than just plain satoshis 2019-10-03 04:32:57 +00:00
bitcoind.h bitcoind: Remove unused type bitcoind_mode 2019-09-09 04:26:03 +00:00
chaintopology.c wallet: Move tx annotation for deposits into the wallet 2019-10-07 20:03:24 -05: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 common/features: only support a single feature bitset. 2019-10-11 02:52:04 +00:00
channel_control.h API: fundchannel_cancel can cancel fundchannel process before funding broadcast 2019-09-11 17:04:14 -05:00
channel_state.h wallet: Add a final CLOSED state to channels 2019-06-30 16:41:30 +09:30
channel.c lightningd: Add a new field shutdown_scriptpubkey[NUM_SIDES] 2019-10-09 21:04:16 -05:00
channel.h lightningd: Add a new field shutdown_scriptpubkey[NUM_SIDES] 2019-10-09 21:04:16 -05:00
closing_control.c JSON-API: Allow close channel to specified address 2019-10-09 21:04:16 -05: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 Add enable-autotor-v2 config variable 2019-09-28 00:31:02 +02:00
connect_control.h Use node_id everywhere for nodes. 2019-04-09 12:37:16 -07:00
gossip_control.c common/features: only support a single feature bitset. 2019-10-11 02:52:04 +00:00
gossip_control.h gossipd: get fed the blockheight from lightningd when we know it. 2019-09-25 04:01:56 +00:00
gossip_msg.c common/features: only support a single feature bitset. 2019-10-11 02:52:04 +00:00
gossip_msg.h common/features: only support a single feature bitset. 2019-10-11 02:52:04 +00:00
hsm_control.c lightningd: prevent hsmd from interpretating an encrypted hsm_secret as not encrypted 2019-10-09 22:00:38 -05: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: Rename json_tok_address_scriptpubkey to json_to_address_scriptpubkey 2019-10-09 16:51:42 -05: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: Move param_bitcoin_address from wallet/walletrpc.c to lightningd/json.c 2019-10-09 21:04:16 -05:00
json.h json: Move param_bitcoin_address from wallet/walletrpc.c to lightningd/json.c 2019-10-09 21:04:16 -05:00
jsonrpc.c josn: Move json_tok_address_scriptpubkey from lightningd/jsonrpc.c to lightningd/json.c 2019-10-09 21:04:16 -05:00
jsonrpc.h common/memleak: add dynamic hooks for assisting memleak. 2019-09-06 14:35:01 +02:00
lightningd.c hsmd: encrypt hsm_secret if 'lightningd' pass an encryption key 2019-10-09 22:00:38 -05:00
lightningd.h lightningd: '--encrypted-hsm', a new startup option 2019-10-09 22:00:38 -05:00
log_status.c log: add 'warning' notification when log 2019-06-07 01:23:51 +00:00
log_status.h status: add multiple levels of logging. 2018-02-07 00:46:49 +00:00
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 per-peer-daemons: tie in gossip filter. 2019-09-06 14:35:01 +02:00
memdump.c common/memleak: add dynamic hooks for assisting memleak. 2019-09-06 14:35:01 +02:00
memdump.h lightningd: add code to search strmaps for memleak detection. 2019-02-07 20:33:50 +00:00
notification.c plugin: Another new notification type, 'sendpay_failure' 2019-09-11 00:57:39 +00:00
notification.h plugin: Another new notification type, 'sendpay_failure' 2019-09-11 00:57:39 +00:00
onchain_control.c JSON-API: Allow close channel to specified address 2019-10-09 21:04:16 -05:00
onchain_control.h onchaind: Replay stored channeltxs to restore onchaind state 2018-04-25 14:33:38 +02:00
opening_control.c common/features: only support a single feature bitset. 2019-10-11 02:52:04 +00: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: '--encrypted-hsm', a new startup option 2019-10-09 22:00:38 -05:00
options.h opt: make sure early cmdline options override config file. 2019-07-27 05:16:22 +00:00
pay.c sendpay: Compatible with old parameters description 2019-09-25 12:29:53 +02:00
pay.h API: Add payment fields(if not NULL) into return value when sendpay fails 2019-09-11 00:57:39 +00:00
peer_control.c common/features: only support a single feature bitset. 2019-10-11 02:52:04 +00:00
peer_control.h common/features: only support a single feature bitset. 2019-10-11 02:52:04 +00:00
peer_htlcs.c lightningd: fix sizeof() argument correctly. 2019-10-08 09:51:22 -05:00
peer_htlcs.h plugin: Register forward_event notification 2019-09-08 16:02:00 +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_control: halve the timeout delay 2019-10-11 10:05:08 -05:00
plugin_control.h plugins: cleanup shared headers between dynamic and static plugins 2019-09-30 00:20:16 +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 plugin: unregister hooks a plugin registered while freeing it 2019-10-11 10:05:08 -05:00
plugin.h plugins: make the default plugins directory a member of 'plugins' 2019-09-30 00:20:16 +00:00
subd.c developer: IFDEV() macro. 2019-09-12 05:11:56 +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