htlcswitch+lnwallet: quarantine paymentDescriptor to lnwallet
The objective of this commit is to make paymentDescriptor a private data structure so we can quarantine it to the lnwallet package. To accomplish this we had to prevent it from leaking out via the arguments or return values of the public functions in lnwallet. This naturally had consequences for the htlcswitch package as we choose other mechanisms for tracking the data that paymentDescriptor was responsible for. Astoundingly, this was highly successful and allowed us to remove a ton of redundant code. The diff for this commit represents a substantial reduction in total lines of code as well as extraneous arguments and return values from key functions. This also sets the stage for future commits where we actually will be attempting to rid lnwallet of paymentDescriptor completely.
This commit is contained in:
5 files changed
+150
-148
No files matched your search
@@ -1229,10 +1229,10 @@ func genHtlcScript(chanType channeldb.ChannelType, isIncoming bool,
|
||||
// is incoming and if it's being applied to our commitment transaction or that
|
||||
// of the remote node's. Additionally, in order to be able to efficiently
|
||||
// locate the added HTLC on the commitment transaction from the
|
||||
// PaymentDescriptor that generated it, the generated script is stored within
|
||||
// paymentDescriptor that generated it, the generated script is stored within
|
||||
// the descriptor itself.
|
||||
func addHTLC(commitTx *wire.MsgTx, whoseCommit lntypes.ChannelParty,
|
||||
isIncoming bool, paymentDesc *PaymentDescriptor,
|
||||
isIncoming bool, paymentDesc *paymentDescriptor,
|
||||
keyRing *CommitmentKeyRing, chanType channeldb.ChannelType,
|
||||
auxLeaf input.AuxTapLeaf) error {
|
||||
|
||||
@@ -1253,7 +1253,7 @@ func addHTLC(commitTx *wire.MsgTx, whoseCommit lntypes.ChannelParty,
|
||||
amountPending := int64(paymentDesc.Amount.ToSatoshis())
|
||||
commitTx.AddTxOut(wire.NewTxOut(amountPending, pkScript))
|
||||
|
||||
// Store the pkScript of this particular PaymentDescriptor so we can
|
||||
// Store the pkScript of this particular paymentDescriptor so we can
|
||||
// quickly locate it within the commitment transaction later.
|
||||
if whoseCommit.IsLocal() {
|
||||
paymentDesc.ourPkScript = pkScript
|
||||
|
||||
Reference in new issue
Block a user