Janus
40b4e555e6
ln: avoid recursive dependencies, make new lnutil
2018-06-28 15:50:45 +02:00
Janus
3397474095
ln: merge OpenChannel and HTLCStateMachine
2018-06-28 13:57:39 +02:00
Janus
49541f78a6
ln: shortcut some OpenChannel fields to traversing too much
2018-06-28 13:57:39 +02:00
Janus
5791ed1b66
ln: store HTLCStateMachine in lnworker.channels
2018-06-28 13:57:39 +02:00
ThomasV
a0042b8203
Separate open_channel dialog. In open_channel_coroutine, use host and port from channel announcements
2018-06-27 12:44:43 +02:00
Janus
5d1cdc6513
ln: trim dust htlc outputs
2018-06-26 19:33:37 +02:00
ThomasV
77b1670b77
lightning: single shared instance of Watcher, ChannelDB and PathFinder
2018-06-26 19:33:37 +02:00
Janus
0efc67b96b
ln: improve lnhtlc, passes test
2018-06-26 19:32:50 +02:00
ThomasV
09e700056d
fix reestablish_channel
2018-06-26 19:32:50 +02:00
ThomasV
7bea7515f1
follow-up previous commit
2018-06-26 19:32:50 +02:00
ThomasV
78474978a0
reestablish channels in network callback
2018-06-26 19:32:50 +02:00
Janus
90d0d0dd7e
ln: close channels
2018-06-26 19:32:50 +02:00
Janus
fe8dec0426
ln: don't corrupt channels storage when multiple funding_locked are received
2018-06-26 19:32:50 +02:00
Janus
fe8f26981c
ln: don't break channel when failing htlc
2018-06-26 19:32:50 +02:00
Janus
4bd792902b
ln: announcement reliability fixes for qt, remove asserts forbidding unbalanced channels
2018-06-26 19:32:50 +02:00
Janus
7dade39d20
ln: begin handling htlc failures
2018-06-26 19:32:50 +02:00
Janus
43c0a73033
ln: channel announcements
2018-06-26 19:32:50 +02:00
Janus
76ff48160c
ln: lnpay: revoke until we get a commitment tx without htlcs
2018-06-26 19:32:50 +02:00
Janus
eec6a71670
ln: fix reestablishing channel with no mined funding tx
2018-06-26 19:32:50 +02:00
Janus
2e2ccdf4af
ln: fix repeated payments
2018-06-26 19:32:50 +02:00
Janus
0faba96984
ln: avoid code duplication
2018-06-26 19:32:50 +02:00
Janus
6e2834a65c
ln: save remote's secrets in RevocationStore, not our secrets. call lnhtlc.receive_revocation
2018-06-26 19:32:50 +02:00
Janus
1ad5987e03
lnbase/lnhtlc: use lnhtlc more instead of manually constructing tx'es
2018-06-26 19:32:50 +02:00
Janus
f8e1b935ea
lnbase: use sign_next_commitment for initial remote_ctx
2018-06-26 19:32:50 +02:00
Janus
0f81af0142
lnbase: use lnhtlc when verifying our initial commitment tx
2018-06-26 19:32:50 +02:00
Janus
29deff53ad
lnbase: use broadcast_transaction instead of broadcast (follow up e57e55aad)
2018-06-26 19:32:50 +02:00
Janus
207b5e9179
ln: remove unneeded forwarding htlc features, check commitment sig using lnhtlc while receiving
2018-06-26 19:32:50 +02:00
Janus
4ecdce39f8
ln: integrate lnhtlc in lnbase, fix multiple lnhtlc bugs
2018-06-26 19:32:50 +02:00
Janus
608ee85607
ln: request_initial_sync, increase our max_htlc_value, fix receiving payment
2018-06-26 19:32:50 +02:00
ThomasV
0be0d4e2cc
do not block GUI with open_channel
2018-06-26 19:32:50 +02:00
ThomasV
6a73e04e29
lnbase: mark_open on startup
2018-06-26 19:32:50 +02:00
SomberNight
4a1a407802
wait for peer.initialized in channel_establishment_flow
2018-06-26 19:32:50 +02:00
ThomasV
8322a04557
follow up 0b3a882e7d57c8a42be48c491a46dc814eab6acb
2018-06-26 19:32:50 +02:00
ThomasV
45f113244a
simplify funding_locked
...
expose lnworker in peer
update channel_db when channels are open
2018-06-26 19:32:50 +02:00
ThomasV
71a0b91096
Display channel status in the GUI.
...
Do not convert channel_id to integer; there is no reason to do that.
2018-06-26 19:32:50 +02:00
Janus
c6ad21889d
ln: htlc state machine (not used yet)
2018-06-26 19:32:19 +02:00
Janus
c23a4f10bd
ln: save channels in dict, warn on invoice exceeding max_htlc amount
2018-06-26 19:32:19 +02:00
ThomasV
b874c5c8b0
lnworker: separate invoice creation from payment flow
2018-06-26 19:31:41 +02:00
Janus
8dbd607f66
ln: restore channels correctly after restart
...
* save funding_locked_received: if a node already sent us
funding_locked, save it to avoid superfluous messages
* use Queues instead of Futures: this ensure that we don't error if we
receive two messages of the same type, and in avoids having to delete
futures in finally blocks. A queue monitor could be added to detect
queue elements that are not popped.
* request initial routing sync: since we don't store the graph yet, it
is better to request the graph from the Peer so that we can route
* channel_state cleanup: now each channel should have a state, which is
initialized to OPENING and only marked OPEN once we have verified that
the funding_tx has been mined
2018-06-26 19:31:41 +02:00
ThomasV
bc7022b439
fix channel_reestablish
2018-06-26 19:31:41 +02:00
ThomasV
cddc1c64fd
lnbase: fix read_message
2018-06-26 19:31:41 +02:00
Janus
285f7a3962
ln: restore functionality
2018-06-26 19:31:41 +02:00
Janus
735d1c1457
ln: save remote node_id in channel
2018-06-26 19:31:41 +02:00
SomberNight
ab14d4ab83
split lnrouter from lnbase
2018-06-26 19:31:41 +02:00
SomberNight
cbc4c391c0
remove function H256
2018-06-26 19:31:41 +02:00
ThomasV
e3ce4f3657
move on_funding_locked to lnworker
2018-06-26 19:31:41 +02:00
ThomasV
a141233c28
lightning: add payment methods to lnworker
2018-06-26 19:31:41 +02:00
ThomasV
7a0ae08498
lightning: move lnworker code to its own module
2018-06-26 19:31:41 +02:00
ThomasV
50758a8e3f
update lnbase after crypto refactoring
2018-06-26 19:31:41 +02:00
Janus
18b335cf01
lnbase: remove lnbase stub
2018-06-26 19:31:41 +02:00