Commit Graph

5595 Commits

Author SHA1 Message Date
Wilmer Paulino
5b42a38c0f
lnwallet/interface_test: add test to detect confirmation of change output spend tx
In this commit, we add a new test to the existing set of wallet tests to
ensure we can properly detect the confirmation of transactions that
spend our change outputs. We do this as a measure to prevent future
regressions from happening where the wallet doesn't request its backend
to be notified of when an on-chain transaction pays to a change address,
like with the recently discovered SendOutputs bug.

As is, this test will not pass until we update the btcwallet dependency
in the next commit.
2018-11-14 20:17:36 -08:00
Wilmer Paulino
255f38e72d
lnwallet/btcwallet: check output is under our control in FetchInputInfo
In this commit, we add an additional check to btcwallet's FetchInputInfo
method to ensure the output is actually under control of the wallet.
Previously, the wallet would assume the output was under its control if
the txid of the output was found within the wallet. This is not a safe
assumption to make however, because if we happened to be the sender of
this transaction, it would be found within the wallet but it's not
actually under our control. To fix this, we explicitly check that there
exists an address in our wallet for this output.
2018-11-14 20:17:36 -08:00
Olaoluwa Osuntokun
fd5b24fb4e
Merge pull request #2149 from wpaulino/chan-full-proof-node-ann
discovery/gossiper: send node anns when constructing full chan proof
2018-11-13 21:13:57 -08:00
Olaoluwa Osuntokun
2f0bc5c370
Merge pull request #2124 from cfromknecht/wtlookout
[watchtower/lookout]: on-chain breach monitoring
2018-11-13 19:53:07 -08:00
Olaoluwa Osuntokun
adb8bdc359
Merge pull request #2153 from halseth/integration-tests-waitforpendingclose
lnd_test: add waitForChannelPendingForceClose
2018-11-13 16:11:05 -08:00
Johan T. Halseth
776059bdab
Merge pull request #2155 from joostjager/return-tx
lnwallet: update to new SendOutputs signature
2018-11-13 16:39:54 +01:00
Johan T. Halseth
721e9a2a90
Merge pull request #2173 from chokoboko/peer-handshake-timeout-err-msg
peer: Fix handshake timeout error message
2018-11-13 08:18:28 +01:00
chokoboko
ec1a77dccb Fix peer handshake timeout error message
Use proper format verb for handshakeTimeout
2018-11-12 12:45:31 +02:00
Johan T. Halseth
881ed08709
Merge pull request #2150 from wpaulino/abandon-channel-rest
lnrpc: modify AbandonChannel REST endpoint
2018-11-12 09:02:37 +01:00
Wilmer Paulino
55094f1470
discovery/gossiper: send node anns when constructing full chan proof
In this commit, we allow the gossiper to also broadcast the
corresponding node announcements, if we know of them, of a channel when
constructing its full proof. We do this to ensure peers (other than our
remote peer) receive all the relevant announcements for a channel.

The tests changes were made to ensure the new behavior introduced works
as intended. Previously, the node announcements for each test channel
announcement were not processed, so they never existed from the
gossiper's point of view.

This also addresses an existing flake in the integration test
`testNodeAnnouncement`. This problem arose due to the node announcement
being sent before the connection between Dave (node announcement sender)
and Alice (node announcement receiver) was initiated and the full
channel proof was constructed.
2018-11-11 17:48:07 -08:00
Wilmer Paulino
c9e79527af
discovery/gossiper: add trace log when skipping unadvertised node ann 2018-11-11 17:48:06 -08:00
Wilmer Paulino
4f45e339f1
discovery+routing: add FetchLightningNode to ChannelGraphSource interface 2018-11-11 17:48:05 -08:00
Joost Jager
e14678030c
lnwallet: update to new SendOutputs signature 2018-11-10 07:57:19 +01:00
Johan T. Halseth
d4b042dc19
Merge pull request #2159 from halseth/integration-tests-net-aware-db
lntest: make DBPath aware of active net
2018-11-09 12:14:55 +01:00
Johan T. Halseth
715db90435
Merge pull request #2170 from AdamISZ/fix-typos-signer
fix two comment typos in signer.go
2018-11-09 11:44:02 +01:00
Johan T. Halseth
c694663d94
Merge pull request #2143 from ErikEk/improv_color_validation
Improving color validation
2018-11-09 09:58:41 +01:00
Johan T. Halseth
d7cbdea9db
lnd_test: add waitForChannelPendingForceClose
This commit introduces a new utility method
waitForChannelPendingForceClose, that is used to ensure a force closed
channel has been recognized by the UTXO nursery, and is ready to be
swept as soon as it matures.

The commit also utilizes this method to properly wait before mining
blocks in certain tests, as it makes sure that the UTXO nursery will
react properly to the new blocks.
2018-11-09 08:50:00 +01:00
Johan T. Halseth
1516ceb37a
Merge pull request #2160 from halseth/integration-tests-mine-reorged-funding-tx
[Integration tests] mine reorged funding tx
2018-11-09 08:48:09 +01:00
Johan T. Halseth
9c3be96490
Merge pull request #2167 from joostjager/nursery-cleanup
utxonursery: clean up unused code
2018-11-09 08:44:44 +01:00
Johan T. Halseth
3df62268ea
Merge pull request #2158 from halseth/integration-tests-remove-externalip
[Trivial] lntest/node: remove extraneous externalip
2018-11-09 08:44:04 +01:00
Johan T. Halseth
b0c6f666f6
Merge pull request #2166 from joostjager/cnct-fixes
cnct: add todo for invalid expiry value handling
2018-11-09 08:43:43 +01:00
Johan T. Halseth
a2b553cf57
Merge pull request #2157 from halseth/integration-tests-remove-log
[Integration tests] remove log disabling hack
2018-11-09 08:42:35 +01:00
ErikEk
f36c58acd7 Improved color validation - now with fixes and a table driven test 2018-11-09 03:09:39 +01:00
Wilmer Paulino
3a314ba4a7
lnrpc: modify AbandonChannel REST endpoint
In this commit, we modify the AbandonChannel REST endpoint to avoid
conflicting with the CloseChannel's. Otherwise, if a debug build of lnd
is being used, there's no way of closing channels through the REST API
as it's been overwritten by AbandonChannel.
2018-11-08 16:16:31 -08:00
AdamISZ
53b1b8837f
fix two comment typos in signer.go 2018-11-08 20:54:02 +01:00
Joost Jager
4cc255676b
utxonursery: use StaticFeeEstimator instead of mock in test 2018-11-07 15:33:36 +01:00
Joost Jager
3c1260941f
utxonursery: remove unused TxOut serialization funcs 2018-11-07 15:33:36 +01:00
Joost Jager
839752857f
cnct: add comment on expiry calculation 2018-11-07 15:29:57 +01:00
Joost Jager
c3560932b6
cnct: fix log line 2018-11-07 15:29:56 +01:00
Johan T. Halseth
3ff6055a62
Merge pull request #1782 from xsb/getinfo-inactive-channels
rpcserver: show inactive channels in GetInfo
2018-11-07 08:45:15 +01:00
Johan T. Halseth
1208c66a89
lnd_test: mine reorged out funding tx 2018-11-06 10:35:05 +01:00
Johan T. Halseth
cba0854230
lntest: make DBPath aware of active net 2018-11-06 10:32:32 +01:00
Johan T. Halseth
5a6b796664
lntest/node: remove extraneous externalip 2018-11-06 10:29:52 +01:00
Johan T. Halseth
6d91d816a9
lnd_test: remove log disabling hack 2018-11-06 10:27:47 +01:00
Johan T. Halseth
3bb9b398e5
lnd_test: define global test timeouts
In preparation for the added propagation delay by separating the miner
and the chain backend, we increase several timeouts throughout the test,
and extract them into constants that can easily be altered.
2018-11-05 22:16:32 +01:00
Johan T. Halseth
9b6055764a
lntest: define and export various test constants 2018-11-05 22:10:37 +01:00
Xavi Soler
ca9f572766 add num_inactive_channels field to docs 2018-11-05 09:11:01 +01:00
Xavi Soler
5fad3d1fbe rpcserver: show inactive channels in GetInfo 2018-11-05 09:10:32 +01:00
Olaoluwa Osuntokun
c0fadcc89b
Merge pull request #1944 from joostjager/sendroute-pubkey
lnrpc: allow pubkey in SendToRoute
2018-11-04 20:12:19 -08:00
Olaoluwa Osuntokun
b600985063
Merge pull request #2135 from cfromknecht/isolate-gossip-rate-limiting
[discovery] Isolate gossip rate limiting
2018-11-02 20:13:29 -07:00
Olaoluwa Osuntokun
f60012b3f9
Merge pull request #2027 from mrwhythat/no-incoming-push-amounts-option
Option to disable incoming push amounts on channel opening
2018-11-02 17:08:05 -07:00
Olaoluwa Osuntokun
111d0ff542
Merge pull request #2136 from alexbosworth/patch-6
htlcswitch: Limit low-signal tps log statement to debug log
2018-11-02 14:58:07 -07:00
Olaoluwa Osuntokun
62778c61cc
lnd: update copyright notice 2018-11-02 14:49:36 -07:00
Alex Bosworth
2d8e239fe9
Move pewpew diff log into debug log 2018-11-01 17:46:03 -07:00
Conner Fromknecht
ef309f43d2
discovery: pass peer quit signal to ProcessQueryMsg
This commit passes the peer's quit signal to the
gossipSyncer when attempt to hand off gossip query
messages. This allows a rate-limited peer's read
handler to break out immediately, which would
otherwise remain stuck until the rate-limited
gossip syncer pulled the message.
2018-11-01 17:35:55 -07:00
Conner Fromknecht
96c47f7de4
discovery/gossiper: bypass main event loop for queries
This commit restructures the delivery of gossip
query related messages, such that they are delivered
directly to the gossip syncers. Gossip query rate
limiting was introduced in #1824 on a per-peer basis.
However, since all gossip query messages were being
delivered in the main event loop, the end result is
that one rate-limited peer could stall all other
peers.

In addition, since no other peers would be able to
submit gossip-related messages through the blocked
event loop, the back pressure would eventually rate
limit the read handlers of all peers as well.
The end result would be lengthy delays in reading
messages related to htlc forwarding.

The fix is to lift the delivery of gossip query
messages outside of the main event loop. With
this change, the rate limiting backpressure is
delivered only to the intended peer.
2018-11-01 17:28:20 -07:00
Conner Fromknecht
b0b2475660
peer: remove quit chan from AddMsg signature 2018-11-01 17:08:24 -07:00
whythat
6f3adcd490 fundingmanager test: add test for 'rejectpush' option 2018-11-02 01:55:18 +02:00
whythat
2c9a039845 config: add option to disable incoming push amounts in OpenChannel
This is useful for merchant-side prevention of accidental pushes
during channel opening.
2018-11-02 01:54:02 +02:00
Joost Jager
28ae028535
lnrpc: accept pubkey in hop message
By passing a pubkey into SendToRoute, it becomes unnecessary for lnd to
query the channel graph to retrieve the hop pubkey. This allows routes
over private channels that are not present in the graph.
2018-11-01 08:59:53 +01:00