Commit Graph

6891 Commits

Author SHA1 Message Date
Joost Jager
c62c9d64da
routing: add source parameter to query routes
This commit allows execution of QueryRoutes from any source node.
Previously this was restricted to only the self node.
2019-03-06 15:31:03 +01:00
Joost Jager
7719bc432f
routing: take Vertex types as path finding source and target nodes
Currently public keys are represented either as a 33-byte array (Vertex) or as a
btcec.PublicKey struct. The latter isn't useable as index into maps and
cannot be used easily in compares. Therefore the 33-byte array
representation is used predominantly throughout the code base.

This commit converts the argument types of source and target nodes for
path finding to Vertex. Path finding executes no crypto operations and
using Vertex simplifies the code.

Additionally, it prepares for the path finding source parameter to be
exposed over rpc in a follow up commit without requiring conversion back
and forth between Vertex and btcec.PublicKey.
2019-03-06 15:31:00 +01:00
Joost Jager
b09adc3219
lnrpc+routing: add edges and nodes restrictions to query routes
This commit allows the execution of QueryRoutes to be controlled using
lists of black-listed edges and nodes. Any path returned will not pass
through the edges and/or nodes on the list.
2019-03-06 15:30:57 +01:00
Joost Jager
4376f3e1bd
routing: allow nil maps for ignored edges and nodes
This allows removing a lot of empty map initialization code and makes
the code more readable.
2019-03-06 15:30:54 +01:00
Joost Jager
b2b28b49b1
routing: export RestrictParams and EdgeLocator 2019-03-06 15:30:52 +01:00
Joost Jager
4937304732
routing: remove redundant fee limit check in newRoute
This check was a left over from when the fee limit wasn't checked yet in
the path finding algorithm.
2019-03-06 15:30:49 +01:00
Joost Jager
f4cc2e235a
routing: add todo describing fee limit bug 2019-03-06 15:30:46 +01:00
Johan T. Halseth
cee18892b5
Merge pull request #2565 from joostjager/sendpayment-refactor
routing: sendPayment broken down into multiple functions
2019-03-06 10:20:20 +01:00
Olaoluwa Osuntokun
c853555d1b
Merge pull request #2690 from cfromknecht/hwsc-fndg-priority-queue
peer: deprioritize gossip traffic
2019-03-05 21:08:26 -08:00
Conner Fromknecht
935ea7d450
server: broadcast using SendMessageLazy, remove unused sendPeerMessages 2019-03-05 17:09:14 -08:00
Conner Fromknecht
b50fd33915
server: remove unused SendToPeer method 2019-03-05 17:09:01 -08:00
Conner Fromknecht
0ae06c8189
discovery+server: send lazy gossip msgs 2019-03-05 17:08:48 -08:00
Conner Fromknecht
2e5bc783f7
peer: preallocate errchans opt 2019-03-05 17:08:35 -08:00
Conner Fromknecht
f39edd8000
peer: add SendMessageLazy 2019-03-05 17:08:22 -08:00
Conner Fromknecht
660bbaf646
peer: add message reordering based on priority 2019-03-05 17:08:05 -08:00
Wilmer Paulino
63273e195e
Merge pull request #2661 from Roasbeef/last-unused-addr
lnwallet+lnrpc: add ability to fetch the last unused wallet addr
2019-03-05 16:53:43 -08:00
Francisco Calderón
9e920f12c9
Add password length validation on create CLI
In this commit we add this validation importing
the walletunlocker.ValidatePassword function on
create wallet command.
2019-03-05 20:58:46 -03:00
Olaoluwa Osuntokun
65cdb1294e
rpc: recognize the new unused prefix address types 2019-03-05 15:35:28 -08:00
Olaoluwa Osuntokun
8c1181af3b
lnwallet: add LastUnusedAddress to WalletController interface
In this commit, we add a new `LastUnusedAddress` method to the
`WalletController` interface. Callers can use this new method to graph
the last unused address, which can be useful for UIs that want to
refresh the address, but not cause nearly unbounded address generation.

The implementation for `btcwallet` uses the existing `CurrentAddress`
method. We've also added a new integration tests to exercise the new
functionality.
2019-03-05 15:35:24 -08:00
Olaoluwa Osuntokun
7703567b0b lnrpc: add new unused address types for NewAddressRequest
In this commit, we add two new address types to `NewAddressRequest`.
These address types will allow the caller to retrieve the last _unused_
address, rather than always rotating to the next address in the
keychain.
2019-03-05 15:34:56 -08:00
Olaoluwa Osuntokun
3be894bc28
Merge pull request #2702 from MDrollette/inactive-overflow
rpcserver: prevent overflow in channel count
2019-03-05 14:56:51 -08:00
Olaoluwa Osuntokun
8b1321d29f
Merge pull request #2732 from cfromknecht/revert-write-timeout-reduction
Revert "peer: reduce write timeout to 10s"
2019-03-05 14:33:18 -08:00
Wilmer Paulino
3e11d72549
Merge pull request #2713 from halseth/listchannels-debug-log
[trivial] rpcserver: make listchannels debug log
2019-03-05 10:25:27 -08:00
Conner Fromknecht
6f1ccf14e9
Revert "peer: reduce write timeout to 10s"
This reverts commit db2c104111c3c12e1651120fe5a51ce03dad8c58.
2019-03-04 13:55:09 -08:00
Matt Drollette
1664617874 rpcserver: prevent overflow in channel count 2019-03-01 13:06:27 -06:00
Olaoluwa Osuntokun
2a652455aa
Merge pull request #2437 from valentinewallace/max-htlc-routing
Consider max HTLC during pathfinding.
2019-03-01 13:55:38 -03:00
Valentine Wallace
648adaea69 routing/pathfind: ensure max htlc is considered during path finding
In this commit, we update the path finding logic to
ignore a channel if the HTLC value (including the fees
at the point) exceeds the max HTLC value (if set) of the
link.
2019-03-01 08:05:27 -08:00
Valentine Wallace
348a66ed13 routing: update test edge policy fields to include max htlc + new flags
Since the MaxHTLC field was recently added to the ChannelEdgePolicy struct,
and the Flags field was broken into ChannelFlags and MessageFlags, the
test edge policies should be updated accordingly.
2019-03-01 08:05:27 -08:00
Olaoluwa Osuntokun
a2dafdef37
Merge pull request #2711 from BrownBurger/installation-bip-links
docs/INSTALL.md: fix links to BIPs
2019-03-01 13:00:50 -03:00
Olaoluwa Osuntokun
2d87a77cdd
Merge pull request #2703 from sanket1729/master
Change network from simtest to testnet for connection to testnet faucet
2019-03-01 12:58:24 -03:00
Olaoluwa Osuntokun
475103d8fd
Merge pull request #2707 from joostjager/commit-resolver-fix
cnct: fix error returning bug
2019-02-28 12:38:19 -03:00
Johan T. Halseth
772930343d
rpcserver: make listchannels debug log 2019-02-27 12:38:54 -03:00
Thomas Braunberger
fab742141f fix links to BIP 157 and 158 2019-02-27 10:01:34 +01:00
Joost Jager
f23fdf95e7
cnct: fix error returning bug
The wrong error variable was returned, causing a resolution failure to
be interpreted by the channel arbitrator as a success.
2019-02-26 12:56:21 -03:00
Johan T. Halseth
0082db4848
travis: use go 1.12.x 2019-02-26 12:19:00 -03:00
Sanket Kanjalkar
c7884d1c5a
Change simtest to testnet for connection to testnet faucet
Change simtest to testnet for connection to testnet faucet
2019-02-25 22:12:33 -06:00
Olaoluwa Osuntokun
a6cf6f4237
lnwallet+peer: remove unnecessary MaxPendingAmount method
We don't need this method, as we can directly access it from the peer
via public fields with its current usage.
2019-02-25 12:51:31 -03:00
Olaoluwa Osuntokun
5d1eaaffa4
lnrpc: rename MaxHtlc to MaxHtlcMsat in lnrpc.RoutingPolicy
In this commit, we rename the new `MaxHtlc` field to `MaxHtlcMsat`. We
do this in order to adhere to the new practice to suffix each amount
related field with their proper unit.
2019-02-25 12:49:47 -03:00
Olaoluwa Osuntokun
b13d8cd261
Merge pull request #2434 from valentinewallace/fwding-policy-max-htlc
Set max HTLC in forwarding policies.
2019-02-25 12:43:15 -03:00
Olaoluwa Osuntokun
a6ba965bc4
Merge pull request #2474 from cfromknecht/read-and-write-pools
lnpeer+brontide: reduce memory footprint using read/write pools for message encode/decode
2019-02-24 16:39:32 -03:00
Olaoluwa Osuntokun
f95a71fdc9
build: bump to psuedo version 0.5.2-99-beta 2019-02-22 15:31:07 -08:00
Johan T. Halseth
b93b4f2974
Merge pull request #2672 from Gfloresechaiz/Gfloresechaiz-patch-1
INSTALL.md : bump to go.1.11.5 on Linux
2019-02-22 12:56:27 +01:00
Conner Fromknecht
db2c104111
peer: reduce write timeout to 10s 2019-02-21 20:11:47 -08:00
Conner Fromknecht
603601a4c8
peer+server: use peer-level readPool 2019-02-21 20:11:33 -08:00
Conner Fromknecht
8ac8d95b54
brontide/conn: expose ReadNextHeader+ReadNextBody 2019-02-21 20:11:19 -08:00
Conner Fromknecht
93ce4a7575
brontide/noise: compose ReadMessage from ReadHeader+ReadBody 2019-02-21 20:11:05 -08:00
Conner Fromknecht
9a3c0b8bca
peer+server: switch to pool.Write from pool.WriteBuffer 2019-02-21 20:10:51 -08:00
Conner Fromknecht
ce1bd4be2c
pool/worker_test: add tests for concrete Worker pools 2019-02-21 20:10:40 -08:00
Conner Fromknecht
32339a92d3
pool/read: adds Read pool 2019-02-21 20:10:28 -08:00
Conner Fromknecht
d2eeee7a12
pool/write: adds Write pool 2019-02-21 20:10:17 -08:00