core-lightning/onchaind/onchaind_wire.csv
Rusty Russell 2175cd7db3 onchaind: remove support for rescuing non-static channels when we've lost data.
We could get the current key from the reestablish message even if we'd
lost our db, but there are very few of these channels left: we upgraded to use them
in the 2019-01-09 release.

We will eventually remove support altogether, but this is a nice removal of
some ugly code for something which "never happens".

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2024-06-19 15:54:24 +09:30

9.2 KiB

1#include <bitcoin/tx_parts.h>
2#include <common/bip32.h>
3#include <common/coin_mvt.h>
4#include <common/derive_basepoints.h>
5#include <common/htlc_wire.h>
6#include <common/wallet.h>
7# Begin! Here's the onchain tx which spends funding tx, followed by all HTLCs.
8msgtype,onchaind_init,5001
9msgdata,onchaind_init,shachain,shachain,
10# This needs to be set explicitly since the same message also contains a
11# transaction that we need to parse correctly.
12msgdata,onchaind_init,chainparams,chainparams,
13msgdata,onchaind_init,funding_amount_satoshi,amount_sat,
14# Our current balance (of funding amount, not counting any pending htlcs)
15msgdata,onchaind_init,our_msat,amount_msat,
16# Remote per commit point for committed tx.
17msgdata,onchaind_init,old_remote_per_commitment_point,pubkey,
18# Remote per commit point for current tx (needed if we haven't got revoke_and_ack yet).
19msgdata,onchaind_init,remote_per_commitment_point,pubkey,
20msgdata,onchaind_init,local_to_self_delay,u32,
21msgdata,onchaind_init,remote_to_self_delay,u32,
22msgdata,onchaind_init,local_dust_limit_satoshi,amount_sat,
23# Gives an easy way to tell if it's our unilateral close or theirs...
24msgdata,onchaind_init,our_broadcast_txid,bitcoin_txid,
25msgdata,onchaind_init,local_scriptpubkey_len,u16,
26msgdata,onchaind_init,local_scriptpubkey,u8,local_scriptpubkey_len
27msgdata,onchaind_init,remote_scriptpubkey_len,u16,
28msgdata,onchaind_init,remote_scriptpubkey,u8,remote_scriptpubkey_len
29msgdata,onchaind_init,ourwallet_index,u32,
30msgdata,onchaind_init,ourwallet_ext_key,ext_key,
31msgdata,onchaind_init,ourwallet_pubkey,pubkey,
32# We need these two for commit number obscurer
33msgdata,onchaind_init,opener,enum side,
34msgdata,onchaind_init,local_basepoints,basepoints,
35msgdata,onchaind_init,remote_basepoints,basepoints,
36msgdata,onchaind_init,tx_parts,tx_parts,
37msgdata,onchaind_init,locktime,u32,
38msgdata,onchaind_init,tx_blockheight,u32,
39msgdata,onchaind_init,reasonable_depth,u32,
40msgdata,onchaind_init,num_htlc_sigs,u16,
41msgdata,onchaind_init,htlc_signature,bitcoin_signature,num_htlc_sigs
42msgdata,onchaind_init,min_possible_feerate,u32,
43msgdata,onchaind_init,max_possible_feerate,u32,
44msgdata,onchaind_init,local_funding_pubkey,pubkey,
45msgdata,onchaind_init,remote_funding_pubkey,pubkey,
46msgdata,onchaind_init,local_static_remotekey_start,u64,
47msgdata,onchaind_init,remote_static_remotekey_start,u64,
48msgdata,onchaind_init,option_anchor_outputs,bool,
49msgdata,onchaind_init,option_anchors_zero_fee_htlc_tx,bool,
50# We need this for BIP125 rule 4
51msgdata,onchaind_init,min_relay_feerate,u32,
52# This says we're ready; give us htlcs and preimages.
53msgtype,onchaind_init_reply,5101
54msgdata,onchaind_init_reply,commit_num,u64,
55#include <onchaind/onchaind_wire.h>
56msgtype,onchaind_htlcs,5002
57msgdata,onchaind_htlcs,num_htlcs,u32,
58msgdata,onchaind_htlcs,htlc,htlc_stub,num_htlcs
59# If it's not in the commitment tx, tell us (immediately or htlc_missing_depth)
60msgdata,onchaind_htlcs,tell_if_missing,bool,num_htlcs
61msgdata,onchaind_htlcs,tell_immediately,bool,num_htlcs
62# master->onchaind: Notifier that an output has been spent by input_num of tx.
63msgtype,onchaind_spent,5004
64msgdata,onchaind_spent,tx,tx_parts,
65msgdata,onchaind_spent,input_num,u32,
66msgdata,onchaind_spent,blockheight,u32,
67# master->onchaind: We will receive more than one of these, as depth changes.
68msgtype,onchaind_depth,5005
69msgdata,onchaind_depth,txid,bitcoin_txid,
70msgdata,onchaind_depth,depth,u32,
71# onchaind->master: We don't want to watch this tx, or its outputs
72msgtype,onchaind_unwatch_tx,5006
73msgdata,onchaind_unwatch_tx,txid,bitcoin_txid,
74# master->onchaind: We know HTLC preimage
75msgtype,onchaind_known_preimage,5007
76msgdata,onchaind_known_preimage,preimage,preimage,
77# onchaind->master: We discovered HTLC preimage
78msgtype,onchaind_extracted_preimage,5008
79msgdata,onchaind_extracted_preimage,preimage,preimage,
80# onchaind->master: this HTLC was missing from commit tx.
81msgtype,onchaind_missing_htlc_output,5009
82msgdata,onchaind_missing_htlc_output,htlc,htlc_stub,
83# onchaind->master: this HTLC has timed out (after reasonable_depth)
84msgtype,onchaind_htlc_timeout,5010
85msgdata,onchaind_htlc_timeout,htlc,htlc_stub,
86# onchaind->master: this peer can be forgotten
87msgtype,onchaind_all_irrevocably_resolved,5011
88# onchaind->master: hey, I identified an UTXO you'll want to track
89msgtype,onchaind_add_utxo,5012
90msgdata,onchaind_add_utxo,prev_out,bitcoin_outpoint,
91msgdata,onchaind_add_utxo,per_commit_point,?pubkey,
92msgdata,onchaind_add_utxo,value,amount_sat,
93msgdata,onchaind_add_utxo,blockheight,u32,
94msgdata,onchaind_add_utxo,len,u16,
95msgdata,onchaind_add_utxo,scriptpubkey,u8,len
96msgdata,onchaind_add_utxo,csv_lock,u32,
97# master -> onchaind: do you have a memleak?
98msgtype,onchaind_dev_memleak,5033
99msgtype,onchaind_dev_memleak_reply,5133
100msgdata,onchaind_dev_memleak_reply,leak,bool,
101# Tell the main daemon what we've been watching, mainly used for transactions
102# that we tracked automatically but only onchaind knows how to classify their
103# transactions.
104msgtype,onchaind_annotate_txout,5035
105msgdata,onchaind_annotate_txout,outpoint,bitcoin_outpoint,
106msgdata,onchaind_annotate_txout,type,enum wallet_tx_type,
107msgtype,onchaind_annotate_txin,5036
108msgdata,onchaind_annotate_txin,txid,bitcoin_txid,
109msgdata,onchaind_annotate_txin,innum,u32,
110msgdata,onchaind_annotate_txin,type,enum wallet_tx_type,
111msgtype,onchaind_notify_coin_mvt,5037
112msgdata,onchaind_notify_coin_mvt,mvt,chain_coin_mvt,
113# We tell lightningd to create, sign and broadcast this tx:
114msgtype,onchaind_spend_to_us,5040
115msgdata,onchaind_spend_to_us,outpoint,bitcoin_outpoint,
116msgdata,onchaind_spend_to_us,outpoint_amount,amount_sat,
117msgdata,onchaind_spend_to_us,minblock,u32,
118msgdata,onchaind_spend_to_us,commit_num,u64,
119msgdata,onchaind_spend_to_us,wscript_len,u32,
120msgdata,onchaind_spend_to_us,wscript,u8,wscript_len
121# We tell lightningd to create, sign and broadcast this penalty tx:
122msgtype,onchaind_spend_penalty,5041
123msgdata,onchaind_spend_penalty,outpoint,bitcoin_outpoint,
124msgdata,onchaind_spend_penalty,outpoint_amount,amount_sat,
125msgdata,onchaind_spend_penalty,remote_per_commitment_secret,secret,
126msgdata,onchaind_spend_penalty,stack_elem_len,u16,
127msgdata,onchaind_spend_penalty,stack_elem,u8,stack_elem_len
128msgdata,onchaind_spend_penalty,wscript_len,u32,
129msgdata,onchaind_spend_penalty,wscript,u8,wscript_len
130# We tell lightningd to create, sign and broadcast this htlc_success tx:
131msgtype,onchaind_spend_htlc_success,5042
132msgdata,onchaind_spend_htlc_success,outpoint,bitcoin_outpoint,
133msgdata,onchaind_spend_htlc_success,outpoint_amount,amount_sat,
134msgdata,onchaind_spend_htlc_success,fee,amount_sat,
135msgdata,onchaind_spend_htlc_success,htlc_id,u64,
136msgdata,onchaind_spend_htlc_success,commit_num,u64,
137msgdata,onchaind_spend_htlc_success,remote_htlc_sig,bitcoin_signature,
138msgdata,onchaind_spend_htlc_success,preimage,preimage,
139msgdata,onchaind_spend_htlc_success,wscript_len,u32,
140msgdata,onchaind_spend_htlc_success,wscript,u8,wscript_len
141msgdata,onchaind_spend_htlc_success,htlc_wscript_len,u32,
142msgdata,onchaind_spend_htlc_success,htlc_wscript,u8,htlc_wscript_len
143# We tell lightningd to create, sign and broadcast this HTLC redepmtion:
144msgtype,onchaind_spend_fulfill,5043
145msgdata,onchaind_spend_fulfill,outpoint,bitcoin_outpoint,
146msgdata,onchaind_spend_fulfill,outpoint_amount,amount_sat,
147msgdata,onchaind_spend_fulfill,htlc_id,u64,
148msgdata,onchaind_spend_fulfill,remote_per_commitment_point,pubkey,
149msgdata,onchaind_spend_fulfill,preimage,preimage,
150msgdata,onchaind_spend_fulfill,wscript_len,u32,
151msgdata,onchaind_spend_fulfill,wscript,u8,wscript_len
152# We tell lightningd to create, sign and broadcast this htlc_timeout tx:
153msgtype,onchaind_spend_htlc_timeout,5044
154msgdata,onchaind_spend_htlc_timeout,outpoint,bitcoin_outpoint,
155msgdata,onchaind_spend_htlc_timeout,outpoint_amount,amount_sat,
156msgdata,onchaind_spend_htlc_timeout,fee,amount_sat,
157msgdata,onchaind_spend_htlc_timeout,htlc_id,u64,
158msgdata,onchaind_spend_htlc_timeout,cltv_expiry,u32,
159msgdata,onchaind_spend_htlc_timeout,commit_num,u64,
160msgdata,onchaind_spend_htlc_timeout,remote_htlc_sig,bitcoin_signature,
161msgdata,onchaind_spend_htlc_timeout,wscript_len,u32,
162msgdata,onchaind_spend_htlc_timeout,wscript,u8,wscript_len
163msgdata,onchaind_spend_htlc_timeout,htlc_wscript_len,u32,
164msgdata,onchaind_spend_htlc_timeout,htlc_wscript,u8,htlc_wscript_len
165# We tell lightningd to create, sign and broadcast this tx to collect our
166# expired htlc in their unilateral close:
167msgtype,onchaind_spend_htlc_expired,5045
168msgdata,onchaind_spend_htlc_expired,outpoint,bitcoin_outpoint,
169msgdata,onchaind_spend_htlc_expired,outpoint_amount,amount_sat,
170msgdata,onchaind_spend_htlc_expired,htlc_id,u64,
171msgdata,onchaind_spend_htlc_expired,cltv_expiry,u32,
172msgdata,onchaind_spend_htlc_expired,remote_per_commitment_point,pubkey,
173msgdata,onchaind_spend_htlc_expired,wscript_len,u32,
174msgdata,onchaind_spend_htlc_expired,wscript,u8,wscript_len
175subtype,onchain_witness_element
176subtypedata,onchain_witness_element,is_signature,bool,
177subtypedata,onchain_witness_element,len,u32,
178subtypedata,onchain_witness_element,witness,u8,len
179# lightningd replies; if it considers it uneconomic, it tells onchaind
180# so it doesn't wait forever!
181msgtype,onchaind_spend_created,5140
182msgdata,onchaind_spend_created,expect_to_succeed,bool,
183msgdata,onchaind_spend_created,num_witnesses,u32,
184msgdata,onchaind_spend_created,witness,onchain_witness_element,num_witnesses