Commit Graph

5762 Commits

Author SHA1 Message Date
Olaoluwa Osuntokun
4b1334ad49
rpc: populate additional information in AbandonChannel close summary
In this commit, we extend the AbandonChannel RPC method to store as much
information as possible within the CloseSummary. Most importantly, we
store the current and next (if available) revocation of the remote party
along with the channel config for the local party. With this
information, we have enough data to be able to generate a custom signer
for a new commitment state, or to prove that the channel was indeed
ours if needed.
2018-09-28 16:43:17 -07:00
Olaoluwa Osuntokun
c508365bcc
Merge pull request #1905 from halseth/fundinglocked-htlc-mismatch
Defer channel restoration until after channel active check.
2018-09-28 16:34:18 -07:00
Olaoluwa Osuntokun
e44e588a36
Merge pull request #1987 from wpaulino/remove-newwitnessaddress-rpc
rpc: remove NewWitnessAddress RPC
2018-09-28 15:43:56 -07:00
Johan T. Halseth
22d0e5b43e
channeldb/invoice test: add more tests for edge cases 2018-09-28 13:00:57 +02:00
Johan T. Halseth
0c51e31d1c
channeldb/invoices+test: don't return invoices on reversed query at index 1
Previously a call to QueryInvoices with reversed=true and index_offset=1
would make the cursor point to the first available invoice (num 1) that
would be returned as part of the response. This is inconsistent with the
othre indexes, so we instead just return an empty list in this case.

A test case for this situation is also added.
2018-09-28 13:00:57 +02:00
Wilmer Paulino
bdcc847a44
rpc: remove NewWitnessAddress RPC
In this commit, we remove the unnecessary NewWitnessAddress RPC. We do
this as, at the moment, we only expose the wallet to generate witness
addresses. Now that the RPC has been removed, its REST endpoint has been
assigned to the NewAddress RPC, which should be the de facto way of
having the wallet generate any type of supported address.

Fixes #1986.
2018-09-28 02:52:09 -07:00
Johan T. Halseth
54a608d09d
htlcswitch+discovery mock: adhere to new lnpeer interface 2018-09-28 09:05:18 +02:00
Johan T. Halseth
a433e70575
fundingmanager test: satisfy new interfaces 2018-09-28 09:05:01 +02:00
Johan T. Halseth
b712b861f8
peer: make AddNewChannel take OpenChannel
This commit makes the AddNewChannel expect a OpenChannel instead of a
LightningChannel struct. This moves the responsibility for starting the
LightningChannel from the fundingmanager to the peer, and we can defer
the channel restoration until we know that the channel is not already
active.
2018-09-28 08:59:27 +02:00
Johan T. Halseth
addb4aed89
funding+server: make FindChannel return OpenChannel instead of LightningChannel 2018-09-28 08:59:27 +02:00
Johan T. Halseth
240318befe
peer: return error on newChanReq
Previously the errors weren't returned back to the sender of the new
channel, making it impossible to tell whether it suceeded or not.
2018-09-28 08:59:26 +02:00
Olaoluwa Osuntokun
b341dea373
Merge pull request #1108 from sangaman/sever-server
multi: fix sever/server typos
2018-09-27 22:23:45 -07:00
Dave Kerr
1977d45de5 multi: fix function references in comments and clarify grammar 2018-09-27 20:59:59 -07:00
CirroStorm
f594a57c94 lnwallet: remove need for lnwallet to have access to the private key
This paves the way for lnd to work with hardware wallets, in which case it will not have access to the private key.
2018-09-27 20:58:46 -07:00
Olaoluwa Osuntokun
6afee3d099
Merge pull request #1856 from maurycy/typos
multi: fix various typos in comments
2018-09-27 20:38:10 -07:00
Olaoluwa Osuntokun
54deb00846
Merge pull request #1922 from roeierez/payments_rpc
Add value_sat and value_msat to Payment
2018-09-27 20:32:59 -07:00
Olaoluwa Osuntokun
a9398ac01c
Merge pull request #1943 from joostjager/nursery-test
utxonursery: add test coverage
2018-09-27 20:16:19 -07:00
Roei Erez
6bc01384d6 udpate code to include the value_sat and value_msat fields in payments 2018-09-27 08:58:18 +03:00
Roei Erez
c5bebb3b32 add value_sat and value_msat to the outgoing payment response 2018-09-27 08:58:18 +03:00
Johan T. Halseth
835617b576
Merge pull request #1799 from tailnode/fix-markdown-issue
docs:fix markdown issues in docker/README.md
2018-09-26 10:02:08 +02:00
Olaoluwa Osuntokun
16ec80e163
contractcourt: update tests to use new IncubateOutputs API 2018-09-25 21:49:10 -07:00
Olaoluwa Osuntokun
68774e3ae4
Merge pull request #1807 from wpaulino/retransmit-zero-stale-channels
discovery/gossiper: check ErrNoGraphEdgesFound for restransmitStaleChannels
2018-09-25 21:14:23 -07:00
Patrick
fc1cca8332 README: fix typo 2018-09-25 21:12:14 -07:00
Olaoluwa Osuntokun
1494c9e67f
Merge pull request #1952 from joostjager/chanarb-test
cnct: add channel_arbitor htlcOutgoingContestResolver test
2018-09-25 21:05:43 -07:00
Joost Jager
77d6a6697d
utxonursery: check for quit channel 2018-09-24 20:40:23 -07:00
Joost Jager
8b515f83b3
utxonursery: add test for commitment output 2018-09-23 15:52:47 -07:00
Joost Jager
b89db6d614
utxonursery: assert empty database 2018-09-23 15:52:46 -07:00
Joost Jager
b5da791271
utxonursery: assert lingering goroutines 2018-09-23 15:52:46 -07:00
Joost Jager
f1590a15e7
makefile: dump all goroutines on panic
To provide more diagnostic information when unit tests panic.
2018-09-23 15:52:46 -07:00
Joost Jager
9f6fb1e128
utxonursery: test restart behaviour 2018-09-23 15:52:45 -07:00
Joost Jager
83a5ea0c31
utxonursery: add test coverage for outgoing htlc 2018-09-23 15:51:35 -07:00
Wilmer Paulino
828ecfe343
peer: skip sending active channel updates for pending open channels
In this commit, we skip sending active channel update for pending open
channels as they are not yet part of the graph.
2018-09-21 17:26:37 -07:00
Wilmer Paulino
99a4952239
server+peer: check ErrEdgeNotFound when enabling/disabling a channel
In this commit, we also check ErrEdgeNotFound when attempting to send an
active/inactive channel update for a channel to the network. We do this
as it's possible that a channel has confirmed, but it still does not
meet the required number of confirmations to be publicly announced.
2018-09-21 17:24:36 -07:00
Wilmer Paulino
f13c1d2787
channeldb: ensure channel buckets are only created once
In this commit, we ensure that we only create the sub-bucket for
channels once: at the time of creation. We do this as otherwise it's
possible that a method that mutates a channel's state is called after it
has already been closed on-chain, leading to the channel bucket being
recreated.
2018-09-21 17:14:59 -07:00
Olaoluwa Osuntokun
f4305097e1
Merge pull request #1295 from joostjager/forget
rpc: add support for a `forgetchannel` RPC only enabled w/ the debug flag
2018-09-21 17:13:01 -07:00
Olaoluwa Osuntokun
b96745e623
Merge pull request #1847 from halseth/kidoutput-height-hint
[utxonursery] Use kidoutput broadcast height as height hint
2018-09-21 16:39:54 -07:00
Olaoluwa Osuntokun
8cb93014eb
Merge pull request #1953 from cfromknecht/remove-neutrino-shadowed-height
chainntnfs/neutrinonotify/neutrino: remove height shadowing
2018-09-21 15:48:35 -07:00
Conner Fromknecht
b5b8602820
chainntnfs/neutrinonotify/neutrino: remove height shadowing
This commit removes shadowing of the currentHeight
variable when registering for neutrino spend
notifications. Currently, a locally scoped variable
is used when determining if the backend is fully
synced before attempting to call GetUtxo, which
means that the variable won't be updated after
breaking out of the loop. As a result, this could
cause us to scan unnecessarily if the backend is
catching up, e.g. after being offline for some time.
2018-09-20 18:47:04 -07:00
Joost Jager
a75b0c871b
lnd_test: add AbandonChannel test 2018-09-20 18:33:47 -07:00
Conner Fromknecht
652ec893e0
lntest/node: persist network subscription state across restarts 2018-09-20 18:28:48 -07:00
Joost Jager
f34ffab9ba
cnct: add channel_arbitor test that exercises the htlcOutgoingContestResolver 2018-09-20 18:17:23 -07:00
Johan T. Halseth
0a5f982280
utxonursery: pass broadcastHeight to registerPreschoolConf
In this commit IncubateOutputs are given an extra parameter
broadcastHeight, which is passed from the server and used when called
registerPresschoolConf.

Earlier the utxonursery used the bestHeight as height hint in this case,
which would be wrong in the cases where we got outputs for incubation
which was confirmed below the best height.
2018-09-20 13:16:39 +02:00
Johan T. Halseth
3a67fe2552
contractcourt+server: make IncubateOutputs take broadcastHeight 2018-09-20 12:54:48 +02:00
Johan T. Halseth
6d0deed885
utxonursery test: run tests in parallel 2018-09-20 12:54:48 +02:00
Olaoluwa Osuntokun
6d759bd8d9
Merge pull request #1911 from wpaulino/tor-controller-if-inbound
server: start tor controller if we should listen for inbound connections
2018-09-19 20:32:16 -07:00
Joost Jager
ab67b9a4de
rpcserver+lnrpc+lncli: add AbandonChannel rpc call
Using AbandonChannel, a channel can be abandoned. This means
removing all state without any on-chain or off-chain action.
A close summary is the only thing that is stored in the db after
abandoning.

A specific close type Abandoned is added. Abandoned channels
can be retrieved via the ClosedChannels RPC.
2018-09-18 12:20:27 -07:00
Joost Jager
3b6f7fdb83
gitignore: ignore visual studio code config 2018-09-18 07:17:44 -07:00
Olaoluwa Osuntokun
25145acc46
Merge pull request #1738 from joostjager/validation
payment failure message with attached channel_update not validated
2018-09-17 21:11:02 -07:00
Olaoluwa Osuntokun
8a2b3bf369
Merge pull request #1932 from Desuuuu/tor-controller-parse-fix
tor/controller: fix response parsing for values containing the '=' character
2018-09-17 20:55:06 -07:00
Desuuuu
23c03cc51f tor/controller: fix response parsing for values containing the '=' character 2018-09-18 02:56:24 +02:00