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