Commit Graph

11235 Commits

Author SHA1 Message Date
Johan T. Halseth
a36c95f732 Merge pull request #4588 from bjarnemagnussen/coinselect-align-fee-estimates
chanfunding: fee estimation based on change output in `CoinSelect`
2021-04-16 13:43:51 +02:00
Johan T. Halseth
faf5049848 Merge pull request #4599 from hsjoberg/lndmobile-restart
mobile: re-initialize listeners via RecreateListeners
2021-04-15 08:53:55 +02:00
Conner Fromknecht
748265d097 Merge pull request #5207 from carlaKC/4727-singleinvoice
invoicesrpc: terminate SubscribeSingleInvoice once invoice reaches a final state
2021-04-14 15:32:53 -07:00
Olaoluwa Osuntokun
d5aedbcbd9 Merge pull request #5192 from Roasbeef/reject-cache-chan-ann
discovery: always add chan announcements to the reject cache if err !…
2021-04-14 15:20:18 -07:00
Olaoluwa Osuntokun
bb6aca1130 discovery: add unit tests for chan anns in the reject cache 2021-04-14 15:19:27 -07:00
Olaoluwa Osuntokun
c959ecc4c9 discovery: always add chan announcements to the reject cache if err != ErrIgnored
In this commit, we make a change to always add chan announcements to the
reject cache if we didn't reject them for already existing.  Without
this change, if we end up rejecting a channel announcement say because
the channel is already spent or the funding transaction doesn't exist,
then we'll end up continually re-validating the same set of channels we
know will fail, when they're sent to us by peers.

Fixes #5191
2021-04-14 15:19:14 -07:00
Olaoluwa Osuntokun
54e315101d Merge pull request #4577 from yyforyongyu/itest-better-logging
itest: logging for subtests and refactor WaitForBlockchainSync
2021-04-14 15:04:34 -07:00
Olaoluwa Osuntokun
70b7c355d3 Merge pull request #4425 from breez/persist-rescan-progress
Persist rescan progress.
2021-04-14 12:43:35 -07:00
Olaoluwa Osuntokun
c760b0188a Merge pull request #5209 from cfromknecht/constrain-pay-addr-lookup
channeldb/invoice: only allow pay-addr lookup w/ no query hash
2021-04-14 10:10:08 -07:00
carla
db1d671b1a multi: terminate SubscribeSingleInvoice once completed 2021-04-14 09:19:23 +02:00
carla
0686329062 itest/test: add settle/canceled assertions for subscribe single 2021-04-14 09:19:22 +02:00
carla
7f1e0a4d7b itest/test: move test hold persistence into its own file 2021-04-14 09:19:21 +02:00
yyforyongyu
96c3a64316 lntest: refactor WaitForBlockchainSync 2021-04-14 12:30:22 +08:00
yyforyongyu
a215c55186 itest: add logging for subtests 2021-04-14 12:30:19 +08:00
Olaoluwa Osuntokun
25dfbc4106 Merge pull request #5193 from wpaulino/neutrino-assume-valid
Use routing.assumechanvalid=true by default in Neutrino mode
2021-04-13 15:37:51 -07:00
Olaoluwa Osuntokun
21e8394983 Merge pull request #5194 from Kixunil/patch-3
Better document the nature of accept-keysend
2021-04-13 15:35:20 -07:00
Olaoluwa Osuntokun
41e2db6fbb Merge pull request #5204 from yyforyongyu/fix-pathfind-feature-bit
routing: fix pathfind edge features being nil
2021-04-13 15:34:54 -07:00
Conner Fromknecht
de7da3d223 Merge pull request #5182 from PierreRochard/node-update-addresses
rpcserver+lnrpc: make graph node addresses consistent
2021-04-13 14:30:07 -07:00
Conner Fromknecht
f8d201a605 channeldb/invoice: only allow pay-addr lookup w/ no query hash
Without this check, it's possible to send a probe HTLC w/ a valid
payment address but invalid payment hash that gets settled. Because
there was no assertion that the HTLC's payment hash matches the
invoice, the link would fail when it receives an invalid preimage for
the HTLC on its commitment.
2021-04-13 12:18:42 -07:00
Conner Fromknecht
791a82878d Merge pull request #5208 from carlaKC/makefile-acc
makefile: bump goacc commit
2021-04-13 11:57:14 -07:00
carla
a80a6f0453 Makefile: bump goacc commit 2021-04-13 15:39:03 +02:00
Bjarne Magnussen
6ab625d69b chanfunding: factor out sanity check for change that is dust 2021-04-13 11:37:20 +02:00
Bjarne Magnussen
59c40ec8b4 chanfunding: fee estimation based on change output in CoinSelect
Add a dust-limit to `CoinSelect` and let the fee estimation consider if a change output is needed or not, assuring that if the change is below the dust-limit it will go towards the fee instead.
2021-04-13 11:37:12 +02:00
yyforyongyu
37aa49c7aa routing: fix pathfind edge features being nil 2021-04-13 15:53:18 +08:00
Bjarne Magnussen
235e73205d chanfunding: refactor fee estimate calculation 2021-04-12 14:39:38 +02:00
Martin Habovštiak
16027b0151 Better document the nature of accept-keysend
This explains the purpose of `accept-keysend` and its planned deprecation in detail.

Fixes #5190
2021-04-10 10:41:18 +02:00
Conner Fromknecht
213b264e4c Merge pull request #5187 from bottlepay/config-commit-time
config: add commit time parameter
2021-04-09 16:44:40 -07:00
Wilmer Paulino
2f1f616c65 lntest: use validatechannels config option for itests 2021-04-09 15:47:04 -07:00
Pierre Rochard
99cba51849 rpcserver+lnrpc: make graph node addresses consistent
This commit adds a []*lnrpc.NodeAddress typed node_addresses field
on the NodeUpdate message of SubscribeChannelGraph to mirror the
addresses field in the LightningNode message of DescribeGraph.

Fixes https://github.com/lightningnetwork/lnd/issues/4084
2021-04-09 11:29:22 -05:00
Joost Jager
ffd346e2e1 config: add channel commit batch size parameter 2021-04-09 15:10:43 +02:00
Joost Jager
a181d26287 config: add channel commit interval parameter 2021-04-09 15:10:42 +02:00
Olaoluwa Osuntokun
c27e9ab953 build+lncfg: support pruned bitcoind backends (#5154)
* build: update btcwallet dependency introducing pruned bitcoind support

This is achieved by some recent work within the BitcoindClient enabling
it to retrieve pruned blocks from its server's peers.

* lncfg: add new PrunedNodeMaxPeers config option/flag
2021-04-08 16:35:07 -07:00
Johan T. Halseth
cd87fe89eb Merge pull request #5181 from yyforyongyu/refactor-itest
itest: move funding tests into one file
2021-04-08 09:53:29 +02:00
Olaoluwa Osuntokun
c998264578 Merge pull request #5108 from cfromknecht/sendtoroute-amp
channeldb+invoices: add spontaneous AMP receiving + sending via SendToRoute
2021-04-07 16:37:23 -07:00
Conner Fromknecht
730b718208 lntest: add AMP itest 2021-04-07 12:09:47 -07:00
Conner Fromknecht
888af51ab4 lntest: make buildRoute method on mppTestContext
This will be reused by the amp itest.
2021-04-07 12:09:47 -07:00
Conner Fromknecht
352ce10658 lnrpc: add UnmarshalAMP decoding 2021-04-07 12:09:47 -07:00
Conner Fromknecht
00581efec6 lnrpc: add AMPRecord to Hop 2021-04-07 12:09:43 -07:00
Conner Fromknecht
cfa9e954c7 channeldb/invoice: allow creating AMP invoices w/o preiamge 2021-04-07 12:08:35 -07:00
Conner Fromknecht
ea934e1be9 invoices: add TestSpontaneousAmpPayment
Adds a set of test cases that exercise the spontaneous AMP payment flow
with valid and invalid reconstructions, as well as with single and
multiple HTLCs. This also asserts that spontaneous AMP is gated behind
the existing AcceptKeysend flag.
2021-04-07 12:08:35 -07:00
Conner Fromknecht
90a255078d invoices: reconstruct AMP child preimages 2021-04-07 12:08:35 -07:00
Conner Fromknecht
2a49b59f4f channeldb/invoices: rigorously test updateHtlc for MPP/AMP scenarios 2021-04-07 12:08:35 -07:00
Conner Fromknecht
0b5be8576e channeldb/invoice: make Copy() a member of InvoiceHTLC 2021-04-07 12:08:35 -07:00
Conner Fromknecht
6780f74c87 channeldb/invoices: set AMP HTLC preimages when settling invoice 2021-04-07 12:08:35 -07:00
Conner Fromknecht
24d283e615 channeldb/invoice_test: only set htlc-level preimage on accept 2021-04-07 12:08:34 -07:00
Conner Fromknecht
88b72ab398 invoices: add processAMP 2021-04-07 12:08:34 -07:00
Conner Fromknecht
3fb70dd936 invoices: add checkSettleResolution and checkFailResolution
Also refactor existing unit tests to use them.
2021-04-07 12:08:34 -07:00
Conner Fromknecht
7e2f5a184b channeldb: validate feature dependencies when adding invoice 2021-04-07 12:08:34 -07:00
Conner Fromknecht
7bed359296 channeldb: refactor InvoiceRef.String() with all optional fields 2021-04-07 12:08:34 -07:00
Conner Fromknecht
174d577524 channeldb: make payhash on InvoiceRef optional
Currently we support queries by payHash or payHash+payAddr. For handling
of AMP HTLCs, we only need to support querying by payAddr.
2021-04-07 12:08:34 -07:00