mirror of
https://github.com/ElementsProject/lightning.git
synced 2025-01-06 05:49:30 +01:00
dffe2f516a
This is prep work for when we sign htlc txs with SIGHASH_SINGLE|SIGHASH_ANYONECANPAY. We still deal with raw signatures for the htlc txs at the moment, since we send them like that across the wire, and changing that was simply too painful (for the moment?). Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
6.7 KiB
6.7 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,u64 |
10 | channel_init,,our_config,struct channel_config |
11 | channel_init,,their_config,struct channel_config |
12 | # FIXME: Fix generate-wire.py to allow NUM_SIDES*u32 here. |
13 | channel_init,,feerate_per_kw,2*u32 |
14 | channel_init,,feerate_min,u32 |
15 | channel_init,,feerate_max,u32 |
16 | channel_init,,first_commit_sig,struct bitcoin_signature |
17 | channel_init,,crypto_state,struct crypto_state |
18 | channel_init,,remote_fundingkey,struct pubkey |
19 | channel_init,,remote_basepoints,struct basepoints |
20 | channel_init,,remote_per_commit,struct pubkey |
21 | channel_init,,old_remote_per_commit,struct pubkey |
22 | channel_init,,funder,enum side |
23 | channel_init,,fee_base,u32 |
24 | channel_init,,fee_proportional,u32 |
25 | channel_init,,local_msatoshi,u64 |
26 | channel_init,,our_basepoints,struct basepoints |
27 | channel_init,,our_funding_pubkey,struct pubkey |
28 | channel_init,,local_node_id,struct pubkey |
29 | channel_init,,remote_node_id,struct pubkey |
30 | channel_init,,commit_msec,u32 |
31 | channel_init,,cltv_delta,u16 |
32 | channel_init,,last_was_revoke,bool |
33 | channel_init,,num_last_sent_commit,u16 |
34 | channel_init,,last_sent_commit,num_last_sent_commit*struct changed_htlc |
35 | channel_init,,next_index_local,u64 |
36 | channel_init,,next_index_remote,u64 |
37 | channel_init,,revocations_received,u64 |
38 | channel_init,,next_htlc_id,u64 |
39 | channel_init,,num_htlcs,u16 |
40 | channel_init,,htlcs,num_htlcs*struct added_htlc |
41 | channel_init,,htlc_states,num_htlcs*enum htlc_state |
42 | channel_init,,num_fulfilled,u16 |
43 | channel_init,,fulfilled,num_fulfilled*struct fulfilled_htlc |
44 | channel_init,,fulfilled_sides,num_fulfilled*enum side |
45 | channel_init,,num_failed,u16 |
46 | channel_init,,failed,num_failed*struct failed_htlc |
47 | channel_init,,failed_sides,num_failed*enum side |
48 | channel_init,,local_funding_locked,bool |
49 | channel_init,,remote_funding_locked,bool |
50 | channel_init,,funding_short_id,struct short_channel_id |
51 | channel_init,,reestablish,bool |
52 | channel_init,,send_shutdown,bool |
53 | channel_init,,remote_shutdown_received,bool |
54 | channel_init,,final_scriptpubkey_len,u16 |
55 | channel_init,,final_scriptpubkey,final_scriptpubkey_len*u8 |
56 | channel_init,,flags,u8 |
57 | channel_init,,init_peer_pkt_len,u16 |
58 | channel_init,,init_peer_pkt,init_peer_pkt_len*u8 |
59 | channel_init,,reached_announce_depth,bool |
60 | channel_init,,last_remote_secret,struct secret |
61 | # master->channeld funding hit new depth >= lock depth |
62 | channel_funding_locked,1002 |
63 | channel_funding_locked,,short_channel_id,struct short_channel_id |
64 | channel_funding_locked,,depth,u32 |
65 | # Tell channel to offer this htlc |
66 | channel_offer_htlc,1004 |
67 | channel_offer_htlc,,amount_msat,u64 |
68 | channel_offer_htlc,,cltv_expiry,u32 |
69 | channel_offer_htlc,,payment_hash,struct sha256 |
70 | channel_offer_htlc,,onion_routing_packet,1366*u8 |
71 | # Reply; synchronous since IDs have to increment. |
72 | channel_offer_htlc_reply,1104 |
73 | channel_offer_htlc_reply,,id,u64 |
74 | # Zero failure code means success. |
75 | channel_offer_htlc_reply,,failure_code,u16 |
76 | channel_offer_htlc_reply,,failurestrlen,u16 |
77 | channel_offer_htlc_reply,,failurestr,failurestrlen*u8 |
78 | # Main daemon found out the preimage for an HTLC |
79 | #include <bitcoin/preimage.h> |
80 | channel_fulfill_htlc,1005 |
81 | channel_fulfill_htlc,,fulfilled_htlc,struct fulfilled_htlc |
82 | # Main daemon says HTLC failed |
83 | channel_fail_htlc,1006 |
84 | channel_fail_htlc,,failed_htlc,struct failed_htlc |
85 | # When we receive funding_locked. |
86 | channel_got_funding_locked,1019 |
87 | channel_got_funding_locked,,next_per_commit_point,struct pubkey |
88 | # When we send a commitment_signed message, tell master. |
89 | channel_sending_commitsig,1020 |
90 | channel_sending_commitsig,,commitnum,u64 |
91 | channel_sending_commitsig,,feerate,u32 |
92 | # SENT_ADD_COMMIT, SENT_REMOVE_ACK_COMMIT, SENT_ADD_ACK_COMMIT, SENT_REMOVE_COMMIT |
93 | channel_sending_commitsig,,num_changed,u16 |
94 | channel_sending_commitsig,,changed,num_changed*struct changed_htlc |
95 | channel_sending_commitsig,,commit_sig,struct bitcoin_signature |
96 | channel_sending_commitsig,,num_htlc_sigs,u16 |
97 | channel_sending_commitsig,,htlc_sigs,num_htlc_sigs*secp256k1_ecdsa_signature |
98 | # Wait for reply, to make sure it's on disk before we send commit. |
99 | channel_sending_commitsig_reply,1120 |
100 | # When we have a commitment_signed message, tell master to remember. |
101 | channel_got_commitsig,1021 |
102 | channel_got_commitsig,,commitnum,u64 |
103 | channel_got_commitsig,,feerate,u32 |
104 | channel_got_commitsig,,signature,struct bitcoin_signature |
105 | channel_got_commitsig,,num_htlcs,u16 |
106 | channel_got_commitsig,,htlc_signature,num_htlcs*secp256k1_ecdsa_signature |
107 | # RCVD_ADD_COMMIT: we're now committed to their new offered HTLCs. |
108 | channel_got_commitsig,,num_added,u16 |
109 | channel_got_commitsig,,added,num_added*struct added_htlc |
110 | channel_got_commitsig,,shared_secret,num_added*struct secret |
111 | # RCVD_REMOVE_COMMIT: we're now no longer committed to these HTLCs. |
112 | channel_got_commitsig,,num_fulfilled,u16 |
113 | channel_got_commitsig,,fulfilled,num_fulfilled*struct fulfilled_htlc |
114 | channel_got_commitsig,,num_failed,u16 |
115 | channel_got_commitsig,,failed,num_failed*struct failed_htlc |
116 | # RCVD_ADD_ACK_COMMIT, RCVD_REMOVE_ACK_COMMIT |
117 | channel_got_commitsig,,num_changed,u16 |
118 | channel_got_commitsig,,changed,num_changed*struct changed_htlc |
119 | channel_got_commitsig,,tx,struct bitcoin_tx |
120 | # Wait for reply, to make sure it's on disk before we send revocation. |
121 | channel_got_commitsig_reply,1121 |
122 | #include <common/htlc_wire.h> |
123 | channel_got_revoke,1022 |
124 | channel_got_revoke,,revokenum,u64 |
125 | channel_got_revoke,,per_commitment_secret,struct secret |
126 | channel_got_revoke,,next_per_commit_point,struct pubkey |
127 | # RCVD_ADD_ACK_REVOCATION, RCVD_REMOVE_ACK_REVOCATION, RCVD_ADD_REVOCATION, RCVD_REMOVE_REVOCATION |
128 | channel_got_revoke,,feerate,u32 |
129 | channel_got_revoke,,num_changed,u16 |
130 | channel_got_revoke,,changed,num_changed*struct changed_htlc |
131 | # Wait for reply, to make sure it's on disk before we continue |
132 | # (eg. if we sent another commitment_signed, that would implicitly ack). |
133 | channel_got_revoke_reply,1122 |
134 | # Tell peer to shut down channel. |
135 | channel_send_shutdown,1023 |
136 | # Peer told us that channel is shutting down |
137 | channel_got_shutdown,1024 |
138 | channel_got_shutdown,,scriptpubkey_len,u16 |
139 | channel_got_shutdown,,scriptpubkey,scriptpubkey_len*u8 |
140 | # Shutdown is complete, ready for closing negotiation. + peer_fd & gossip_fd. |
141 | channel_shutdown_complete,1025 |
142 | channel_shutdown_complete,,crypto_state,struct crypto_state |
143 | # Re-enable commit timer. |
144 | channel_dev_reenable_commit,1026 |
145 | channel_dev_reenable_commit_reply,1126 |
146 | channel_feerates,1027 |
147 | channel_feerates,,feerate,u32 |
148 | channel_feerates,,min_feerate,u32 |
149 | channel_feerates,,max_feerate,u32 |
150 | # master -> channeld: do you have a memleak? |
151 | channel_dev_memleak,1033 |
152 | channel_dev_memleak_reply,1133 |
153 | channel_dev_memleak_reply,,leak,bool |
154 | # Peer presented proof it was from the future. |
155 | channel_fail_fallen_behind,1028 |
156 | channel_fail_fallen_behind,,remote_per_commitment_point,struct pubkey |