mirror of
https://github.com/aljazceru/lightning.git
synced 2026-01-05 23:24:21 +01:00
Rather a big commit, but I couldn't figure out how to split it nicely. It introduces a new message from the channel to the master signaling that the channel has been announced, so that the master can take care of announcing the node itself. A provisorial announcement is created and passed to the HSM, which signs it and passes it back to the master. Finally the master injects it into gossipd which will take care of broadcasting it.
3.6 KiB
3.6 KiB
| 1 | # Shouldn't happen |
|---|---|
| 2 | channel_bad_command,0x8000 |
| 3 | # Also shouldn't happen |
| 4 | channel_hsm_failed,0x8001 |
| 5 | channel_crypto_failed,0x8002 |
| 6 | channel_internal_error,0x8003 |
| 7 | # These are due to peer. |
| 8 | channel_peer_write_failed,0x8010 |
| 9 | channel_peer_read_failed,0x8011 |
| 10 | channel_peer_bad_message,0x8012 |
| 11 | # Received funding_locked |
| 12 | channel_received_funding_locked,1000 |
| 13 | # Received and sent funding_locked |
| 14 | channel_normal_operation,1001 |
| 15 | #include <lightningd/cryptomsg.h> |
| 16 | #include <lightningd/channel_config.h> |
| 17 | # Begin! You're still waiting for the tx to be buried though (passes |
| 18 | # gossipd-client fd) |
| 19 | channel_init,1 |
| 20 | channel_init,0,funding_txid,struct sha256_double |
| 21 | channel_init,32,funding_txout,2 |
| 22 | channel_init,34,our_config,struct channel_config |
| 23 | channel_init,70,their_config,struct channel_config |
| 24 | channel_init,106,first_commit_sig,secp256k1_ecdsa_signature |
| 25 | channel_init,166,crypto_state,struct crypto_state |
| 26 | channel_init,310,remote_fundingkey,33 |
| 27 | channel_init,343,revocation_basepoint,33 |
| 28 | channel_init,376,payment_basepoint,33 |
| 29 | channel_init,409,delayed_payment_basepoint,33 |
| 30 | channel_init,442,their_per_commit_point,33 |
| 31 | channel_init,475,am_funder,bool |
| 32 | channel_init,476,fee_base,4 |
| 33 | channel_init,480,fee_proportional,4 |
| 34 | channel_init,484,funding_satoshi,8 |
| 35 | channel_init,492,push_msat,8 |
| 36 | channel_init,500,seed,struct privkey |
| 37 | channel_init,533,local_node_id,struct pubkey |
| 38 | channel_init,566,remote_node_id,struct pubkey |
| 39 | channel_init,599,commit_msec,4 |
| 40 | channel_init,603,cltv_delta,u16 |
| 41 | # Tx is deep enough, go! |
| 42 | channel_funding_locked,2 |
| 43 | channel_funding_locked,0,short_channel_id,struct short_channel_id |
| 44 | # Tell the channel that we may announce the channel's existence |
| 45 | channel_funding_announce_depth,3 |
| 46 | # Tell channel to offer this htlc |
| 47 | channel_offer_htlc,4 |
| 48 | channel_offer_htlc,0,amount_msat,4 |
| 49 | channel_offer_htlc,0,cltv_expiry,4 |
| 50 | channel_offer_htlc,0,payment_hash,32 |
| 51 | channel_offer_htlc,0,onion_routing_packet,1366*u8 |
| 52 | # Reply; synchronous since IDs have to increment. |
| 53 | channel_offer_htlc_reply,104 |
| 54 | channel_offer_htlc_reply,0,id,8 |
| 55 | # Zero failure code means success. |
| 56 | channel_offer_htlc_reply,0,failure_code,2 |
| 57 | channel_offer_htlc_reply,0,failurestrlen,2 |
| 58 | channel_offer_htlc_reply,0,failurestr,failurestrlen*u8 |
| 59 | # Main daemon found out the preimage for an htlc |
| 60 | #include <bitcoin/preimage.h> |
| 61 | channel_fulfill_htlc,5 |
| 62 | channel_fulfill_htlc,0,id,8 |
| 63 | channel_fulfill_htlc,0,payment_preimage,struct preimage |
| 64 | # Main daemon says HTLC failed |
| 65 | channel_fail_htlc,6 |
| 66 | channel_fail_htlc,0,id,8 |
| 67 | channel_fail_htlc,0,len,2 |
| 68 | channel_fail_htlc,0,error_pkt,len*u8 |
| 69 | # Peer and I are irrevocably committed to this HTLC. |
| 70 | channel_accepted_htlc,7 |
| 71 | channel_accepted_htlc,0,id,8 |
| 72 | channel_accepted_htlc,0,amount_msat,4 |
| 73 | channel_accepted_htlc,0,cltv_expiry,4 |
| 74 | channel_accepted_htlc,0,payment_hash,32 |
| 75 | channel_accepted_htlc,0,next_onion,1366*u8 |
| 76 | channel_accepted_htlc,0,forward,bool |
| 77 | channel_accepted_htlc,0,amt_to_forward,u64 |
| 78 | channel_accepted_htlc,0,outgoing_cltv_value,u32 |
| 79 | channel_accepted_htlc,0,next_channel,struct short_channel_id |
| 80 | channel_accepted_htlc,0,shared_secret,struct secret |
| 81 | # FIXME: Add code to commit current channel state! |
| 82 | # The HTLC preimage was given. |
| 83 | channel_fulfilled_htlc,8 |
| 84 | channel_fulfilled_htlc,0,id,8 |
| 85 | channel_fulfilled_htlc,0,payment_preimage,struct preimage |
| 86 | # This HTLC failed |
| 87 | channel_failed_htlc,9 |
| 88 | channel_failed_htlc,0,id,8 |
| 89 | channel_failed_htlc,0,len,2 |
| 90 | channel_failed_htlc,0,reason,len*u8 |
| 91 | # This HTLC was returned malformed |
| 92 | channel_malformed_htlc,10 |
| 93 | channel_malformed_htlc,0,id,8 |
| 94 | channel_malformed_htlc,0,sha256_of_onion,32 |
| 95 | channel_malformed_htlc,0,failure_code,2 |
| 96 | # Ping/pong test. |
| 97 | channel_ping,11 |
| 98 | channel_ping,0,num_pong_bytes,u16 |
| 99 | channel_ping,0,len,u16 |
| 100 | channel_ping_reply,111 |
| 101 | channel_ping_reply,0,totlen,u16 |
| 102 | # Channeld tells the master that the channel has been announced |
| 103 | channel_announced,12 |