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