core-lightning/gossipd/gossip_wire.csv
Rusty Russell ef28b6112c status: use common status codes for all the failures.
This change is really to allow us to have a --dev-fail-on-subdaemon-fail option
so we can handle failures from subdaemons generically.

It also neatens handling so we can have an explicit callback for "peer
did something wrong" (which matters if we want to close the channel in
that case).

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2017-09-12 23:00:53 +02:00

3.5 KiB

1# Peers can give a bad message, we close their fd, but no harm done.
2gossipstatus_peer_bad_msg,1000
3gossipstatus_peer_bad_msg,,unique_id,8
4gossipstatus_peer_bad_msg,,len,2
5gossipstatus_peer_bad_msg,,err,len*u8
6# Misc problems like opening control fd.
7gossipstatus_peer_failed,1001
8gossipstatus_peer_failed,,unique_id,8
9gossipstatus_peer_failed,,len,2
10gossipstatus_peer_failed,,err,len*u8
11#include <common/cryptomsg.h>
12# Initialize the gossip daemon
13gossipctl_init,0
14gossipctl_init,,broadcast_interval,4
15gossipctl_init,,chain_hash,struct sha256_double
16# These take an fd, but have no response
17# (if it is to move onto a channel, we get a status msg).
18gossipctl_new_peer,1
19gossipctl_new_peer,,unique_id,8
20gossipctl_new_peer,,crypto_state,struct crypto_state
21# Tell it to release a peer which has initialized.
22gossipctl_release_peer,2
23gossipctl_release_peer,,unique_id,8
24# This releases the peer and returns the cryptostate (followed two fds: peer and gossip)
25gossipctl_release_peer_reply,102
26gossipctl_release_peer_reply,,crypto_state,struct crypto_state
27# This is if we couldn't find the peer.
28gossipctl_release_peer_replyfail,202
29# This is where we save a peer's features.
30#gossipstatus_peer_features,1
31#gossipstatus_peer_features,,unique_id,8
32#gossipstatus_peer_features,,gflen,2
33#gossipstatus_peer_features,,globalfeatures,gflen
34#gossipstatus_peer_features,,lflen,2
35#gossipstatus_peer_features,,localfeatures,lflen
36# Peer can send non-gossip packet (usually an open_channel) (followed two fds: peer and gossip)
37gossipstatus_peer_nongossip,4
38gossipstatus_peer_nongossip,,unique_id,8
39gossipstatus_peer_nongossip,,crypto_state,struct crypto_state
40gossipstatus_peer_nongossip,,len,2
41gossipstatus_peer_nongossip,,msg,len*u8
42# Pass JSON-RPC getnodes call through
43gossip_getnodes_request,5
44#include <lightningd/gossip_msg.h>
45gossip_getnodes_reply,105
46gossip_getnodes_reply,,num_nodes,u16
47gossip_getnodes_reply,,nodes,num_nodes*struct gossip_getnodes_entry
48# Pass JSON-RPC getroute call through
49gossip_getroute_request,6
50gossip_getroute_request,,source,struct pubkey
51gossip_getroute_request,,destination,struct pubkey
52gossip_getroute_request,,msatoshi,u32
53gossip_getroute_request,,riskfactor,u16
54gossip_getroute_reply,106
55gossip_getroute_reply,,num_hops,u16
56gossip_getroute_reply,,hops,num_hops*struct route_hop
57gossip_getchannels_request,7
58gossip_getchannels_reply,107
59gossip_getchannels_reply,,num_channels,u16
60gossip_getchannels_reply,,nodes,num_channels*struct gossip_getchannels_entry
61# Ping/pong test.
62gossip_ping,8
63gossip_ping,,unique_id,u64
64gossip_ping,,num_pong_bytes,u16
65gossip_ping,,len,u16
66gossip_ping_reply,108
67gossip_ping_reply,,totlen,u16
68# Given a short_channel_id, return the endpoints
69gossip_resolve_channel_request,9
70gossip_resolve_channel_request,,channel_id,struct short_channel_id
71gossip_resolve_channel_reply,109
72gossip_resolve_channel_reply,,num_keys,u16
73gossip_resolve_channel_reply,,keys,num_keys*struct pubkey
74# The main daemon forward some gossip message to gossipd, allows injecting
75# arbitrary gossip messages.
76gossip_forwarded_msg,10
77gossip_forwarded_msg,,msglen,2
78gossip_forwarded_msg,,msg,msglen
79# If peer is still connected, fail it (master does this for reconnect)
80gossipctl_fail_peer,11
81gossipctl_fail_peer,,unique_id,8
82# Get a gossip fd for this peer (it has reconnected)
83gossipctl_get_peer_gossipfd,12
84gossipctl_get_peer_gossipfd,,unique_id,u64
85# Does it want a full dump of gossip?
86gossipctl_get_peer_gossipfd,,sync,bool
87# + fd.
88gossipctl_get_peer_gossipfd_reply,112
89# Failure (can't make new socket)
90gossipctl_get_peer_gossipfd_replyfail,212