mirror of
https://github.com/ElementsProject/lightning.git
synced 2025-01-06 05:49:30 +01:00
147eaced2e
It's generally clearer to have simple hardcoded numbers with an #if DEVELOPER around it, than apparent variables which aren't, really. Interestingly, our pruning test was always kinda broken: we have to pass two cycles, since l2 will refresh the channel once to avoid pruning. Do the more obvious thing, and cut the network in half and check that l1 and l3 time out. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
8.7 KiB
8.7 KiB
1 | #include <common/cryptomsg.h> |
---|---|
2 | #include <common/channel_config.h> |
3 | #include <common/derive_basepoints.h> |
4 | #include <common/per_peer_state.h> |
5 | # Begin! (passes gossipd-client fd) |
6 | msgtype,channel_init,1000 |
7 | msgdata,channel_init,chain_hash,bitcoin_blkid, |
8 | msgdata,channel_init,funding_txid,bitcoin_txid, |
9 | msgdata,channel_init,funding_txout,u16, |
10 | msgdata,channel_init,funding_satoshi,amount_sat, |
11 | msgdata,channel_init,minimum_depth,u32, |
12 | msgdata,channel_init,our_config,channel_config, |
13 | msgdata,channel_init,their_config,channel_config, |
14 | # FIXME: Fix generate-wire.py to allow NUM_SIDES*u32 here., |
15 | msgdata,channel_init,feerate_per_kw,u32,2 |
16 | msgdata,channel_init,feerate_min,u32, |
17 | msgdata,channel_init,feerate_max,u32, |
18 | msgdata,channel_init,first_commit_sig,bitcoin_signature, |
19 | msgdata,channel_init,per_peer_state,per_peer_state, |
20 | msgdata,channel_init,remote_fundingkey,pubkey, |
21 | msgdata,channel_init,remote_basepoints,basepoints, |
22 | msgdata,channel_init,remote_per_commit,pubkey, |
23 | msgdata,channel_init,old_remote_per_commit,pubkey, |
24 | msgdata,channel_init,funder,enum side, |
25 | msgdata,channel_init,fee_base,u32, |
26 | msgdata,channel_init,fee_proportional,u32, |
27 | msgdata,channel_init,local_msatoshi,amount_msat, |
28 | msgdata,channel_init,our_basepoints,basepoints, |
29 | msgdata,channel_init,our_funding_pubkey,pubkey, |
30 | msgdata,channel_init,local_node_id,node_id, |
31 | msgdata,channel_init,remote_node_id,node_id, |
32 | msgdata,channel_init,commit_msec,u32, |
33 | msgdata,channel_init,cltv_delta,u16, |
34 | msgdata,channel_init,last_was_revoke,bool, |
35 | msgdata,channel_init,num_last_sent_commit,u16, |
36 | msgdata,channel_init,last_sent_commit,changed_htlc,num_last_sent_commit |
37 | msgdata,channel_init,next_index_local,u64, |
38 | msgdata,channel_init,next_index_remote,u64, |
39 | msgdata,channel_init,revocations_received,u64, |
40 | msgdata,channel_init,next_htlc_id,u64, |
41 | msgdata,channel_init,num_htlcs,u16, |
42 | msgdata,channel_init,htlcs,added_htlc,num_htlcs |
43 | msgdata,channel_init,htlc_states,enum htlc_state,num_htlcs |
44 | msgdata,channel_init,num_fulfilled,u16, |
45 | msgdata,channel_init,fulfilled,fulfilled_htlc,num_fulfilled |
46 | msgdata,channel_init,fulfilled_sides,enum side,num_fulfilled |
47 | msgdata,channel_init,num_failed,u16, |
48 | msgdata,channel_init,failed,failed_htlc,num_failed |
49 | msgdata,channel_init,failed_sides,enum side,num_failed |
50 | msgdata,channel_init,failheight,u32, |
51 | msgdata,channel_init,local_funding_locked,bool, |
52 | msgdata,channel_init,remote_funding_locked,bool, |
53 | msgdata,channel_init,funding_short_id,short_channel_id, |
54 | msgdata,channel_init,reestablish,bool, |
55 | msgdata,channel_init,send_shutdown,bool, |
56 | msgdata,channel_init,remote_shutdown_received,bool, |
57 | msgdata,channel_init,final_scriptpubkey_len,u16, |
58 | msgdata,channel_init,final_scriptpubkey,u8,final_scriptpubkey_len |
59 | msgdata,channel_init,flags,u8, |
60 | msgdata,channel_init,init_peer_pkt_len,u16, |
61 | msgdata,channel_init,init_peer_pkt,u8,init_peer_pkt_len |
62 | msgdata,channel_init,reached_announce_depth,bool, |
63 | msgdata,channel_init,last_remote_secret,secret, |
64 | msgdata,channel_init,lflen,u16, |
65 | msgdata,channel_init,localfeatures,u8,lflen |
66 | msgdata,channel_init,upfront_shutdown_script_len,u16, |
67 | msgdata,channel_init,upfront_shutdown_script,u8,upfront_shutdown_script_len |
68 | msgdata,channel_init,remote_ann_node_sig,?secp256k1_ecdsa_signature, |
69 | msgdata,channel_init,remote_ann_bitcoin_sig,?secp256k1_ecdsa_signature, |
70 | msgdata,channel_init,option_static_remotekey,bool, |
71 | msgdata,channel_init,dev_fast_gossip,bool, |
72 | # master->channeld funding hit new depth(funding locked if >= lock depth) |
73 | msgtype,channel_funding_depth,1002 |
74 | msgdata,channel_funding_depth,short_channel_id,?short_channel_id, |
75 | msgdata,channel_funding_depth,depth,u32, |
76 | # Tell channel to offer this htlc |
77 | msgtype,channel_offer_htlc,1004 |
78 | msgdata,channel_offer_htlc,amount_msat,amount_msat, |
79 | msgdata,channel_offer_htlc,cltv_expiry,u32, |
80 | msgdata,channel_offer_htlc,payment_hash,sha256, |
81 | msgdata,channel_offer_htlc,onion_routing_packet,u8,1366 |
82 | # Reply; synchronous since IDs have to increment. |
83 | msgtype,channel_offer_htlc_reply,1104 |
84 | msgdata,channel_offer_htlc_reply,id,u64, |
85 | # Zero failure code means success., |
86 | msgdata,channel_offer_htlc_reply,failure_code,u16, |
87 | msgdata,channel_offer_htlc_reply,failurestrlen,u16, |
88 | msgdata,channel_offer_htlc_reply,failurestr,u8,failurestrlen |
89 | # Main daemon found out the preimage for an HTLC |
90 | #include <bitcoin/preimage.h> |
91 | msgtype,channel_fulfill_htlc,1005 |
92 | msgdata,channel_fulfill_htlc,fulfilled_htlc,fulfilled_htlc, |
93 | # Main daemon says HTLC failed |
94 | msgtype,channel_fail_htlc,1006 |
95 | msgdata,channel_fail_htlc,failed_htlc,failed_htlc, |
96 | msgdata,channel_fail_htlc,failheight,u32, |
97 | # When we receive funding_locked. |
98 | msgtype,channel_got_funding_locked,1019 |
99 | msgdata,channel_got_funding_locked,next_per_commit_point,pubkey, |
100 | # When we send a commitment_signed message, tell master. |
101 | msgtype,channel_sending_commitsig,1020 |
102 | msgdata,channel_sending_commitsig,commitnum,u64, |
103 | msgdata,channel_sending_commitsig,feerate,u32, |
104 | # SENT_ADD_COMMIT, SENT_REMOVE_ACK_COMMIT, SENT_ADD_ACK_COMMIT, SENT_REMOVE_COMMIT |
105 | msgdata,channel_sending_commitsig,num_changed,u16, |
106 | msgdata,channel_sending_commitsig,changed,changed_htlc,num_changed |
107 | msgdata,channel_sending_commitsig,commit_sig,bitcoin_signature, |
108 | msgdata,channel_sending_commitsig,num_htlc_sigs,u16, |
109 | msgdata,channel_sending_commitsig,htlc_sigs,secp256k1_ecdsa_signature,num_htlc_sigs |
110 | # Wait for reply, to make sure it's on disk before we send commit. |
111 | msgtype,channel_sending_commitsig_reply,1120 |
112 | # When we have a commitment_signed message, tell master to remember. |
113 | msgtype,channel_got_commitsig,1021 |
114 | msgdata,channel_got_commitsig,commitnum,u64, |
115 | msgdata,channel_got_commitsig,feerate,u32, |
116 | msgdata,channel_got_commitsig,signature,bitcoin_signature, |
117 | msgdata,channel_got_commitsig,num_htlcs,u16, |
118 | msgdata,channel_got_commitsig,htlc_signature,secp256k1_ecdsa_signature,num_htlcs |
119 | # RCVD_ADD_COMMIT: we're now committed to their new offered HTLCs. |
120 | msgdata,channel_got_commitsig,num_added,u16, |
121 | msgdata,channel_got_commitsig,added,added_htlc,num_added |
122 | msgdata,channel_got_commitsig,shared_secret,secret,num_added |
123 | # RCVD_REMOVE_COMMIT: we're now no longer committed to these HTLCs. |
124 | msgdata,channel_got_commitsig,num_fulfilled,u16, |
125 | msgdata,channel_got_commitsig,fulfilled,fulfilled_htlc,num_fulfilled |
126 | msgdata,channel_got_commitsig,num_failed,u16, |
127 | msgdata,channel_got_commitsig,failed,failed_htlc,num_failed |
128 | # RCVD_ADD_ACK_COMMIT, RCVD_REMOVE_ACK_COMMIT |
129 | msgdata,channel_got_commitsig,num_changed,u16, |
130 | msgdata,channel_got_commitsig,changed,changed_htlc,num_changed |
131 | msgdata,channel_got_commitsig,tx,bitcoin_tx, |
132 | # Wait for reply, to make sure it's on disk before we send revocation. |
133 | msgtype,channel_got_commitsig_reply,1121 |
134 | #include <common/htlc_wire.h> |
135 | msgtype,channel_got_revoke,1022 |
136 | msgdata,channel_got_revoke,revokenum,u64, |
137 | msgdata,channel_got_revoke,per_commitment_secret,secret, |
138 | msgdata,channel_got_revoke,next_per_commit_point,pubkey, |
139 | # RCVD_ADD_ACK_REVOCATION, RCVD_REMOVE_ACK_REVOCATION, RCVD_ADD_REVOCATION, RCVD_REMOVE_REVOCATION |
140 | msgdata,channel_got_revoke,feerate,u32, |
141 | msgdata,channel_got_revoke,num_changed,u16, |
142 | msgdata,channel_got_revoke,changed,changed_htlc,num_changed |
143 | # Wait for reply, to make sure it's on disk before we continue |
144 | # (eg. if we sent another commitment_signed, that would implicitly ack). |
145 | msgtype,channel_got_revoke_reply,1122 |
146 | # Tell peer to shut down channel. |
147 | msgtype,channel_send_shutdown,1023 |
148 | # Peer told us that channel is shutting down |
149 | msgtype,channel_got_shutdown,1024 |
150 | msgdata,channel_got_shutdown,scriptpubkey_len,u16, |
151 | msgdata,channel_got_shutdown,scriptpubkey,u8,scriptpubkey_len |
152 | # Shutdown is complete, ready for closing negotiation. + peer_fd & gossip_fd. |
153 | msgtype,channel_shutdown_complete,1025 |
154 | msgdata,channel_shutdown_complete,per_peer_state,per_peer_state, |
155 | # Re-enable commit timer. |
156 | msgtype,channel_dev_reenable_commit,1026 |
157 | msgtype,channel_dev_reenable_commit_reply,1126, |
158 | msgtype,channel_feerates,1027 |
159 | msgdata,channel_feerates,feerate,u32, |
160 | msgdata,channel_feerates,min_feerate,u32, |
161 | msgdata,channel_feerates,max_feerate,u32, |
162 | # master -> channeld: do you have a memleak? |
163 | msgtype,channel_dev_memleak,1033 |
164 | msgtype,channel_dev_memleak_reply,1133 |
165 | msgdata,channel_dev_memleak_reply,leak,bool, |
166 | # Peer presented proof it was from the future. |
167 | msgtype,channel_fail_fallen_behind,1028 |
168 | # This is NULL if option_static_remotekey. |
169 | msgdata,channel_fail_fallen_behind,remote_per_commitment_point,?pubkey, |
170 | # Handle a channel specific feerate base ppm configuration |
171 | msgtype,channel_specific_feerates,1029 |
172 | msgdata,channel_specific_feerates,feerate_base,u32, |
173 | msgdata,channel_specific_feerates,feerate_ppm,u32, |
174 | # When we receive announcement_signatures for channel announce |
175 | msgtype,channel_got_announcement,1017 |
176 | msgdata,channel_got_announcement,remote_ann_node_sig,secp256k1_ecdsa_signature, |
177 | msgdata,channel_got_announcement,remote_ann_bitcoin_sig,secp256k1_ecdsa_signature, |
178 | # Ask channeld to send a error message. Used in forgetting channel case. |
179 | msgtype,channel_send_error,1008 |
180 | msgdata,channel_send_error,reason,wirestring, |
181 | # Tell master channeld has sent the error message. |
182 | msgtype,channel_send_error_reply,1108 |