lnwallet: copy commitment transaction in getSignedCommitTx
In this commit, we move to make a full deep copy of the commitment transaction in `getSignedCommitTx` to ensure that we don't mutate the commitment on disk, possibly resulting in a "hot commitment".
This commit is contained in:
parent
450e5a7df4
commit
1e67040145
@ -4946,7 +4946,7 @@ func (lc *LightningChannel) getSignedCommitTx() (*wire.MsgTx, error) {
|
|||||||
// Fetch the current commitment transaction, along with their signature
|
// Fetch the current commitment transaction, along with their signature
|
||||||
// for the transaction.
|
// for the transaction.
|
||||||
localCommit := lc.channelState.LocalCommitment
|
localCommit := lc.channelState.LocalCommitment
|
||||||
commitTx := localCommit.CommitTx
|
commitTx := localCommit.CommitTx.Copy()
|
||||||
theirSig := append(localCommit.CommitSig, byte(txscript.SigHashAll))
|
theirSig := append(localCommit.CommitSig, byte(txscript.SigHashAll))
|
||||||
|
|
||||||
// With this, we then generate the full witness so the caller can
|
// With this, we then generate the full witness so the caller can
|
||||||
|
Loading…
Reference in New Issue
Block a user