Merge pull request #5363 from guggero/psbt-no-final-tx

Allow skipping `PsbtFinalize` step during channel funding to support external broadcast
This commit is contained in:
Oliver Gugger authored and GitHub committed 2021-10-04 12:37:51 +02:00
commit 51d19dad87
14 files changed
+2380 -1785

No files matched your search

+1747 -1726
View File
File diff suppressed because it is too large. Load diff
+14
View File
@@ -2132,6 +2132,20 @@ message FundingPsbtVerify {
// The pending channel ID of the channel to get the PSBT for.
bytes pending_chan_id = 2;
/*
Can only be used if the no_publish flag was set to true in the OpenChannel
call meaning that the caller is solely responsible for publishing the final
funding transaction. If skip_finalize is set to true then lnd will not wait
for a FundingPsbtFinalize state step and instead assumes that a transaction
with the same TXID as the passed in PSBT will eventually confirm.
IT IS ABSOLUTELY IMPERATIVE that the TXID of the transaction that is
eventually published does have the _same TXID_ as the verified PSBT. That
means no inputs or outputs can change, only signatures can be added. If the
TXID changes between this call and the publish step then the channel will
never be created and the funds will be in limbo.
*/
bool skip_finalize = 3;
}
message FundingPsbtFinalize {
+4
View File
@@ -4175,6 +4175,10 @@
"type": "string",
"format": "byte",
"description": "The pending channel ID of the channel to get the PSBT for."
},
"skip_finalize": {
"type": "boolean",
"description": "Can only be used if the no_publish flag was set to true in the OpenChannel\ncall meaning that the caller is solely responsible for publishing the final\nfunding transaction. If skip_finalize is set to true then lnd will not wait\nfor a FundingPsbtFinalize state step and instead assumes that a transaction\nwith the same TXID as the passed in PSBT will eventually confirm.\nIT IS ABSOLUTELY IMPERATIVE that the TXID of the transaction that is\neventually published does have the _same TXID_ as the verified PSBT. That\nmeans no inputs or outputs can change, only signatures can be added. If the\nTXID changes between this call and the publish step then the channel will\nnever be created and the funds will be in limbo."
}
}
},