lnd.xprv/lnwallet
Olaoluwa Osuntokun b409e5dfc4 lnwallet: add new TestForceCloseBorkedState test
In this commit, we add a new test: `TestForceCloseBorkedState`. This
ensures that it isn't possible to update the channel state once a
channel has been marked as borked. This assumes that all calls to
`ForceClose` will also mark the channel as borked. This isn't the case
yet, so this test fails as is.
2019-03-08 18:56:42 -08:00
..
btcwallet lnwallet: add LastUnusedAddress to WalletController interface 2019-03-05 15:35:24 -08:00
channel_test.go lnwallet: add new TestForceCloseBorkedState test 2019-03-08 18:56:42 -08:00
channel.go lnwallet+peer: remove unnecessary MaxPendingAmount method 2019-02-25 12:51:31 -03:00
config.go multi: move Input interface and related code 2019-01-31 13:25:33 +01:00
errors.go Revert "funding+lnwallet: ensure max_htlc_value_in_flight smaller than capacity" 2019-01-29 17:58:04 -08:00
fee_estimator_test.go lnwallet: prevent static fee estimator fees from being modified 2018-12-18 10:50:05 +01:00
fee_estimator.go lnwallet: prevent static fee estimator fees from being modified 2018-12-18 10:50:05 +01:00
interface_test.go lnwallet: add LastUnusedAddress to WalletController interface 2019-03-05 15:35:24 -08:00
interface.go lnwallet: add LastUnusedAddress to WalletController interface 2019-03-05 15:35:24 -08:00
log.go multi: init subsystem loggers via build pkg 2018-10-05 13:04:45 +09:00
parameters.go multi: move Input interface and related code 2019-01-31 13:25:33 +01:00
README.md multi: fix typos in comments 2018-04-17 19:03:27 -07:00
reservation.go multi: move Input interface and related code 2019-01-31 13:25:33 +01:00
sigpool.go multi: move Input interface and related code 2019-01-31 13:25:33 +01:00
size_test.go multi: move Input interface and related code 2019-01-31 13:25:33 +01:00
test_utils.go cnct+lnwl+hswc: use lntypes.Preimage for witness beacon 2019-02-19 17:06:00 -08:00
transactions_test.go cnct+lnwl+hswc: use lntypes.Preimage for witness beacon 2019-02-19 17:06:00 -08:00
transactions.go multi: move Input interface and related code 2019-01-31 13:25:33 +01:00
wallet.go multi: move Input interface and related code 2019-01-31 13:25:33 +01:00

lnwallet

Build Status MIT licensed GoDoc

The lnwallet package implements an abstracted wallet controller that is able to drive channel funding workflows, a number of script utilities, witness generation functions for the various Lightning scripts, revocation key derivation, and the commitment update state machine.

The package is used within lnd as the core wallet of the daemon. The wallet itself is composed of several distinct interfaces that decouple the implementation of things like signing and blockchain access. This separation allows new WalletController implementations to be easily dropped into lnd without disrupting the code base. A series of integration tests at the interface level are also in place to ensure conformance of the implementation with the interface.

Installation and Updating

$ go get -u github.com/lightningnetwork/lnd/lnwallet