Commit Graph
100 Commits
Author SHA1 Message Date
Olaoluwa Osuntokun 237ef9c9ba Merge pull request #4003 from bitromortac/listinvoices-reversed-flag
lncli: change listinvoices reversed flag to paginate-forwards
2020-02-26 11:53:44 -03:00
Olaoluwa Osuntokun 94717a2088 Merge pull request #4017 from Roasbeef/walletdb-update-addr-fix
build: udpate to latest btcwallet version with rescan addr fix
2020-02-20 18:01:09 -08:00
Olaoluwa Osuntokun 92b79f6b6a Merge pull request #3910 from Crypt-iQ/htlc_add_0113
lnwallet: limit received htlc's to MaxAcceptedHTLCs
2020-02-18 17:35:42 -08:00
Olaoluwa Osuntokun d091f24316 build: update to latest btcwallet version with rescan addr fix
In this commit, we update to the latest `btcwallet` version that
includes a fix for how we perform rescans. Before this commit, the
wallet would load ALL the created keys into the wallet to perform a
rescan. This is unnecessary, as many of the keys we create are actually
used in contracts, so the wallet can't spend them directly anyway.

For neutrino nodes, this would've caused them to attempt o match more
items in the filter than necessary, possibly resulting in an increased
number of false positive block fetches.
2020-02-18 17:12:32 -08:00
Olaoluwa Osuntokun 3e9087a0f4 Merge pull request #3988 from yancyribbens/fix-docker-terminal-documentation
docs: add terminal symbol to docker readme example commands
2020-02-17 14:37:12 -08:00
Olaoluwa Osuntokun fce472e820 Merge pull request #3876 from breez/allow-timeouted-initiated-htlc
contractcourt: keep channels with timed-out initiated htlcs.
2020-02-17 14:08:44 -08:00
Olaoluwa Osuntokun 2cd26d7556 Merge pull request #3980 from joostjager/registry-deadlock
invoices: fix htlc timer deadlock
2020-02-04 17:14:17 -08:00
Olaoluwa Osuntokun 698f1175f8 lnd: add timing information to db open log 2020-02-03 16:19:01 -08:00
Olaoluwa Osuntokun e25cca11f7 Merge pull request #3915 from carlaKC/3771-loopattackprotection
htlcswitch: Disallow circular routes on same channel
2020-02-03 15:59:53 -08:00
Olaoluwa Osuntokun 07977a2bf0 Merge pull request #3957 from cfromknecht/amp-record
record+routing/route: add AMP record
2020-02-03 15:53:21 -08:00
Olaoluwa Osuntokun ab59f47a0b Merge pull request #2593 from Crypt-iQ/brontide_fuzz_0119
fuzz: adding fuzz harnesses for acts 1-3, encryption+decryption
2020-01-31 17:16:30 -08:00
Olaoluwa Osuntokun 04c3998f4b Merge pull request #3965 from guggero/rest-api-falsey
rpcserver: instruct REST marshaler to emit default values
2020-01-27 12:19:57 -08:00
Olaoluwa Osuntokun e79897e651 Merge pull request #3950 from bhandras/invoice-expiry-startup-fix
invoices: fix slow startup with many expired invoices
2020-01-24 16:49:43 -08:00
Olaoluwa Osuntokun 767128e6c5 Merge pull request #3927 from guggero/lnwallet-scrypt
keychain+walletunlocker: use fast scrypt options for unit tests
2020-01-24 13:24:30 -08:00
Olaoluwa Osuntokun 51d8c11eb5 Merge pull request #3925 from wpaulino/query-chan-range-wrong-chainhash
discovery: check ChainHash in QueryChannelRange messages
2020-01-23 12:10:56 -08:00
Olaoluwa Osuntokun f8418ab705 Merge pull request #3949 from Roasbeef/fix-release-script-tags
build/release: update release script to handle multiple tags at head
2020-01-21 23:29:48 -08:00
Olaoluwa Osuntokun 8b086bb581 build/release: update release script to handle multiple tags at head
In this commit, we change the release script slightly to return the
latest tag if there're multiple tags at head. Otherwise the release
script will fail if our final tag is at the same commit as the prior
release candidate tag.
2020-01-21 20:46:40 -08:00
Olaoluwa Osuntokun a2977c4438 Merge pull request #3948 from halseth/falafel-0.7
mobile: bump falafel dep to 0.7
2020-01-21 13:33:02 -08:00
Olaoluwa Osuntokun ad0a89b844 Merge pull request #3922 from cfromknecht/keysend
multi: rename key_send, key-send and key send to keysend
2020-01-17 11:26:13 -08:00
Olaoluwa Osuntokun 269182c9b9 Merge pull request #3911 from joostjager/extend-qr
routing+lnrpc: add missing query routes parameters
2020-01-14 16:07:45 -08:00
Olaoluwa Osuntokun 3799f1689b Merge pull request #3900 from joostjager/payment-msg
lnrpc+lncli: add send support for custom data records
2020-01-14 15:53:10 -08:00
Olaoluwa Osuntokun a0639c234f Merge pull request #3887 from bhandras/channeldb_cleanup
channeldb: remove FetchAllInvoices which was test only and unused
2020-01-13 23:16:58 -08:00
Olaoluwa Osuntokun ec70347b8d Merge pull request #3897 from cfromknecht/cleanup-pathfind-tests
routing/pathfind_test: use ctx in recent tests
2020-01-13 22:13:10 -08:00
Olaoluwa Osuntokun 91e796aed8 Merge pull request #3903 from joostjager/keysend-no-spam
invoices: streamline key send cltv delta picking and validation
2020-01-13 22:12:25 -08:00
Olaoluwa Osuntokun 83ff6a59d4 Merge pull request #3899 from cfromknecht/improve-last-hop-help
lncli: improve last_hop help message
2020-01-10 14:49:06 -08:00
Olaoluwa Osuntokun 658803f51c Merge pull request #3891 from Roasbeef/onion-random-padding
routing: use updated sphinx.NewOnionPacket method
2020-01-07 16:59:19 -08:00
Olaoluwa Osuntokun b8f6a550a9 Merge pull request #3836 from wpaulino/interpret-query-channel-range
discovery: use block ranges from ReplyChannelRange to determine end marker
2020-01-07 16:52:48 -08:00
Olaoluwa Osuntokun 830d88a25c Merge pull request #3886 from joostjager/release-checks
build: add version checks to release script
2020-01-07 16:18:18 -08:00
Olaoluwa Osuntokun 128be259a7 routing: use updated sphinx.NewOnionPacket method
In this commit, we update the routing package to use the new
`sphinx.NewOnionPacket` method. The new version of this method allows us
to specify _how_ the packet should be filled before it's used to create
a mix-header. This isn't a fundamental change (totally backwards
compatible), instead it plugs a privacy leak that may have revealed to
the destination how long the true route was.
2020-01-07 16:11:39 -08:00
Olaoluwa Osuntokun e96e011520 build: update to latest lightning-onion version 2020-01-07 16:11:33 -08:00
Olaoluwa Osuntokun 08ebefa8a3 Merge pull request #3884 from bhandras/hotfix
routing: clean up locking on topology change
2020-01-06 18:00:38 -08:00
Olaoluwa Osuntokun a0c5d965a3 Merge pull request #3882 from philippgille/feature/fix-unclear-bools-in-config
config: Make bools in sample-lnd.conf consistent
2020-01-06 17:59:44 -08:00
Olaoluwa Osuntokun 79948ebe1c Merge pull request #3854 from matheusdtech/fix-hn-goroutine-leak
lntest: Don't leak node's grpc conn
2020-01-06 17:55:41 -08:00
Olaoluwa Osuntokun aab956471d Merge pull request #3846 from guggero/lntest-node-config
itest: make harnesses usable in external projects
2020-01-06 17:52:16 -08:00
Olaoluwa Osuntokun 66ff2c1e7a Merge pull request #3890 from guggero/custom-shared-key
signrpc: derive custom shared key
2020-01-06 13:42:14 -08:00
Olaoluwa Osuntokun 22e1f006b1 Merge pull request #3870 from Septem151/rpc-autopilot-fix
Fix typo in "query" rpc for autopilot.
2020-01-02 16:03:05 -08:00
Olaoluwa Osuntokun 5ade9abe29 Merge pull request #3777 from guggero/shared-key
signrpc: add DeriveSharedKey
2020-01-02 16:02:47 -08:00
Olaoluwa Osuntokun f289a39c1a Merge pull request #3795 from joostjager/keysend
lncli+invoices: experimental key send mode
2019-12-24 17:38:46 -06:00
Olaoluwa Osuntokun 7eacc40419 Merge pull request #3722 from Roasbeef/external-funding-rpc
lnrpc+lnwallet+funding: implement new RPCs to enable external channel funding
2019-12-23 14:41:46 -06:00
Olaoluwa Osuntokun e0d9bbfbc4 Merge pull request #3873 from matheusdtech/reenable-tests
Re-enable TestLightningWallet tests
2019-12-23 13:23:29 -06:00
Olaoluwa Osuntokun 3de3ec8008 lntest/itest: add new test for external chan point funding 2019-12-20 19:09:56 -08:00
Olaoluwa Osuntokun be4db0ebca lntest: add optional FundingShim field to OpenChannelParams 2019-12-20 19:09:48 -08:00
Olaoluwa Osuntokun bc176b5aa3 rpc+lnwallet: implement new FundingStateStep RPC method
In this commit, we implement the currently defined transition methods
for the new `FundingStateStep` method. At this point, we're now able to
serve the "responder" of the externally initiated channel funding flow
by being able to register and cancel a funding flow according to its
expected pending channel ID.
2019-12-20 19:09:44 -08:00
Olaoluwa Osuntokun 91bd56dbd1 funding+rpc: expand specified chan point shim into a canned assembler
In this commit, we update the `OpenChannel` method to observe the new
`funding_shim` field in the main open channel request. If this is
specified, and is a channel point shim, then we'll create a custom
`chanfunding.Assembler` for the wallet to use in place of the regular
funding workflow.

With this commit, the "initiator" of an external funding flow can now
delegate the remainder of the channel funding workflow to lnd.
2019-12-20 19:09:41 -08:00
Olaoluwa Osuntokun 3eed38d602 lnrpc: add ability to provide chan point shims for funding, new funding modifiers
In this commit, we start to expose some of the new external funding
functionality over the RPC interface.

First, we add a new `funding_shim` field to the regular `OpenChannel`
method. This can be used by a caller to express that certain parameters
of the funding flow have already been negotiated outside the protocol,
and should be used instead. For example, a shim can be provided to use a
particular key for the commitment key (ideally cold) rather than use one
this is generated by the wallet as normal, or signal that signing will
be carried out in an interactive manner (PSBT based).

Next, we add a brand new method: `FundingStateStep`. FundingStateStep is
an advanced funding related call that allows the caller to either
execute some preparatory steps for a funding workflow, or manually
progress a funding workflow. The primary way a funding flow is
identified is via its pending channel ID. As an example, this method can
be used to specify that we're expecting a funding flow for a particular
pending channel ID, for which we need to use specific parameters.
Alternatively, this can be used to interactively drive PSBT signing for
funding for partially complete funding transactions.

The new transition methods (funding state machine modifiers) in this
commit allow a party to register a funding intent that should be used
for a specified incoming pending channel ID. The "responder" to the
external channel flow should use this to prep lnd to be able to handle
the channel flow properly.
2019-12-20 19:09:38 -08:00
Olaoluwa Osuntokun c9f39638b0 Merge pull request #3857 from kiwiidb/master
fix: incomplete comment about minFinalCLTVExpiry
2019-12-20 17:05:28 -08:00
Olaoluwa Osuntokun 6fef37cc06 Merge pull request #3850 from alexbosworth/patch-14
lnrpc: Add macaroon entry for peers subscription
2019-12-18 12:33:01 -03:00
Olaoluwa Osuntokun c660e16229 README: update dev slack link 2019-12-17 11:39:00 -03:00
Olaoluwa Osuntokun 2c92b75df9 Merge pull request #3837 from cfromknecht/node-features-rpc
lnrpc: display node and peer features via rpc
2019-12-16 06:13:55 -08:00
Olaoluwa Osuntokun eae45f9ad9 zpay32: use new DefaultInvoiceExpiry constant 2019-12-13 19:54:37 -08:00
Olaoluwa Osuntokun e34bc3d645 Merge pull request #3694 from bhandras/i3448
invoices+channeldb: reject payments to expired invoices
2019-12-13 19:53:53 -08:00
Olaoluwa Osuntokun dca31c2bf8 Merge pull request #3825 from cfromknecht/ensure-fv-populated
zpay32: ensure feature vector is always populated
2019-12-11 21:43:48 -08:00
Olaoluwa Osuntokun a5519d1af1 build: update go.mod to use queue/v1.0.2 2019-12-11 19:06:48 -08:00
Olaoluwa Osuntokun 338175534e Merge pull request #3812 from guggero/sign-custom
signrpc: sign and verify messages with custom key
2019-12-11 18:51:55 -08:00
Olaoluwa Osuntokun 70c5fe3d00 Merge pull request #3697 from joostjager/lower-min-htlc
config: improve management of htlc amount lower limit
2019-12-10 18:05:49 -08:00
Olaoluwa Osuntokun a7c2b12f5c Merge pull request #3785 from Roasbeef/gossip-queries-fix
discovery: properly set FirstBlockHeight and NumBlocks in responses
2019-12-10 18:03:50 -08:00
Olaoluwa Osuntokun 6a9b96122d discovery: properly set FirstBlockHeight and NumBlocks in responses
In this commit we fix in a bug in `lnd` that could cause other
implementations which implement a strict version of the spec to
disconnect when trying to sync their channel graph using the gossip
query feature. Before this commit, we would embed the request to a
`QueryChannelRange` in the response, causing some clients to reject the
response as the `FirstBlockHeight` and `NumBlocks` field would be
identical for each chunk of the response.

In order to remedy this, we now properly set these two fields with each
returned chunk. Note that even after this commit, we keep our existing
behavior surrounding the `Complete` field as is. Otherwise, current
`lnd` clients which rely on this field (rather than the two
aforementioned fields) wouldn't be able to properly detect when a set of
responses to their query was "complete".

Partially fixes #3728.
2019-12-10 17:05:58 -08:00
Olaoluwa Osuntokun a68144b709 Merge pull request #3802 from cfromknecht/rpc-invoice-features
rpc: expose invoice features in decodepayreq
2019-12-10 15:12:19 -08:00
Olaoluwa Osuntokun 1ab3107df4 Merge pull request #3806 from Roasbeef/payreq-msat
lnrpc: add msats to return value of DecodePayReq
2019-12-09 16:37:18 -08:00
Olaoluwa Osuntokun 843b974d66 Merge pull request #3804 from Roasbeef/revert-strict-payment
peer+funding: revert link level payment clamps
2019-12-06 16:03:09 -08:00
Olaoluwa Osuntokun 47235e2f98 lnrpc: add msats to return value of DecodePayReq
In this commit, we add `msats` to the return value of `DecodePayReq` to
ensure we always show full value information as we're moving to do
generally for all RPC calls that deal with off-chain amounts.
2019-12-06 15:48:30 -08:00
Olaoluwa Osuntokun abb44e18e2 Revert "funding: ensure the chan policy max htlc size is below max pay size"
This reverts commit 9b3385e87d.
2019-12-06 15:12:17 -08:00
Olaoluwa Osuntokun b3b34d9de2 Revert "peer: clamp a link's max HTLC forwarding policy to current max HTLC pay size"
This reverts commit c943d85019.
2019-12-06 15:11:56 -08:00
Olaoluwa Osuntokun 183797f102 Merge pull request #3655 from carlaKC/fundingmgr-optionupfrontshutdown
Add Option Upfront Shutdown
2019-12-04 21:05:24 -08:00
Olaoluwa Osuntokun 00ec9148e9 build: bump to version v0.8.2-beta 2019-12-04 19:30:10 -08:00
Olaoluwa Osuntokun 9079dfbd33 cmd/lncli: exit if user opts to not recover SCB files 2019-12-04 19:24:35 -08:00
Olaoluwa Osuntokun 03ee8c047a Merge pull request #3698 from aantonop/warn_before_SCB_restore
Warn user before doing SCB restore
2019-12-04 19:17:30 -08:00
Olaoluwa Osuntokun 9f3d327733 Merge pull request #3752 from halseth/chainntfs-spendntfn-logs
[chainntnfs] add more logging for spend requests
2019-12-04 19:16:53 -08:00
Olaoluwa Osuntokun 773aa390b2 Merge pull request #3790 from Roasbeef/pay-size-consistency
multi: make SendToRoute consistent with other payment RPC
2019-12-04 19:09:28 -08:00
Olaoluwa Osuntokun 9b3385e87d funding: ensure the chan policy max htlc size is below max pay size 2019-12-04 15:11:01 -08:00
Olaoluwa Osuntokun c943d85019 peer: clamp a link's max HTLC forwarding policy to current max HTLC pay size
In this commit, we start to clamp the max HTLC forwarding policy to the
current register max HTLC payment size. By doing this, we ensure that
any links that have a advertised max HTLC transit size above the max
payment size will reject any incoming or outgoing attempts for such
large payments.
2019-12-04 15:10:47 -08:00
Olaoluwa Osuntokun 392c1a9a1b lnrpc/routerrpc: make SendToRoute consistent with other payment RPCs
In this commitment, we make the `SendToRoute` RPC call consistent with
all the other payment RPCs which will properly adhere to the current max
payment sat limit. This is a prep commit for the future wumbo soft cap
that will eventually land in lnd.
2019-12-04 15:10:44 -08:00
Olaoluwa Osuntokun 06e8d1c5ca htlcswitch: fix inconsistency between attribute name and godoc comment 2019-12-04 15:10:39 -08:00
Olaoluwa Osuntokun f2f79d3990 Merge pull request #3659 from Roasbeef/external-funding-chanfunding
chanfunding: create new package to abstract over funding workflows
2019-12-02 18:13:38 -06:00
Olaoluwa Osuntokun b1940d6779 lnwallet: fix bug in verifyFundingInputs skip dual funder tests for neutrino
In this commit, we fix a long standing bug within the newly created
`verifyFundingInputs` method. Before this commit, the method would
attempt to derive the pkScript by looking at the last items on the
witness stack, and making a p2wsh output script from that. This is
incorrect as typically non of these scripts will actually be p2wsh, and
instead will be p2wkh. We fix this by using the newly available
`txscript.ComputePkScript` method to derive the proper pkScript.

This resolves an issue w.r.t passing incorrect arguments for all
backends, but an issue still stands for the neutrino backend. As is, we
pass a height hint of zero into the `GetUtxo` method call. With the way
the current utxo scanner is set up for neutrino, this'll cause it to
never find the UTXO, as it takes the height hint as a UTXO birth height,
rather than a lower bound of the birth of the UTXO.
2019-12-02 17:12:05 -06:00
Olaoluwa Osuntokun 6b729ec9f5 lnwallet: break early in TestLightningWallet when a sub-test fails 2019-12-02 17:11:58 -06:00
Olaoluwa Osuntokun c3a7da5ce7 lnwallet: add new test to exercise external channel funding 2019-12-02 17:11:54 -06:00
Olaoluwa Osuntokun 9926259da0 lnwallet: add new RegisterFundingIntent method
In this commit, we add a new method `RegisterFundingIntent` that allows
a caller to "inject" a pre-populated chanfunding.Intent into a funding
workflow. As an example, if we've already agreed upon the "shape" of the
funding output _outside_ the protocol, then we can use this to pass down
the details of the output, then leverage the normal wire protocol to
carry out the remainder of the funding flow.
2019-12-02 17:11:51 -06:00
Olaoluwa Osuntokun 6e9cbc19f9 lnwallet+funding: pass the pending channel ID into the reservation context
In this commit, we start to thread the pending channel ID from wire
protocol all the way down into the reservation context. This change will
allow negotiation to take place _outside_ the protocol that may result
in a particular chanfunding.Assembler being dispatched.
2019-12-02 17:11:46 -06:00
Olaoluwa Osuntokun c3157ae2c4 lnwallet: add awareness of chanfunding.ShimIntents
In this commit, we make the wallet aware of the second type of funding
intent: the ShimIntent. If we have one of these, then we don't need to
construct the funding transaction, and can instead just obtain the
outpoint directly from it.
2019-12-02 17:11:41 -06:00
Olaoluwa Osuntokun 7a64a7d3a4 lnwallet: delegate all channel funding logic to the new chanfunding package
In this commit, we begin to integrate the new channel funding package
into the existing codebase. With this set of changes, we'll no longer
construct and sign the funding transaction within this package, instead
delegating it to the new chanfunding package. We use the new
chanfunding.WalletAssembler to carry out all channel funding, providing
it with an implementation of all its interfaces backed by the wallet.
2019-12-02 17:11:36 -06:00
Olaoluwa Osuntokun d422ebbc66 lnwallet/chanfunding: introduce new channel funding abstractions
In this commit, we introduce a series of new abstractions for channel
funding. The end goal is to enable uses cases that construct the funding
transaction externally, eventually handing the funding outpoint to lnd.
An example of such a use case includes channel factories and external
channel funding using a hardware wallet.

We also add a new chanfunding.Assembler meant to allow external channel
funding in contexts similar to how channel factories
can be constructed. With this channel funder, we'll only obtain the
channel point and funding output from it, as this alone is enough to
carry out a funding flow as normal.
2019-12-02 17:11:32 -06:00
Olaoluwa Osuntokun 4e955dfac6 lnwallet: remove unused openChanDetails struct
We also remove some related and also unused attributes as well along the
way.
2019-12-02 17:11:29 -06:00
Olaoluwa Osuntokun 9eefdef262 chanfunding+lnwallet: move coin selection code into new chanfunding package
In this commit, we make an incremental change to move the existing coin
selection code into a new chanfunding package. In later commits, this
package will grow to serve all the lower level channel funding needs in
the daemon.
2019-12-02 17:11:25 -06:00
Olaoluwa Osuntokun f9d22cd900 funding: only broadcast the funding transaction if we actually have it 2019-12-02 17:11:21 -06:00
Olaoluwa Osuntokun 6753a02439 channeldb: add new NoFundingTxBit modifier to ChannelType
In this commit, we add a new bit to the existing ChannelType bitfield.
If this bit is set, then it signals that we have the funding transaction
stored on disk. A future change will enable lnd to have the funding
transaction be constructed externally, allowing for things like funding
from a hardware wallet, or a channel created as a sub-branch within an
existing channel factory.
2019-12-02 17:11:16 -06:00
Olaoluwa Osuntokun d59aba35a0 Merge branch 'refresh-chan-id' 2019-11-27 15:21:42 -06:00
Olaoluwa Osuntokun 5bdb0d3d66 channeldb+lntest: code style fixes 2019-11-27 15:21:28 -06:00
Olaoluwa Osuntokun cb2b8b4513 Merge pull request #3693 from cfromknecht/tlv-invoice
migrate to tlv for invoice body
2019-11-25 18:00:52 -06:00
Olaoluwa Osuntokun ff268ac39d Merge pull request #3748 from halseth/falafel-updates
[mobile] Update readme and comments
2019-11-25 17:27:00 -06:00
Olaoluwa Osuntokun be4a1a2704 Merge pull request #3759 from wpaulino/travis-bitcoind-0.19.1
build: bump travis bitcoind version to 0.19.0.1
2019-11-25 17:25:18 -06:00
Olaoluwa Osuntokun 74849e7325 Merge pull request #3737 from guggero/resume-scb
chanbackup: continue recovery if channel already exists
2019-11-22 19:40:47 -08:00
Olaoluwa Osuntokun 6356316a4c Merge pull request #3757 from cfromknecht/fix-nanonsecond-typo
lnrpc: fix nanonsecond typo
2019-11-22 16:24:41 -08:00
Olaoluwa Osuntokun 6f9fcfaccc Merge pull request #3499 from cfromknecht/mpp-payments-rpc
channeldb+rpcserver: expose legacy payments as multi-path payments
2019-11-21 18:38:53 -08:00
Olaoluwa Osuntokun 1ad681782e Merge pull request #3721 from Roasbeef/complete-abandon-channel
rpc+cnct: update AbandonChannel to also remove cnct and channel graph state
2019-11-20 20:00:41 -08:00
Olaoluwa Osuntokun 32965fd4be rpc: update AbandonChannel to remove state from cnct, nursery and graph
In this commit, we update the `AbandonChannel` method to also remove the
state from the countract court as well as the channel graph. Abandoning
a channel is now a three step process: remove from the open channel
state, remove from the graph, remove from the contract court. Between
any step it's possible that the users restarts the process all over
again. As a result, each of the steps below are intended to be
idempotent.

We also update the integration test to assert that no channel is found
in the graph any longer. Before this commit, this test would fail as the
channel was still found in the graph, which can cause other issues for
an operational daemon.

Fixes #3716.
2019-11-20 17:42:58 -08:00
Olaoluwa Osuntokun faa5f340fd contractcourt: export ResolveContract, update to stop channel arb
In this commit, we export the `ResolveContract` method as it's useful as
a way to manually remove active contracts from the chain and channel
arbitrator. Along the way, we also update the method to also attempt to
stop the channel arb if it exists. This allows an external party to
remove all state with a single call. Before this commit, it was assumed
that this method was only called by the channel arb itself, when it was
already on the way to exiting after all contracts were fully resolved.

We also add a set of unit tests to exercise the intended behavior as
this method is now public.
2019-11-20 17:42:52 -08:00
Olaoluwa Osuntokun f6614dd435 channeldb: add new AbandonChannel method 2019-11-20 17:42:49 -08:00
Olaoluwa Osuntokun 84c73f3025 Merge pull request #3740 from guggero/rest-client-receive-size
lnd: increase max message receive size for REST proxy
2019-11-19 17:15:24 -08:00
Olaoluwa Osuntokun 887be8e9a9 Merge pull request #3713 from guggero/extract-gen-cert-pair
cert: extract common certificate related functions into own package
2019-11-18 17:11:48 -08:00