#include #include opening_init,6000 # Which network are we configured for (as index into the chainparams)? opening_init,,network_index,u32 # Base configuration we'll offer (channel reserve will vary with amount) opening_init,,our_config,struct channel_config # Minimum/maximum configuration values we'll accept opening_init,,max_to_self_delay,u32 opening_init,,min_effective_htlc_capacity_msat,u64 opening_init,,crypto_state,struct crypto_state opening_init,,gossip_index,u64 # Seed to generate all the keys from opening_init,,seed,struct privkey #include #include # This means we offer the open. opening_funder,6001 opening_funder,,funding_satoshis,u64 opening_funder,,push_msat,u64 opening_funder,,feerate_per_kw,u32 opening_funder,,max_minimum_depth,u32 opening_funder,,change_satoshis,u64 opening_funder,,change_keyindex,u32 opening_funder,,channel_flags,u8 #include opening_funder,,num_inputs,u16 opening_funder,,inputs,num_inputs*struct utxo opening_funder,,bip32,struct ext_key # This gives their sig, means we can broadcast tx: we're done. opening_funder_reply,6101 opening_funder_reply,,their_config,struct channel_config opening_funder_reply,,first_commit,struct bitcoin_tx opening_funder_reply,,first_commit_sig,secp256k1_ecdsa_signature opening_funder_reply,,crypto_state,struct crypto_state opening_funder_reply,,gossip_index,u64 opening_funder_reply,,revocation_basepoint,struct pubkey opening_funder_reply,,payment_basepoint,struct pubkey opening_funder_reply,,htlc_basepoint,struct pubkey opening_funder_reply,,delayed_payment_basepoint,struct pubkey opening_funder_reply,,their_per_commit_point,struct pubkey opening_funder_reply,,minimum_depth,u32 opening_funder_reply,,remote_fundingkey,struct pubkey opening_funder_reply,,funding_txid,struct bitcoin_txid opening_funder_reply,,feerate_per_kw,u32 # This means they offer the open (contains their offer packet) opening_fundee,6003 opening_fundee,,minimum_depth,u32 opening_fundee,,min_feerate,u32 opening_fundee,,max_feerate,u32 opening_fundee,,len,u16 opening_fundee,,msg,len*u8 # This gives their txid and info, means we can send funding_signed: we're done. opening_fundee_reply,6103 opening_fundee_reply,,their_config,struct channel_config opening_fundee_reply,,first_commit,struct bitcoin_tx opening_fundee_reply,,first_commit_sig,secp256k1_ecdsa_signature opening_fundee_reply,,crypto_state,struct crypto_state opening_fundee_reply,,gossip_index,u64 opening_fundee_reply,,revocation_basepoint,struct pubkey opening_fundee_reply,,payment_basepoint,struct pubkey opening_fundee_reply,,htlc_basepoint,struct pubkey opening_fundee_reply,,delayed_payment_basepoint,struct pubkey opening_fundee_reply,,their_per_commit_point,struct pubkey opening_fundee_reply,,remote_fundingkey,struct pubkey opening_fundee_reply,,funding_txid,struct bitcoin_txid opening_fundee_reply,,funding_txout,u16 opening_fundee_reply,,funding_satoshis,u64 opening_fundee_reply,,push_msat,u64 opening_fundee_reply,,channel_flags,u8 opening_fundee_reply,,feerate_per_kw,u32 # The (encrypted) funding signed message: send this and we're committed. opening_fundee_reply,,msglen,u16 opening_fundee_reply,,funding_signed_msg,msglen*u8 # We disagreed with opening parameters, but peer is ok for gossip (+ peerfd) opening_negotiation_failed,6010 opening_negotiation_failed,,crypto_state,struct crypto_state opening_negotiation_failed,,gossip_index,u64 opening_negotiation_failed,,len,u16 # FIXME: string support! opening_negotiation_failed,,msg,len*u8