core-lightning/lightningd
Rusty Russell 401533667d connectd: throttle streaming gossip for peers.
We currently stream gossip as fast as we can, even if they start at
timestamp 0.  Instead, use a simple token bucket filter and only let
them have 1MB per second (500 bytes per second for testing).

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Changelog-Protocol: connectd: we now throttle outgoing gossip at 1MB/second per peer.
2024-07-10 12:21:19 +09:30
..
test common: move now-enlarged command_fail_badparam into its own source file. 2024-06-25 08:47:50 +09:30
.gitignore Ignore all the deamon inside the git history 2021-10-28 15:51:38 +02:00
anchorspend.c lightningd: avoid crash from hsmd not signing anchor spend 2024-05-07 16:41:47 -05:00
anchorspend.h channeld: use anchors on peer's commitment(s) if we can't broadcast our own. 2023-10-27 11:19:56 +10:30
bitcoind.c lightningd: pass explicit context for bitcoind request functions. 2024-06-24 17:26:11 +09:30
bitcoind.h lightningd: pass explicit context for bitcoind request functions. 2024-06-24 17:26:11 +09:30
chaintopology.c lightningd: fix race in initialization. 2024-06-24 17:26:11 +09:30
chaintopology.h chaintopology: free outstanding requests so we don't get responses while shutting down. 2024-06-24 17:26:11 +09:30
channel_control.c lightningd: pass explicit context for bitcoind request functions. 2024-06-24 17:26:11 +09:30
channel_control.h common: No longer support new channels without option_static_remotekey. 2024-06-19 15:54:24 +09:30
channel_gossip.c bitcoin/short_channel_id: pass by copy everywhere. 2024-03-20 13:51:48 +10:30
channel_gossip.h lightingd: corrections from Alex Myers's review. 2024-01-31 14:47:33 +10:30
channel_state.h dual-fund: add new open-commit-ready state 2023-11-02 19:32:05 +10:30
channel.c common: No longer support new channels without option_static_remotekey. 2024-06-19 15:54:24 +09:30
channel.h common: No longer support new channels without option_static_remotekey. 2024-06-19 15:54:24 +09:30
closed_channel.c bitcoin/short_channel_id: pass by copy everywhere. 2024-03-20 13:51:48 +10:30
closed_channel.h lightningd: add last_stable_connection field to db, channel. 2024-01-31 14:47:33 +10:30
closing_control.c channeld: BOLT update, no longer allow creation of old (experimental-only!) non-zero-fee anchor channels. 2024-06-19 15:54:24 +09:30
closing_control.h lightningd: pass signed tx through to close callback. 2023-08-02 07:09:28 +09:30
coin_mvts.c common: remove type_to_string files altogther. 2024-03-20 13:51:48 +10:30
coin_mvts.h coin_mvt: tiny, dont import lightningd header 2022-02-07 13:02:09 +10:30
configs.c setconfig: more thorough check for internal config options. 2024-05-06 20:51:19 -05:00
connect_control.c connectd: throttle streaming gossip for peers. 2024-07-10 12:21:19 +09:30
connect_control.h lightningd: stop all subds when we want to disconnect. 2023-10-23 15:48:50 +10:30
datastore.c lightningd: use param_check on all commands which do extra checks. 2023-10-26 12:59:55 +10:30
dual_open_control.c lightningd: pass explicit context for bitcoind request functions. 2024-06-24 17:26:11 +09:30
dual_open_control.h common: BOLT update: option_anchors_zero_fee_htlc_tx is now simply "option_anchors". 2024-06-19 15:54:24 +09:30
feerate.c lightnind: remove deprecated feerate names. 2024-03-25 15:02:35 +10:30
feerate.h lightningd: clean up feerate handling, deprecate old terms. 2023-04-10 07:31:12 +09:30
forwards.c lightningd: don't load all forwardings into memory at once. 2024-06-20 16:14:38 +09:30
forwards.h lightningd: clean up notification infrastructure. 2024-01-26 10:30:22 +10:30
gossip_control.c lightningd: pass explicit context for bitcoind request functions. 2024-06-24 17:26:11 +09:30
gossip_control.h lightningd: ignore gossip messages from channeld, switch to our own. 2024-01-31 14:47:33 +10:30
gossip_generation.c bitcoin/short_channel_id: pass by copy everywhere. 2024-03-20 13:51:48 +10:30
gossip_generation.h bitcoin/short_channel_id: pass by copy everywhere. 2024-03-20 13:51:48 +10:30
hsm_control.c lightningd: log when we fail to get an fd from hsmd. 2024-05-09 01:23:46 -05:00
hsm_control.h hsmd: rename "capabilities" flags for hsm fds to "permissions" 2023-08-08 14:31:47 +09:30
htlc_end.c common: remove type_to_string files altogther. 2024-03-20 13:51:48 +10:30
htlc_end.h channeld: don't calculate blinding shared secret, let lightningd do it. 2022-10-26 11:29:06 +10:30
htlc_set.c common: remove type_to_string files altogther. 2024-03-20 13:51:48 +10:30
htlc_set.h Makefile: use completely separate spec-derived files for EXPERIMENTAL_FEATURES 2020-09-08 09:42:00 +09:30
invoice.c lightningd: clarify bolt12 "payment secret" logic. 2024-07-09 15:09:29 +02:00
invoice.h sendpays: hook into the wait subsystem. 2023-10-28 15:48:26 +10:30
io_loop_with_timers.c database: pull out database code into a new module 2022-03-05 15:03:34 +10:30
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
jsonrpc.c common: new function command_log to log something about a specific command. 2024-06-25 08:47:50 +09:30
jsonrpc.h lightningd: rename command_log() to command_logger() 2024-06-25 08:47:50 +09:30
lightningd.c connectd: throttle streaming gossip for peers. 2024-07-10 12:21:19 +09:30
lightningd.h connectd: throttle streaming gossip for peers. 2024-07-10 12:21:19 +09:30
log_status.c lightningd/log: clean up nomenclature. 2023-07-19 19:13:57 +09:30
log_status.h lightningd/log: clean up nomenclature. 2023-07-19 19:13:57 +09:30
log.c core: notify plugins when a log line is emitted. 2024-05-17 13:03:12 -05:00
log.h logging: add TRACE between DEBUG and IO 2024-05-08 21:05:49 -05:00
Makefile Makefile: don't make every file depend on version headers. 2024-07-02 10:00:55 +02:00
memdump.c lightningd: use param_check on all commands which do extra checks. 2023-10-26 12:59:55 +10:30
memdump.h lightningd: simplify memleak code. 2022-03-10 09:40:09 +10:30
notification.c core: notify plugins when a log line is emitted. 2024-05-17 13:03:12 -05:00
notification.h core: notify plugins when a log line is emitted. 2024-05-17 13:03:12 -05:00
offer.c common: remove type_to_string files altogther. 2024-03-20 13:51:48 +10:30
onchain_control.c onchaind: remove support for rescuing non-static channels when we've lost data. 2024-06-19 15:54:24 +09:30
onchain_control.h onchaind: remove 'is_replay' logic 2021-12-28 04:42:42 +10:30
onion_message.c bolt12: allow first_node_id in blinded path to be a scid. 2024-05-12 19:11:43 -05:00
onion_message.h common: remove support for pre v0.10.2 onionmessages. 2021-12-01 05:44:28 +10:30
opening_common.c BOLT: update to include 2016 for max_htlc_cltv. 2024-05-09 16:14:23 -05:00
opening_common.h lightningd: pass disconnect flag to subd's errcb. 2023-10-23 15:48:50 +10:30
opening_control.c common: BOLT update: option_anchors_zero_fee_htlc_tx is now simply "option_anchors". 2024-06-19 15:54:24 +09:30
opening_control.h common: BOLT update: option_anchors_zero_fee_htlc_tx is now simply "option_anchors". 2024-06-19 15:54:24 +09:30
options.c connectd: throttle streaming gossip for peers. 2024-07-10 12:21:19 +09:30
options.h lightningd: allow --recover to take a 64-char hex string. 2023-10-26 12:59:55 +10:30
pay.c lightningd: pay dev_legacy_hop arg to make second-last onion a v0. 2024-05-29 12:40:01 -05:00
pay.h wallet: remove premature optimization when making payment. 2023-10-28 15:48:26 +10:30
peer_control.c lightningd: pass explicit context for bitcoind request functions. 2024-06-24 17:26:11 +09:30
peer_control.h lightningd: increase fd limit if we can, to double number of starting channels. 2024-05-09 01:23:46 -05:00
peer_fd.c subdaemons: remove gossipd fd from per-peer daemons. 2022-02-08 11:15:52 +10:30
peer_fd.h subdaemons: remove gossipd fd from per-peer daemons. 2022-02-08 11:15:52 +10:30
peer_htlcs.c common: don't pass (unused) has_realm parameter to process_onionpacket. 2024-07-09 15:09:29 +02:00
peer_htlcs.h lightningd: split up peer_htlcs a little, create forwards.c 2023-10-28 15:48:26 +10:30
ping.c lightningd: use param_check on all commands which do extra checks. 2023-10-26 12:59:55 +10:30
plugin_control.c lightningd: use param_check on all commands which do extra checks. 2023-10-26 12:59:55 +10:30
plugin_control.h plugins: add command field to subcommand output. 2021-06-25 09:49:33 +09:30
plugin_hook.c logging: move two noisy plugin_hook logging entries to TRACE 2024-05-08 21:05:49 -05:00
plugin_hook.h plugin: wire JSON id for commands which caused hooks to fire. 2022-09-16 12:31:45 +09:30
plugin.c lightningd: rename command_log() to command_logger() 2024-06-25 08:47:50 +09:30
plugin.h lightningd: allow plugins to specify cancheck for us to pass check commands through. 2024-05-06 20:51:19 -05:00
routehint.c global: fix up quotes which are now in the master branch. 2024-05-09 16:14:23 -05:00
routehint.h invoice: overhaul routehints to use topology.listincoming, cleanup. 2021-06-16 10:29:17 +09:30
runes.c runes: bolt12 parsing. 2024-03-27 16:09:23 +10:30
runes.h runes: ensure that uniqueid is a valid number. 2023-09-12 15:19:02 +09:30
signmessage.c lightningd: rename command_log() to command_logger() 2024-06-25 08:47:50 +09:30
subd.c pyln-testing: use DEBUG_LIGHTNINGD to start gdb on lightningd during test. 2024-03-20 11:18:36 +10:30
subd.h lightningd: pass disconnect flag to subd's errcb. 2023-10-23 15:48:50 +10:30
wait.c lightningd: hook forwards into the wait system. 2023-10-28 15:48:26 +10:30
wait.h lightningd: hook forwards into the wait system. 2023-10-28 15:48:26 +10:30
watch.c common: remove type_to_string files altogther. 2024-03-20 13:51:48 +10:30
watch.h lightningd: make watch_txid more generic. 2023-10-02 11:41:19 +10:30