lnd.xprv/lnwallet
Olaoluwa Osuntokun d6c863e2d1
lnwallet: initialize the height of both commitment chains independently
This commit fixes a slight oversight in the current state machine which
assumes that both commitment chains are always at the same height. In a
future where we move back to allowing nodes to pipeline commitment
updates, this will not always be the case.
2017-03-24 16:26:03 -07:00
..
btcwallet lnd: fix golint warning which requires to add additional comments 2017-03-13 16:30:23 -07:00
channel_test.go lnwallet: properly observe dust limits during cooperative chan closure 2017-03-24 16:20:12 -07:00
channel.go lnwallet: initialize the height of both commitment chains independently 2017-03-24 16:26:03 -07:00
config.go config: add --pendingchannel lnd flag 2016-10-22 02:11:18 +03:00
interface_test.go lnd: partially fix golint warnings 2017-03-13 16:30:23 -07:00
interface.go lnd: partially fix golint warnings 2017-03-13 16:30:23 -07:00
log.go lnwallet: correct comment for logging object 2016-12-27 16:43:07 -08:00
parameters.go fundingmanager+lnwallet: add HTLC dust limit logic 2016-12-13 11:01:57 -08:00
README.md multi: add link to LICENSE in README license badges (#100) 2017-01-12 16:31:08 -08:00
reservation.go lnd: partially fix golint warnings 2017-03-13 16:30:23 -07:00
script_utils_test.go multi: replace usage of fastsha256 with crypto/sha256 2017-03-15 18:56:41 -07:00
script_utils.go multi: replace usage of fastsha256 with crypto/sha256 2017-03-15 18:56:41 -07:00
size.go lnd: partially fix golint warnings 2017-03-13 16:30:23 -07:00
wallet.go multi: replace usage of fastsha256 with crypto/sha256 2017-03-15 18:56:41 -07:00

lnwallet

[Build Status] (https://travis-ci.org/lightningnetwork/lnd) [MIT licensed] (https://github.com/lightningnetwork/lnd/blob/master/LICENSE) [GoDoc] (http://godoc.org/github.com/lightningnetwork/lnd/lnwallet)

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 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