core-lightning/lightningd/channel/channel_wire.csv
Rusty Russell 780b3870ad lightningd: peer state cleanup.
1. We explicitly assert what state we're coming from, to make transitions
   clearer.
2. Every transition has a state, even between owners while waiting for HSM.
3. Explictly step though getting the HSM signature on the funding tx
   before starting channeld, rather than doing it in parallel: makes
   states clearer.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2017-05-25 14:24:47 +09:30

3.6 KiB

1# Shouldn't happen
2channel_bad_command,0x8000
3# Also shouldn't happen
4channel_hsm_failed,0x8001
5channel_crypto_failed,0x8002
6channel_internal_error,0x8003
7# These are due to peer.
8channel_peer_write_failed,0x8010
9channel_peer_read_failed,0x8011
10channel_peer_bad_message,0x8012
11# Received and sent funding_locked
12channel_normal_operation,1001
13#include <lightningd/cryptomsg.h>
14#include <lightningd/channel_config.h>
15# Begin! You're still waiting for the tx to be buried though (passes
16# gossipd-client fd)
17channel_init,1
18channel_init,0,funding_txid,struct sha256_double
19channel_init,32,funding_txout,2
20channel_init,34,our_config,struct channel_config
21channel_init,70,their_config,struct channel_config
22channel_init,106,first_commit_sig,secp256k1_ecdsa_signature
23channel_init,166,crypto_state,struct crypto_state
24channel_init,310,remote_fundingkey,33
25channel_init,343,revocation_basepoint,33
26channel_init,376,payment_basepoint,33
27channel_init,409,delayed_payment_basepoint,33
28channel_init,442,their_per_commit_point,33
29channel_init,475,am_funder,bool
30channel_init,476,fee_base,4
31channel_init,480,fee_proportional,4
32channel_init,484,funding_satoshi,8
33channel_init,492,push_msat,8
34channel_init,500,seed,struct privkey
35channel_init,533,local_node_id,struct pubkey
36channel_init,566,remote_node_id,struct pubkey
37channel_init,599,commit_msec,4
38channel_init,603,cltv_delta,u16
39# Tx is deep enough, go!
40channel_funding_locked,2
41channel_funding_locked,0,short_channel_id,struct short_channel_id
42# Tell the channel that we may announce the channel's existence
43channel_funding_announce_depth,3
44# Tell channel to offer this htlc
45channel_offer_htlc,4
46channel_offer_htlc,0,amount_msat,4
47channel_offer_htlc,0,cltv_expiry,4
48channel_offer_htlc,0,payment_hash,32
49channel_offer_htlc,0,onion_routing_packet,1366*u8
50# Reply; synchronous since IDs have to increment.
51channel_offer_htlc_reply,104
52channel_offer_htlc_reply,0,id,8
53# Zero failure code means success.
54channel_offer_htlc_reply,0,failure_code,2
55channel_offer_htlc_reply,0,failurestrlen,2
56channel_offer_htlc_reply,0,failurestr,failurestrlen*u8
57# Main daemon found out the preimage for an htlc
58#include <bitcoin/preimage.h>
59channel_fulfill_htlc,5
60channel_fulfill_htlc,0,id,8
61channel_fulfill_htlc,0,payment_preimage,struct preimage
62# Main daemon says HTLC failed
63channel_fail_htlc,6
64channel_fail_htlc,0,id,8
65channel_fail_htlc,0,len,2
66channel_fail_htlc,0,error_pkt,len*u8
67# Peer and I are irrevocably committed to this HTLC.
68channel_accepted_htlc,7
69channel_accepted_htlc,0,id,8
70channel_accepted_htlc,0,amount_msat,4
71channel_accepted_htlc,0,cltv_expiry,4
72channel_accepted_htlc,0,payment_hash,32
73channel_accepted_htlc,0,next_onion,1366*u8
74channel_accepted_htlc,0,forward,bool
75channel_accepted_htlc,0,amt_to_forward,u64
76channel_accepted_htlc,0,outgoing_cltv_value,u32
77channel_accepted_htlc,0,next_channel,struct short_channel_id
78channel_accepted_htlc,0,shared_secret,struct secret
79# FIXME: Add code to commit current channel state!
80# The HTLC preimage was given.
81channel_fulfilled_htlc,8
82channel_fulfilled_htlc,0,id,8
83channel_fulfilled_htlc,0,payment_preimage,struct preimage
84# This HTLC failed
85channel_failed_htlc,9
86channel_failed_htlc,0,id,8
87channel_failed_htlc,0,len,2
88channel_failed_htlc,0,reason,len*u8
89# This HTLC was returned malformed
90channel_malformed_htlc,10
91channel_malformed_htlc,0,id,8
92channel_malformed_htlc,0,sha256_of_onion,32
93channel_malformed_htlc,0,failure_code,2
94# Ping/pong test.
95channel_ping,11
96channel_ping,0,num_pong_bytes,u16
97channel_ping,0,len,u16
98channel_ping_reply,111
99channel_ping_reply,0,totlen,u16
100# Channeld tells the master that the channel has been announced
101channel_announced,12