lnwallet: bump btcwallet
This commit is contained in:
parent
fa4155c126
commit
5ba0f8e355
4
go.mod
4
go.mod
@ -9,11 +9,11 @@ require (
|
|||||||
github.com/btcsuite/btclog v0.0.0-20170628155309-84c8d2346e9f
|
github.com/btcsuite/btclog v0.0.0-20170628155309-84c8d2346e9f
|
||||||
github.com/btcsuite/btcutil v1.0.2
|
github.com/btcsuite/btcutil v1.0.2
|
||||||
github.com/btcsuite/btcutil/psbt v1.0.3-0.20200826194809-5f93e33af2b0
|
github.com/btcsuite/btcutil/psbt v1.0.3-0.20200826194809-5f93e33af2b0
|
||||||
github.com/btcsuite/btcwallet v0.11.1-0.20201207233335-415f37ff11a1
|
github.com/btcsuite/btcwallet v0.11.1-0.20210312232944-4ec908df9386
|
||||||
github.com/btcsuite/btcwallet/wallet/txauthor v1.0.0
|
github.com/btcsuite/btcwallet/wallet/txauthor v1.0.0
|
||||||
github.com/btcsuite/btcwallet/wallet/txrules v1.0.0
|
github.com/btcsuite/btcwallet/wallet/txrules v1.0.0
|
||||||
github.com/btcsuite/btcwallet/walletdb v1.3.4
|
github.com/btcsuite/btcwallet/walletdb v1.3.4
|
||||||
github.com/btcsuite/btcwallet/wtxmgr v1.2.0
|
github.com/btcsuite/btcwallet/wtxmgr v1.2.1-0.20210312232944-4ec908df9386
|
||||||
github.com/coreos/etcd v3.3.22+incompatible
|
github.com/coreos/etcd v3.3.22+incompatible
|
||||||
github.com/coreos/go-semver v0.3.0 // indirect
|
github.com/coreos/go-semver v0.3.0 // indirect
|
||||||
github.com/coreos/go-systemd v0.0.0-20191104093116-d3cd4ed1dbcf // indirect
|
github.com/coreos/go-systemd v0.0.0-20191104093116-d3cd4ed1dbcf // indirect
|
||||||
|
7
go.sum
7
go.sum
@ -35,8 +35,8 @@ github.com/btcsuite/btcutil v1.0.2 h1:9iZ1Terx9fMIOtq1VrwdqfsATL9MC2l8ZrUY6YZ2ut
|
|||||||
github.com/btcsuite/btcutil v1.0.2/go.mod h1:j9HUFwoQRsZL3V4n+qG+CUnEGHOarIxfC3Le2Yhbcts=
|
github.com/btcsuite/btcutil v1.0.2/go.mod h1:j9HUFwoQRsZL3V4n+qG+CUnEGHOarIxfC3Le2Yhbcts=
|
||||||
github.com/btcsuite/btcutil/psbt v1.0.3-0.20200826194809-5f93e33af2b0 h1:3Zumkyl6PWyHuVJ04me0xeD9CnPOhNgeGpapFbzy7O4=
|
github.com/btcsuite/btcutil/psbt v1.0.3-0.20200826194809-5f93e33af2b0 h1:3Zumkyl6PWyHuVJ04me0xeD9CnPOhNgeGpapFbzy7O4=
|
||||||
github.com/btcsuite/btcutil/psbt v1.0.3-0.20200826194809-5f93e33af2b0/go.mod h1:LVveMu4VaNSkIRTZu2+ut0HDBRuYjqGocxDMNS1KuGQ=
|
github.com/btcsuite/btcutil/psbt v1.0.3-0.20200826194809-5f93e33af2b0/go.mod h1:LVveMu4VaNSkIRTZu2+ut0HDBRuYjqGocxDMNS1KuGQ=
|
||||||
github.com/btcsuite/btcwallet v0.11.1-0.20201207233335-415f37ff11a1 h1:3gvLezYoUkr9MvxocB/vyPNzL+gSqsNT4Q6XTPK+R04=
|
github.com/btcsuite/btcwallet v0.11.1-0.20210312232944-4ec908df9386 h1:DfZIXWPAm35bW83OtS/AXH9A9pE6dxxIUhf260S9Wmo=
|
||||||
github.com/btcsuite/btcwallet v0.11.1-0.20201207233335-415f37ff11a1/go.mod h1:P1U4LKSB/bhFQdOM7ab1XqNoBGFyFAe7eKObEBD9mIo=
|
github.com/btcsuite/btcwallet v0.11.1-0.20210312232944-4ec908df9386/go.mod h1:P1U4LKSB/bhFQdOM7ab1XqNoBGFyFAe7eKObEBD9mIo=
|
||||||
github.com/btcsuite/btcwallet/wallet/txauthor v1.0.0 h1:KGHMW5sd7yDdDMkCZ/JpP0KltolFsQcB973brBnfj4c=
|
github.com/btcsuite/btcwallet/wallet/txauthor v1.0.0 h1:KGHMW5sd7yDdDMkCZ/JpP0KltolFsQcB973brBnfj4c=
|
||||||
github.com/btcsuite/btcwallet/wallet/txauthor v1.0.0/go.mod h1:VufDts7bd/zs3GV13f/lXc/0lXrPnvxD/NvmpG/FEKU=
|
github.com/btcsuite/btcwallet/wallet/txauthor v1.0.0/go.mod h1:VufDts7bd/zs3GV13f/lXc/0lXrPnvxD/NvmpG/FEKU=
|
||||||
github.com/btcsuite/btcwallet/wallet/txrules v1.0.0 h1:2VsfS0sBedcM5KmDzRMT3+b6xobqWveZGvjb+jFez5w=
|
github.com/btcsuite/btcwallet/wallet/txrules v1.0.0 h1:2VsfS0sBedcM5KmDzRMT3+b6xobqWveZGvjb+jFez5w=
|
||||||
@ -48,8 +48,9 @@ github.com/btcsuite/btcwallet/walletdb v1.3.2/go.mod h1:GZCMPNpUu5KE3ASoVd+k06p/
|
|||||||
github.com/btcsuite/btcwallet/walletdb v1.3.4 h1:ExdPQSfYRLoYMEENsjWyl4w0PePLm9w3wg69nsRS2xc=
|
github.com/btcsuite/btcwallet/walletdb v1.3.4 h1:ExdPQSfYRLoYMEENsjWyl4w0PePLm9w3wg69nsRS2xc=
|
||||||
github.com/btcsuite/btcwallet/walletdb v1.3.4/go.mod h1:oJDxAEUHVtnmIIBaa22wSBPTVcs6hUp5NKWmI8xDwwU=
|
github.com/btcsuite/btcwallet/walletdb v1.3.4/go.mod h1:oJDxAEUHVtnmIIBaa22wSBPTVcs6hUp5NKWmI8xDwwU=
|
||||||
github.com/btcsuite/btcwallet/wtxmgr v1.0.0/go.mod h1:vc4gBprll6BP0UJ+AIGDaySoc7MdAmZf8kelfNb8CFY=
|
github.com/btcsuite/btcwallet/wtxmgr v1.0.0/go.mod h1:vc4gBprll6BP0UJ+AIGDaySoc7MdAmZf8kelfNb8CFY=
|
||||||
github.com/btcsuite/btcwallet/wtxmgr v1.2.0 h1:ZUYPsSv8GjF9KK7lboB2OVHF0uYEcHxgrCfFWqPd9NA=
|
|
||||||
github.com/btcsuite/btcwallet/wtxmgr v1.2.0/go.mod h1:h8hkcKUE3X7lMPzTUoGnNiw5g7VhGrKEW3KpR2r0VnY=
|
github.com/btcsuite/btcwallet/wtxmgr v1.2.0/go.mod h1:h8hkcKUE3X7lMPzTUoGnNiw5g7VhGrKEW3KpR2r0VnY=
|
||||||
|
github.com/btcsuite/btcwallet/wtxmgr v1.2.1-0.20210312232944-4ec908df9386 h1:lCSgu8j264LfpszU3NIiTJbtlT/jL+lsfGHWpSUscpE=
|
||||||
|
github.com/btcsuite/btcwallet/wtxmgr v1.2.1-0.20210312232944-4ec908df9386/go.mod h1:awQsh1n/0ZrEQ+JZgWvHeo153ubzEisf/FyNtwI0dDk=
|
||||||
github.com/btcsuite/go-socks v0.0.0-20170105172521-4720035b7bfd h1:R/opQEbFEy9JGkIguV40SvRY1uliPX8ifOvi6ICsFCw=
|
github.com/btcsuite/go-socks v0.0.0-20170105172521-4720035b7bfd h1:R/opQEbFEy9JGkIguV40SvRY1uliPX8ifOvi6ICsFCw=
|
||||||
github.com/btcsuite/go-socks v0.0.0-20170105172521-4720035b7bfd/go.mod h1:HHNXQzUsZCxOoE+CPiyCTO6x34Zs86zZUiwtpXoGdtg=
|
github.com/btcsuite/go-socks v0.0.0-20170105172521-4720035b7bfd/go.mod h1:HHNXQzUsZCxOoE+CPiyCTO6x34Zs86zZUiwtpXoGdtg=
|
||||||
github.com/btcsuite/golangcrypto v0.0.0-20150304025918-53f62d9b43e8/go.mod h1:tYvUd8KLhm/oXvUeSEs2VlLghFjQt9+ZaF9ghH0JNjc=
|
github.com/btcsuite/golangcrypto v0.0.0-20150304025918-53f62d9b43e8/go.mod h1:tYvUd8KLhm/oXvUeSEs2VlLghFjQt9+ZaF9ghH0JNjc=
|
||||||
|
@ -18,6 +18,11 @@ const (
|
|||||||
defaultMaxConf = math.MaxInt32
|
defaultMaxConf = math.MaxInt32
|
||||||
)
|
)
|
||||||
|
|
||||||
|
var (
|
||||||
|
// DefaultLockDuration is the default duration used to lock outputs.
|
||||||
|
DefaultLockDuration = 10 * time.Minute
|
||||||
|
)
|
||||||
|
|
||||||
// utxoLock is a type that contains an outpoint of an UTXO and its lock lease
|
// utxoLock is a type that contains an outpoint of an UTXO and its lock lease
|
||||||
// information.
|
// information.
|
||||||
type utxoLock struct {
|
type utxoLock struct {
|
||||||
@ -60,7 +65,9 @@ func lockInputs(w lnwallet.WalletController, packet *psbt.Packet) ([]*utxoLock,
|
|||||||
outpoint: rawInput.PreviousOutPoint,
|
outpoint: rawInput.PreviousOutPoint,
|
||||||
}
|
}
|
||||||
|
|
||||||
expiration, err := w.LeaseOutput(lock.lockID, lock.outpoint)
|
expiration, err := w.LeaseOutput(
|
||||||
|
lock.lockID, lock.outpoint, DefaultLockDuration,
|
||||||
|
)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
// If we run into a problem with locking one output, we
|
// If we run into a problem with locking one output, we
|
||||||
// should try to unlock those that we successfully
|
// should try to unlock those that we successfully
|
||||||
|
@ -372,7 +372,9 @@ func (w *WalletKit) LeaseOutput(ctx context.Context,
|
|||||||
// other concurrent processes attempting to lease the same UTXO.
|
// other concurrent processes attempting to lease the same UTXO.
|
||||||
var expiration time.Time
|
var expiration time.Time
|
||||||
err = w.cfg.CoinSelectionLocker.WithCoinSelectLock(func() error {
|
err = w.cfg.CoinSelectionLocker.WithCoinSelectLock(func() error {
|
||||||
expiration, err = w.cfg.Wallet.LeaseOutput(lockID, *op)
|
expiration, err = w.cfg.Wallet.LeaseOutput(
|
||||||
|
lockID, *op, DefaultLockDuration,
|
||||||
|
)
|
||||||
return err
|
return err
|
||||||
})
|
})
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -131,8 +131,8 @@ func (w *WalletController) LockOutpoint(o wire.OutPoint) {}
|
|||||||
func (w *WalletController) UnlockOutpoint(o wire.OutPoint) {}
|
func (w *WalletController) UnlockOutpoint(o wire.OutPoint) {}
|
||||||
|
|
||||||
// LeaseOutput returns the current time and a nil error.
|
// LeaseOutput returns the current time and a nil error.
|
||||||
func (w *WalletController) LeaseOutput(wtxmgr.LockID, wire.OutPoint) (time.Time,
|
func (w *WalletController) LeaseOutput(wtxmgr.LockID, wire.OutPoint,
|
||||||
error) {
|
time.Duration) (time.Time, error) {
|
||||||
|
|
||||||
return time.Now(), nil
|
return time.Now(), nil
|
||||||
}
|
}
|
||||||
|
@ -393,8 +393,8 @@ func (b *BtcWallet) UnlockOutpoint(o wire.OutPoint) {
|
|||||||
// wtxmgr.ErrOutputAlreadyLocked is returned.
|
// wtxmgr.ErrOutputAlreadyLocked is returned.
|
||||||
//
|
//
|
||||||
// NOTE: This method requires the global coin selection lock to be held.
|
// NOTE: This method requires the global coin selection lock to be held.
|
||||||
func (b *BtcWallet) LeaseOutput(id wtxmgr.LockID, op wire.OutPoint) (time.Time,
|
func (b *BtcWallet) LeaseOutput(id wtxmgr.LockID, op wire.OutPoint,
|
||||||
error) {
|
duration time.Duration) (time.Time, error) {
|
||||||
|
|
||||||
// Make sure we don't attempt to double lock an output that's been
|
// Make sure we don't attempt to double lock an output that's been
|
||||||
// locked by the in-memory implementation.
|
// locked by the in-memory implementation.
|
||||||
@ -402,7 +402,7 @@ func (b *BtcWallet) LeaseOutput(id wtxmgr.LockID, op wire.OutPoint) (time.Time,
|
|||||||
return time.Time{}, wtxmgr.ErrOutputAlreadyLocked
|
return time.Time{}, wtxmgr.ErrOutputAlreadyLocked
|
||||||
}
|
}
|
||||||
|
|
||||||
return b.wallet.LeaseOutput(id, op)
|
return b.wallet.LeaseOutput(id, op, duration)
|
||||||
}
|
}
|
||||||
|
|
||||||
// ReleaseOutput unlocks an output, allowing it to be available for coin
|
// ReleaseOutput unlocks an output, allowing it to be available for coin
|
||||||
|
@ -250,7 +250,8 @@ type WalletController interface {
|
|||||||
// wtxmgr.ErrOutputAlreadyLocked is returned.
|
// wtxmgr.ErrOutputAlreadyLocked is returned.
|
||||||
//
|
//
|
||||||
// NOTE: This method requires the global coin selection lock to be held.
|
// NOTE: This method requires the global coin selection lock to be held.
|
||||||
LeaseOutput(id wtxmgr.LockID, op wire.OutPoint) (time.Time, error)
|
LeaseOutput(id wtxmgr.LockID, op wire.OutPoint,
|
||||||
|
duration time.Duration) (time.Time, error)
|
||||||
|
|
||||||
// ReleaseOutput unlocks an output, allowing it to be available for coin
|
// ReleaseOutput unlocks an output, allowing it to be available for coin
|
||||||
// selection if it remains unspent. The ID should match the one used to
|
// selection if it remains unspent. The ID should match the one used to
|
||||||
|
Loading…
Reference in New Issue
Block a user