diff --git a/channeld/channel_wire.csv b/channeld/channel_wire.csv index 9a6237bc0..ac276b55f 100644 --- a/channeld/channel_wire.csv +++ b/channeld/channel_wire.csv @@ -1,11 +1,11 @@ # Received and sent funding_locked -channel_normal_operation,1001 +channel_normal_operation,11001 #include #include # Begin! (passes gossipd-client fd) -channel_init,1 +channel_init,1000 channel_init,,chain_hash,struct sha256_double channel_init,,funding_txid,struct sha256_double channel_init,,funding_txout,2 @@ -58,21 +58,21 @@ channel_init,,init_peer_pkt_len,u16 channel_init,,init_peer_pkt,init_peer_pkt_len*u8 # Tx is deep enough, go! -channel_funding_locked,2 +channel_funding_locked,1002 channel_funding_locked,,short_channel_id,struct short_channel_id # Tell the channel that we may announce the channel's existence -channel_funding_announce_depth,3 +channel_funding_announce_depth,1003 # Tell channel to offer this htlc -channel_offer_htlc,4 +channel_offer_htlc,1004 channel_offer_htlc,,amount_msat,8 channel_offer_htlc,,cltv_expiry,4 channel_offer_htlc,,payment_hash,32 channel_offer_htlc,,onion_routing_packet,1366*u8 # Reply; synchronous since IDs have to increment. -channel_offer_htlc_reply,104 +channel_offer_htlc_reply,1104 channel_offer_htlc_reply,,id,8 # Zero failure code means success. channel_offer_htlc_reply,,failure_code,2 @@ -81,12 +81,12 @@ channel_offer_htlc_reply,,failurestr,failurestrlen*u8 # Main daemon found out the preimage for an htlc #include -channel_fulfill_htlc,5 +channel_fulfill_htlc,1005 channel_fulfill_htlc,,id,8 channel_fulfill_htlc,,payment_preimage,struct preimage # Main daemon says HTLC failed -channel_fail_htlc,6 +channel_fail_htlc,1006 channel_fail_htlc,,id,8 # If malformed is non-zero, it's a BADONION code channel_fail_htlc,,malformed,u16 @@ -95,22 +95,22 @@ channel_fail_htlc,,len,2 channel_fail_htlc,,error_pkt,len*u8 # Ping/pong test. -channel_ping,11 +channel_ping,1011 channel_ping,,num_pong_bytes,u16 channel_ping,,len,u16 -channel_ping_reply,111 +channel_ping_reply,1111 channel_ping_reply,,totlen,u16 # Channeld tells the master that the channel has been announced -channel_announced,12 +channel_announced,1012 # When we receive funding_locked. -channel_got_funding_locked,19 +channel_got_funding_locked,1019 channel_got_funding_locked,,next_per_commit_point,struct pubkey # When we send a commitment_signed message, tell master. -channel_sending_commitsig,20 +channel_sending_commitsig,1020 channel_sending_commitsig,,commitnum,u64 # SENT_ADD_COMMIT, SENT_REMOVE_ACK_COMMIT, SENT_ADD_ACK_COMMIT, SENT_REMOVE_COMMIT channel_sending_commitsig,,num_changed,u16 @@ -120,10 +120,10 @@ channel_sending_commitsig,,num_htlc_sigs,u16 channel_sending_commitsig,,htlc_sigs,num_htlc_sigs*secp256k1_ecdsa_signature # Wait for reply, to make sure it's on disk before we send commit. -channel_sending_commitsig_reply,120 +channel_sending_commitsig_reply,1120 # When we have a commitment_signed message, tell master to remember. -channel_got_commitsig,21 +channel_got_commitsig,1021 channel_got_commitsig,,commitnum,u64 channel_got_commitsig,,signature,secp256k1_ecdsa_signature channel_got_commitsig,,num_htlcs,u16 @@ -143,11 +143,11 @@ channel_got_commitsig,,changed,num_changed*struct changed_htlc channel_got_commitsig,,tx,struct bitcoin_tx # Wait for reply, to make sure it's on disk before we send revocation. -channel_got_commitsig_reply,121 +channel_got_commitsig_reply,1121 #include -channel_got_revoke,22 +channel_got_revoke,1022 channel_got_revoke,,revokenum,u64 channel_got_revoke,,per_commitment_secret,struct sha256 channel_got_revoke,,next_per_commit_point,struct pubkey @@ -156,22 +156,22 @@ channel_got_revoke,,num_changed,u16 channel_got_revoke,,changed,num_changed*struct changed_htlc # Wait for reply, to make sure it's on disk before we continue # (eg. if we sent another commitment_signed, that would implicitly ack). -channel_got_revoke_reply,122 +channel_got_revoke_reply,1122 # Tell peer that channel is shutting down -channel_send_shutdown,23 +channel_send_shutdown,1023 channel_send_shutdown,,scriptpubkey_len,u16 channel_send_shutdown,,scriptpubkey,scriptpubkey_len*u8 # Peer told us that channel is shutting down -channel_got_shutdown,24 +channel_got_shutdown,1024 channel_got_shutdown,,scriptpubkey_len,u16 channel_got_shutdown,,scriptpubkey,scriptpubkey_len*u8 # Shutdown is complete, ready for closing negotiation. + peer_fd & gossip_fd. -channel_shutdown_complete,25 +channel_shutdown_complete,1025 channel_shutdown_complete,,crypto_state,struct crypto_state # Re-enable commit timer. -channel_dev_reenable_commit,26 -channel_dev_reenable_commit_reply,126 +channel_dev_reenable_commit,1026 +channel_dev_reenable_commit_reply,1126 diff --git a/closingd/closing_wire.csv b/closingd/closing_wire.csv index 66efa9be2..12ef79312 100644 --- a/closingd/closing_wire.csv +++ b/closingd/closing_wire.csv @@ -1,7 +1,7 @@ #include #include # Begin! (passes peer fd, gossipd-client fd) -closing_init,1 +closing_init,2001 closing_init,,crypto_state,struct crypto_state closing_init,,seed,struct privkey closing_init,,funding_txid,struct sha256_double @@ -25,11 +25,11 @@ closing_init,,next_index_remote,u64 closing_init,,revocations_received,u64 # We received an offer, save signature. -closing_received_signature,2 +closing_received_signature,2002 closing_received_signature,,signature,secp256k1_ecdsa_signature closing_received_signature,,tx,struct bitcoin_tx -closing_received_signature_reply,102 +closing_received_signature_reply,2102 # Negotiations complete, we're exiting. -closing_complete,4 +closing_complete,2004 diff --git a/gossipd/gossip_wire.csv b/gossipd/gossip_wire.csv index 23a021d99..b8a70e3c5 100644 --- a/gossipd/gossip_wire.csv +++ b/gossipd/gossip_wire.csv @@ -1,11 +1,11 @@ # Peers can give a bad message, we close their fd, but no harm done. -gossipstatus_peer_bad_msg,1000 +gossipstatus_peer_bad_msg,13000 gossipstatus_peer_bad_msg,,unique_id,8 gossipstatus_peer_bad_msg,,len,2 gossipstatus_peer_bad_msg,,err,len*u8 # Misc problems like opening control fd. -gossipstatus_peer_failed,1001 +gossipstatus_peer_failed,13001 gossipstatus_peer_failed,,unique_id,8 gossipstatus_peer_failed,,len,2 gossipstatus_peer_failed,,err,len*u8 @@ -13,29 +13,29 @@ gossipstatus_peer_failed,,err,len*u8 #include # Initialize the gossip daemon -gossipctl_init,0 +gossipctl_init,3000 gossipctl_init,,broadcast_interval,4 gossipctl_init,,chain_hash,struct sha256_double # These take an fd, but have no response # (if it is to move onto a channel, we get a status msg). -gossipctl_new_peer,1 +gossipctl_new_peer,3001 gossipctl_new_peer,,unique_id,8 gossipctl_new_peer,,crypto_state,struct crypto_state # Tell it to release a peer which has initialized. -gossipctl_release_peer,2 +gossipctl_release_peer,3002 gossipctl_release_peer,,unique_id,8 # This releases the peer and returns the cryptostate (followed two fds: peer and gossip) -gossipctl_release_peer_reply,102 +gossipctl_release_peer_reply,3102 gossipctl_release_peer_reply,,crypto_state,struct crypto_state # This is if we couldn't find the peer. -gossipctl_release_peer_replyfail,202 +gossipctl_release_peer_replyfail,3202 # This is where we save a peer's features. -#gossipstatus_peer_features,1 +#gossipstatus_peer_features,3001 #gossipstatus_peer_features,,unique_id,8 #gossipstatus_peer_features,,gflen,2 #gossipstatus_peer_features,,globalfeatures,gflen @@ -43,72 +43,72 @@ gossipctl_release_peer_replyfail,202 #gossipstatus_peer_features,,localfeatures,lflen # Peer can send non-gossip packet (usually an open_channel) (followed two fds: peer and gossip) -gossipstatus_peer_nongossip,4 +gossipstatus_peer_nongossip,3004 gossipstatus_peer_nongossip,,unique_id,8 gossipstatus_peer_nongossip,,crypto_state,struct crypto_state gossipstatus_peer_nongossip,,len,2 gossipstatus_peer_nongossip,,msg,len*u8 # Pass JSON-RPC getnodes call through -gossip_getnodes_request,5 +gossip_getnodes_request,3005 #include -gossip_getnodes_reply,105 +gossip_getnodes_reply,3105 gossip_getnodes_reply,,num_nodes,u16 gossip_getnodes_reply,,nodes,num_nodes*struct gossip_getnodes_entry # Pass JSON-RPC getroute call through -gossip_getroute_request,6 +gossip_getroute_request,3006 gossip_getroute_request,,source,struct pubkey gossip_getroute_request,,destination,struct pubkey gossip_getroute_request,,msatoshi,u32 gossip_getroute_request,,riskfactor,u16 -gossip_getroute_reply,106 +gossip_getroute_reply,3106 gossip_getroute_reply,,num_hops,u16 gossip_getroute_reply,,hops,num_hops*struct route_hop -gossip_getchannels_request,7 +gossip_getchannels_request,3007 -gossip_getchannels_reply,107 +gossip_getchannels_reply,3107 gossip_getchannels_reply,,num_channels,u16 gossip_getchannels_reply,,nodes,num_channels*struct gossip_getchannels_entry # Ping/pong test. -gossip_ping,8 +gossip_ping,3008 gossip_ping,,unique_id,u64 gossip_ping,,num_pong_bytes,u16 gossip_ping,,len,u16 -gossip_ping_reply,108 +gossip_ping_reply,3108 gossip_ping_reply,,totlen,u16 # Given a short_channel_id, return the endpoints -gossip_resolve_channel_request,9 +gossip_resolve_channel_request,3009 gossip_resolve_channel_request,,channel_id,struct short_channel_id -gossip_resolve_channel_reply,109 +gossip_resolve_channel_reply,3109 gossip_resolve_channel_reply,,num_keys,u16 gossip_resolve_channel_reply,,keys,num_keys*struct pubkey # The main daemon forward some gossip message to gossipd, allows injecting # arbitrary gossip messages. -gossip_forwarded_msg,10 +gossip_forwarded_msg,3010 gossip_forwarded_msg,,msglen,2 gossip_forwarded_msg,,msg,msglen # If peer is still connected, fail it (master does this for reconnect) -gossipctl_fail_peer,11 +gossipctl_fail_peer,3011 gossipctl_fail_peer,,unique_id,8 # Get a gossip fd for this peer (it has reconnected) -gossipctl_get_peer_gossipfd,12 +gossipctl_get_peer_gossipfd,3012 gossipctl_get_peer_gossipfd,,unique_id,u64 # Does it want a full dump of gossip? gossipctl_get_peer_gossipfd,,sync,bool # + fd. -gossipctl_get_peer_gossipfd_reply,112 +gossipctl_get_peer_gossipfd_reply,3112 # Failure (can't make new socket) -gossipctl_get_peer_gossipfd_replyfail,212 +gossipctl_get_peer_gossipfd_replyfail,3212 diff --git a/handshaked/handshake_wire.csv b/handshaked/handshake_wire.csv index 1452ca5c6..be06b8ffc 100644 --- a/handshaked/handshake_wire.csv +++ b/handshaked/handshake_wire.csv @@ -1,17 +1,17 @@ #include # FIXME: This is probably too finegrained. -initr_act_one,1001 -initr_act_two,1002 -initr_act_three,1003 -respr_act_one,1011 -respr_act_two,1012 -respr_act_three,1013 -success,0 +initr_act_one,14001 +initr_act_two,14002 +initr_act_three,14003 +respr_act_one,14011 +respr_act_two,14012 +respr_act_three,14013 +success,4000 -handshake_responder,1 +handshake_responder,4001 handshake_responder,,my_id,33 -handshake_responder_reply,101 +handshake_responder_reply,4101 handshake_responder_reply,,initiator_id,33 handshake_responder_reply,,cs,struct crypto_state handshake_responder_reply,,gflen,2 @@ -19,11 +19,11 @@ handshake_responder_reply,,globalfeatures,gflen handshake_responder_reply,,lflen,2 handshake_responder_reply,,localfeatures,lflen -handshake_initiator,2 +handshake_initiator,4002 handshake_initiator,,my_id,33 handshake_initiator,,responder_id,33 -handshake_initiator_reply,102 +handshake_initiator_reply,4102 handshake_initiator_reply,,cs,struct crypto_state handshake_initiator_reply,,gflen,2 handshake_initiator_reply,,globalfeatures,gflen diff --git a/lightningd/subd.c b/lightningd/subd.c index f902e0a0d..8819dad27 100644 --- a/lightningd/subd.c +++ b/lightningd/subd.c @@ -551,6 +551,7 @@ struct subd *new_subd(const tal_t *ctx, void subd_send_msg(struct subd *sd, const u8 *msg_out) { + assert(!strstarts(sd->msgname(fromwire_peektype(msg_out)), "INVALID")); msg_enqueue(&sd->outq, msg_out); } diff --git a/onchaind/onchain_wire.csv b/onchaind/onchain_wire.csv index 1b1de8763..86907ee66 100644 --- a/onchaind/onchain_wire.csv +++ b/onchaind/onchain_wire.csv @@ -1,6 +1,6 @@ #include # Begin! Here's the onchain tx which spends funding tx, followed by all HTLCs. -onchain_init,1 +onchain_init,5001 onchain_init,,seed,struct privkey onchain_init,,shachain,struct shachain onchain_init,,funding_amount_satoshi,u64 @@ -33,48 +33,48 @@ onchain_init,,num_htlcs,u64 #include # This is all the HTLCs: one per message -onchain_htlc,2 +onchain_htlc,5002 onchain_htlc,,htlc,struct htlc_stub # If it's not in the commitment tx, tell us (immediately or htlc_missing_depth) onchain_htlc,,tell_if_missing,bool onchain_htlc,,tell_immediately,bool # This sets what the state is, depending on tx. -onchain_init_reply,101 +onchain_init_reply,5101 onchain_init_reply,,state,u8 # onchaind->master: Send out a tx. -onchain_broadcast_tx,3 +onchain_broadcast_tx,5003 onchain_broadcast_tx,,tx,struct bitcoin_tx # master->onchaind: Notifier that an output has been spent by input_num of tx. -onchain_spent,4 +onchain_spent,5004 onchain_spent,,tx,struct bitcoin_tx onchain_spent,,input_num,u32 onchain_spent,,blockheight,u32 # master->onchaind: We will receive more than one of these, as depth changes. -onchain_depth,5 +onchain_depth,5005 onchain_depth,,txid,struct sha256_double onchain_depth,,depth,u32 # onchaind->master: We don't want to watch this tx, or its outputs -onchain_unwatch_tx,6 +onchain_unwatch_tx,5006 onchain_unwatch_tx,,txid,struct sha256_double onchain_unwatch_tx,,num_outputs,u32 # master->onchaind: We know HTLC preimage -onchain_known_preimage,7 +onchain_known_preimage,5007 onchain_known_preimage,,preimage,struct preimage # onchaind->master: We discovered HTLC preimage -onchain_extracted_preimage,8 +onchain_extracted_preimage,5008 onchain_extracted_preimage,,preimage,struct preimage # onchaind->master: this HTLC was missing from commit tx. -onchain_missing_htlc_output,9 +onchain_missing_htlc_output,5009 onchain_missing_htlc_output,,htlc,struct htlc_stub # onchaind->master: this HTLC has timed out (after reasonable_depth) -onchain_htlc_timeout,10 +onchain_htlc_timeout,5010 onchain_htlc_timeout,,htlc,struct htlc_stub diff --git a/openingd/opening_wire.csv b/openingd/opening_wire.csv index e7c2de3dd..44501ed2d 100644 --- a/openingd/opening_wire.csv +++ b/openingd/opening_wire.csv @@ -1,6 +1,6 @@ #include #include -opening_init,0 +opening_init,6000 # Which network are we configured for (as index into the chainparams)? opening_init,,network_index,4 # Base configuration we'll offer (channel reserve will vary with amount) @@ -15,7 +15,7 @@ opening_init,,seed,struct privkey #include #include # This means we offer the open. -opening_funder,1 +opening_funder,6001 opening_funder,,funding_satoshis,8 opening_funder,,push_msat,8 opening_funder,,feerate_per_kw,4 @@ -29,7 +29,7 @@ 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,101 +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 @@ -44,7 +44,7 @@ opening_funder_reply,,funding_txid,struct sha256_double opening_funder_reply,,feerate_per_kw,4 # This means they offer the open (contains their offer packet) -opening_fundee,3 +opening_fundee,6003 opening_fundee,,minimum_depth,4 opening_fundee,,min_feerate,4 opening_fundee,,max_feerate,4 @@ -52,7 +52,7 @@ opening_fundee,,len,2 opening_fundee,,msg,len*u8 # This gives their txid and info, means we can send funding_signed: we're done. -opening_fundee_reply,103 +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