core-lightning/gossipd/gossipd_wire.csv
Rusty Russell 5583f730de gossipd: always send information about our channels' gossip updates.
Not just when it's a private channel.  This is useful for listpeerchannels in the next patch.
Most of this is renaming.

It also means that source can be NULL, so move it out of the struct and put it in the message,
where it logically belongs, and make it an optional field.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2023-12-14 09:16:56 +10:30

5.7 KiB

1#include <common/cryptomsg.h>
2#include <common/features.h>
3#include <common/wireaddr.h>
4#include <wire/peer_wire.h>
5#include <wire/onion_wire.h>
6# Initialize the gossip daemon.
7msgtype,gossipd_init,3000
8msgdata,gossipd_init,chainparams,chainparams,
9msgdata,gossipd_init,our_features,feature_set,
10msgdata,gossipd_init,id,node_id,
11msgdata,gossipd_init,rgb,u8,3
12msgdata,gossipd_init,alias,u8,32
13msgdata,gossipd_init,num_announceable,u16,
14msgdata,gossipd_init,announceable,wireaddr,num_announceable
15msgdata,gossipd_init,dev_gossip_time,?u32,
16msgdata,gossipd_init,dev_fast_gossip,bool,
17msgdata,gossipd_init,dev_fast_gossip_prune,bool,
18msgdata,gossipd_init,ip_discovery,u32,
19# Gossipd tells us all our public channel_updates before init_reply.
20msgtype,gossipd_init_cupdate,3101
21msgdata,gossipd_init_cupdate,scid,short_channel_id,
22msgdata,gossipd_init_cupdate,len,u16,
23msgdata,gossipd_init_cupdate,cupdate,u8,len
24msgtype,gossipd_init_reply,3100
25# In developer mode, we can mess with time.
26msgtype,gossipd_dev_set_time,3001
27msgdata,gossipd_dev_set_time,dev_gossip_time,u32,
28# Set artificial maximum reply_channel_range size. Master->gossipd
29msgtype,gossipd_dev_set_max_scids_encode_size,3030
30msgdata,gossipd_dev_set_max_scids_encode_size,max,u32,
31# gossipd->master: we're closing this channel.
32msgtype,gossipd_local_channel_close,3027
33msgdata,gossipd_local_channel_close,short_channel_id,short_channel_id,
34# Gossipd->master get this tx output please.
35msgtype,gossipd_get_txout,3018
36msgdata,gossipd_get_txout,short_channel_id,short_channel_id,
37# master->gossipd here is the output, or empty if none.
38msgtype,gossipd_get_txout_reply,3118
39msgdata,gossipd_get_txout_reply,short_channel_id,short_channel_id,
40msgdata,gossipd_get_txout_reply,satoshis,amount_sat,
41msgdata,gossipd_get_txout_reply,len,u16,
42msgdata,gossipd_get_txout_reply,outscript,u8,len
43# master -> gossipd: these potential funding outpoints were spent, please forget any channels
44msgtype,gossipd_outpoints_spent,3024
45msgdata,gossipd_outpoints_spent,blockheight,u32,
46msgdata,gossipd_outpoints_spent,len,u32,
47msgdata,gossipd_outpoints_spent,short_channel_id,short_channel_id,len
48# master -> gossipd: do you have a memleak?
49msgtype,gossipd_dev_memleak,3033
50msgtype,gossipd_dev_memleak_reply,3133
51msgdata,gossipd_dev_memleak_reply,leak,bool,
52# master -> gossipd: please rewrite the gossip_store
53msgtype,gossipd_dev_compact_store,3034
54# gossipd -> master: ok
55msgtype,gossipd_dev_compact_store_reply,3134
56msgdata,gossipd_dev_compact_store_reply,success,bool,
57# master -> gossipd: blockheight increased.
58msgtype,gossipd_new_blockheight,3026
59msgdata,gossipd_new_blockheight,blockheight,u32,
60# gossipd: got it!
61msgtype,gossipd_new_blockheight_reply,3126
62# Lightningd tells us to inject a gossip message (for addgossip RPC)
63msgtype,gossipd_addgossip,3044
64msgdata,gossipd_addgossip,len,u16,
65msgdata,gossipd_addgossip,msg,u8,len
66# Empty string means no problem.
67msgtype,gossipd_addgossip_reply,3144
68msgdata,gossipd_addgossip_reply,err,wirestring,
69# Updated lease rates available
70msgtype,gossipd_new_lease_rates,3046
71msgdata,gossipd_new_lease_rates,rates,lease_rates,
72# Lightningd asks gossipd for any known addresses for that node.
73msgtype,gossipd_get_addrs,3050
74msgdata,gossipd_get_addrs,id,node_id,
75msgtype,gossipd_get_addrs_reply,3150
76msgdata,gossipd_get_addrs_reply,num,u16,
77msgdata,gossipd_get_addrs_reply,addrs,wireaddr,num
78# Tell master a local channel update (so it can serve errors).
79msgtype,gossipd_got_local_channel_update,3151
80msgdata,gossipd_got_local_channel_update,scid,short_channel_id,
81msgdata,gossipd_got_local_channel_update,len,u16,
82msgdata,gossipd_got_local_channel_update,channel_update,u8,len
83# Send this channel_update.
84msgtype,gossipd_local_channel_update,3004
85msgdata,gossipd_local_channel_update,id,node_id,
86msgdata,gossipd_local_channel_update,short_channel_id,short_channel_id,
87msgdata,gossipd_local_channel_update,enable,bool,
88msgdata,gossipd_local_channel_update,cltv_expiry_delta,u16,
89msgdata,gossipd_local_channel_update,htlc_minimum_msat,amount_msat,
90msgdata,gossipd_local_channel_update,fee_base_msat,u32,
91msgdata,gossipd_local_channel_update,fee_proportional_millionths,u32,
92msgdata,gossipd_local_channel_update,htlc_maximum_msat,amount_msat,
93msgdata,gossipd_local_channel_update,public,bool,
94# Send this channel_announcement
95msgtype,gossipd_local_channel_announcement,3006
96msgdata,gossipd_local_channel_announcement,id,node_id,
97msgdata,gossipd_local_channel_announcement,len,u16,
98msgdata,gossipd_local_channel_announcement,cannounce,u8,len
99# Tell gossipd about a private channel (to put it in the store)
100# cannounce has same structure, dummy sigs.
101msgtype,gossipd_local_private_channel,3008
102msgdata,gossipd_local_private_channel,id,node_id,
103msgdata,gossipd_local_private_channel,capacity,amount_sat,
104msgdata,gossipd_local_private_channel,scid,short_channel_id,
105msgdata,gossipd_local_private_channel,len,u16,
106msgdata,gossipd_local_private_channel,features,u8,len
107# Tell gossipd we used the channel update (in case it was deferred)
108msgtype,gossipd_used_local_channel_update,3052
109msgdata,gossipd_used_local_channel_update,scid,short_channel_id,
110# Tell gossipd we have verified a new public IP by the remote_addr feature
111msgtype,gossipd_discovered_ip,3009
112msgdata,gossipd_discovered_ip,discovered_ip,wireaddr,
113subtype,peer_update
114subtypedata,peer_update,scid,short_channel_id,
115subtypedata,peer_update,fee_base,u32,
116subtypedata,peer_update,fee_ppm,u32,
117subtypedata,peer_update,cltv_delta,u16,
118subtypedata,peer_update,htlc_minimum_msat,amount_msat,
119subtypedata,peer_update,htlc_maximum_msat,amount_msat,
120# Tell lightningd we received channel update info for a local channel
121msgtype,gossipd_remote_channel_update,3010
122msgdata,gossipd_remote_channel_update,source_node,?node_id,
123msgdata,gossipd_remote_channel_update,peer_update,peer_update,