core-lightning/channeld/channel_wire.csv
Rusty Russell 162879d6a2 channeld: use fulfilled_htlc and failed_htlc msgs in single htlc case.
We use these for receiving arrays at init time, we should also use them
for fulfull/fail of HTLCs in normal operation.  That we we benefit from all
those assertions.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2018-07-27 14:12:00 +02:00

6.3 KiB

1#include <common/cryptomsg.h>
2#include <common/channel_config.h>
3#include <common/derive_basepoints.h>
4# Begin! (passes gossipd-client fd)
5channel_init,1000
6channel_init,,chain_hash,struct bitcoin_blkid
7channel_init,,funding_txid,struct bitcoin_txid
8channel_init,,funding_txout,u16
9channel_init,,funding_satoshi,u64
10channel_init,,our_config,struct channel_config
11channel_init,,their_config,struct channel_config
12# FIXME: Fix generate-wire.py to allow NUM_SIDES*u32 here.
13channel_init,,feerate_per_kw,2*u32
14channel_init,,feerate_min,u32
15channel_init,,feerate_max,u32
16channel_init,,first_commit_sig,secp256k1_ecdsa_signature
17channel_init,,crypto_state,struct crypto_state
18channel_init,,remote_fundingkey,struct pubkey
19channel_init,,remote_basepoints,struct basepoints
20channel_init,,remote_per_commit,struct pubkey
21channel_init,,old_remote_per_commit,struct pubkey
22channel_init,,funder,enum side
23channel_init,,fee_base,u32
24channel_init,,fee_proportional,u32
25channel_init,,local_msatoshi,u64
26channel_init,,our_basepoints,struct basepoints
27channel_init,,our_funding_pubkey,struct pubkey
28channel_init,,local_node_id,struct pubkey
29channel_init,,remote_node_id,struct pubkey
30channel_init,,commit_msec,u32
31channel_init,,cltv_delta,u16
32channel_init,,last_was_revoke,bool
33channel_init,,num_last_sent_commit,u16
34channel_init,,last_sent_commit,num_last_sent_commit*struct changed_htlc
35channel_init,,next_index_local,u64
36channel_init,,next_index_remote,u64
37channel_init,,revocations_received,u64
38channel_init,,next_htlc_id,u64
39channel_init,,num_htlcs,u16
40channel_init,,htlcs,num_htlcs*struct added_htlc
41channel_init,,htlc_states,num_htlcs*enum htlc_state
42channel_init,,num_fulfilled,u16
43channel_init,,fulfilled,num_fulfilled*struct fulfilled_htlc
44channel_init,,fulfilled_sides,num_fulfilled*enum side
45channel_init,,num_failed,u16
46channel_init,,failed,num_failed*struct failed_htlc
47channel_init,,failed_sides,num_failed*enum side
48channel_init,,local_funding_locked,bool
49channel_init,,remote_funding_locked,bool
50channel_init,,funding_short_id,struct short_channel_id
51channel_init,,reestablish,bool
52channel_init,,send_shutdown,bool
53channel_init,,remote_shutdown_received,bool
54channel_init,,final_scriptpubkey_len,u16
55channel_init,,final_scriptpubkey,final_scriptpubkey_len*u8
56channel_init,,flags,u8
57channel_init,,init_peer_pkt_len,u16
58channel_init,,init_peer_pkt,init_peer_pkt_len*u8
59channel_init,,reached_announce_depth,bool
60# master->channeld funding hit new depth >= lock depth
61channel_funding_locked,1002
62channel_funding_locked,,short_channel_id,struct short_channel_id
63channel_funding_locked,,depth,u32
64# Tell channel to offer this htlc
65channel_offer_htlc,1004
66channel_offer_htlc,,amount_msat,u64
67channel_offer_htlc,,cltv_expiry,u32
68channel_offer_htlc,,payment_hash,struct sha256
69channel_offer_htlc,,onion_routing_packet,1366*u8
70# Reply; synchronous since IDs have to increment.
71channel_offer_htlc_reply,1104
72channel_offer_htlc_reply,,id,u64
73# Zero failure code means success.
74channel_offer_htlc_reply,,failure_code,u16
75channel_offer_htlc_reply,,failurestrlen,u16
76channel_offer_htlc_reply,,failurestr,failurestrlen*u8
77# Main daemon found out the preimage for an HTLC
78#include <bitcoin/preimage.h>
79channel_fulfill_htlc,1005
80channel_fulfill_htlc,,fulfilled_htlc,struct fulfilled_htlc
81# Main daemon says HTLC failed
82channel_fail_htlc,1006
83channel_fail_htlc,,failed_htlc,struct failed_htlc
84# When we receive funding_locked.
85channel_got_funding_locked,1019
86channel_got_funding_locked,,next_per_commit_point,struct pubkey
87# When we send a commitment_signed message, tell master.
88channel_sending_commitsig,1020
89channel_sending_commitsig,,commitnum,u64
90channel_sending_commitsig,,feerate,u32
91# SENT_ADD_COMMIT, SENT_REMOVE_ACK_COMMIT, SENT_ADD_ACK_COMMIT, SENT_REMOVE_COMMIT
92channel_sending_commitsig,,num_changed,u16
93channel_sending_commitsig,,changed,num_changed*struct changed_htlc
94channel_sending_commitsig,,commit_sig,secp256k1_ecdsa_signature
95channel_sending_commitsig,,num_htlc_sigs,u16
96channel_sending_commitsig,,htlc_sigs,num_htlc_sigs*secp256k1_ecdsa_signature
97# Wait for reply, to make sure it's on disk before we send commit.
98channel_sending_commitsig_reply,1120
99# When we have a commitment_signed message, tell master to remember.
100channel_got_commitsig,1021
101channel_got_commitsig,,commitnum,u64
102channel_got_commitsig,,feerate,u32
103channel_got_commitsig,,signature,secp256k1_ecdsa_signature
104channel_got_commitsig,,num_htlcs,u16
105channel_got_commitsig,,htlc_signature,num_htlcs*secp256k1_ecdsa_signature
106# RCVD_ADD_COMMIT: we're now committed to their new offered HTLCs.
107channel_got_commitsig,,num_added,u16
108channel_got_commitsig,,added,num_added*struct added_htlc
109channel_got_commitsig,,shared_secret,num_added*struct secret
110# RCVD_REMOVE_COMMIT: we're now no longer committed to these HTLCs.
111channel_got_commitsig,,num_fulfilled,u16
112channel_got_commitsig,,fulfilled,num_fulfilled*struct fulfilled_htlc
113channel_got_commitsig,,num_failed,u16
114channel_got_commitsig,,failed,num_failed*struct failed_htlc
115# RCVD_ADD_ACK_COMMIT, RCVD_REMOVE_ACK_COMMIT
116channel_got_commitsig,,num_changed,u16
117channel_got_commitsig,,changed,num_changed*struct changed_htlc
118channel_got_commitsig,,tx,struct bitcoin_tx
119# Wait for reply, to make sure it's on disk before we send revocation.
120channel_got_commitsig_reply,1121
121#include <common/htlc_wire.h>
122channel_got_revoke,1022
123channel_got_revoke,,revokenum,u64
124channel_got_revoke,,per_commitment_secret,struct secret
125channel_got_revoke,,next_per_commit_point,struct pubkey
126# RCVD_ADD_ACK_REVOCATION, RCVD_REMOVE_ACK_REVOCATION, RCVD_ADD_REVOCATION, RCVD_REMOVE_REVOCATION
127channel_got_revoke,,num_changed,u16
128channel_got_revoke,,changed,num_changed*struct changed_htlc
129# Wait for reply, to make sure it's on disk before we continue
130# (eg. if we sent another commitment_signed, that would implicitly ack).
131channel_got_revoke_reply,1122
132# Tell peer to shut down channel.
133channel_send_shutdown,1023
134# Peer told us that channel is shutting down
135channel_got_shutdown,1024
136channel_got_shutdown,,scriptpubkey_len,u16
137channel_got_shutdown,,scriptpubkey,scriptpubkey_len*u8
138# Shutdown is complete, ready for closing negotiation. + peer_fd & gossip_fd.
139channel_shutdown_complete,1025
140channel_shutdown_complete,,crypto_state,struct crypto_state
141# Re-enable commit timer.
142channel_dev_reenable_commit,1026
143channel_dev_reenable_commit_reply,1126
144channel_feerates,1027
145channel_feerates,,feerate,u32
146channel_feerates,,min_feerate,u32
147channel_feerates,,max_feerate,u32