lnd.xprv/lnwallet
Johan T. Halseth 8741b93723
lnwallet/reservation: add non-initiator balance check
If we are the initiator, we check that our starting balance after
subtracting fees are not less than two times the default dust limit.

This commit adds a similar check for the non-initiator case, checking
that the remote party has a starting balance of reasonable size.
2020-03-09 12:59:34 +01:00
..
btcwallet chainfee: create new chainfee package extracting fees from lnwallet 2019-10-31 16:41:57 -07:00
chainfee chainfee: create new chainfee package extracting fees from lnwallet 2019-10-31 16:41:57 -07:00
chanfunding rpc+lnwallet: implement new FundingStateStep RPC method 2019-12-20 19:09:44 -08:00
chanvalidate lnwallet+funding: expose new ValidateChannel method for 1st party validation 2019-10-03 16:23:23 -07:00
channel_test.go lnwallet/channel: take remote commitment view into availableBalance calculation 2020-02-19 12:27:42 +01:00
channel.go lnwallet+breacharbiter: record local csv delay 2020-03-09 12:59:34 +01:00
commit_sort_test.go lnwallet/commit_sort: add commit sorting with htlc tie breaker 2019-06-05 08:34:45 +02:00
commit_sort.go lnwallet/commit_sort: add commit sorting with htlc tie breaker 2019-06-05 08:34:45 +02:00
commitment.go lnwallet: set 2nd level sequence according to channel type 2020-03-09 12:59:33 +01:00
config.go chainfee: create new chainfee package extracting fees from lnwallet 2019-10-31 16:41:57 -07:00
errors.go Revert "funding+lnwallet: ensure max_htlc_value_in_flight smaller than capacity" 2019-01-29 17:58:04 -08:00
interface_test.go lnwallet: Re-enable tests 2019-12-23 10:32:03 -03:00
interface.go chainfee: create new chainfee package extracting fees from lnwallet 2019-10-31 16:41:57 -07:00
log.go chainfee: create new chainfee package extracting fees from lnwallet 2019-10-31 16:41:57 -07: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 lnwallet/reservation: add non-initiator balance check 2020-03-09 12:59:34 +01:00
sigpool.go multi: replace manual CAS with sync.Once in several more modules 2019-06-12 09:37:26 -03:00
size_test.go multi: move Input interface and related code 2019-01-31 13:25:33 +01:00
test_utils.go lnwallet: use channel type to derive keys 2020-01-06 12:08:05 +01:00
transactions_test.go lnwallet: add anchor commitmenttype 2020-03-09 12:10:59 +01:00
transactions.go lnwallet: set 2nd level sequence according to channel type 2020-03-09 12:59:33 +01:00
wallet.go lnwallet: add anchor commitmenttype 2020-03-09 12:10:59 +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