lnwallet: adds RequiredReserve method

This commit is contained in:
priyanshiiit
2022-06-17 21:07:17 +05:30
parent fce7fb43ba
commit 150c0b5de8
3 changed files with 27 additions and 0 deletions

View File

@@ -105,6 +105,11 @@ func (w *WalletController) ListAccounts(string,
return nil, nil
}
// RequiredReserve currently returns a dummy value.
func (w *WalletController) RequiredReserve(uint32) btcutil.Amount {
return 0
}
// ImportAccount currently returns a dummy value.
func (w *WalletController) ImportAccount(string, *hdkeychain.ExtendedKey,
uint32, *waddrmgr.AddressType, bool) (*waddrmgr.AccountProperties,

View File

@@ -711,6 +711,22 @@ func (b *BtcWallet) ListAccounts(name string,
return res, nil
}
// RequiredReserve returns the minimum amount of satoshis that should be
// kept in the wallet in order to fee bump anchor channels if necessary.
// The value scales with the number of public anchor channels but is
// capped at a maximum.
func (b *BtcWallet) RequiredReserve(
numAnchorChans uint32) btcutil.Amount {
anchorChanReservedValue := lnwallet.AnchorChanReservedValue
reserved := btcutil.Amount(numAnchorChans) * anchorChanReservedValue
if reserved > lnwallet.MaxAnchorChanReservedValue {
reserved = lnwallet.MaxAnchorChanReservedValue
}
return reserved
}
// ImportAccount imports an account backed by an account extended public key.
// The master key fingerprint denotes the fingerprint of the root key
// corresponding to the account public key (also known as the key with

View File

@@ -244,6 +244,12 @@ type WalletController interface {
ListAccounts(string, *waddrmgr.KeyScope) ([]*waddrmgr.AccountProperties,
error)
// RequiredReserve returns the minimum amount of satoshis that should be
// kept in the wallet in order to fee bump anchor channels if necessary.
// The value scales with the number of public anchor channels but is
// capped at a maximum.
RequiredReserve(uint32) btcutil.Amount
// ImportAccount imports an account backed by an account extended public
// key. The master key fingerprint denotes the fingerprint of the root
// key corresponding to the account public key (also known as the key