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
ThomasV
5ecfb42112
lnbase: pass password to mktx
2018-06-26 19:31:41 +02:00
ThomasV
c74ec38f2e
qt: fix password passed to open_channel, cleanup
2018-06-26 19:31:41 +02:00
Janus
c7a0b61368
lnbase: mSAT hygiene, multiple multi-hop payments can be received
2018-06-26 19:31:41 +02:00
Janus
4644c68733
kivy: port lightning ui to lnbase
2018-06-26 19:31:41 +02:00
Janus
c796ef9fcc
lightning: remove hub based approach, port qt gui to lnbase
2018-06-26 19:31:41 +02:00
Janus
91284dba13
lnbase: use small buffer when reading, support new_channel without payment in online test, send channel_reserve_satoshis
2018-06-26 19:30:08 +02:00
Janus
cad74463f2
lnbase: use correct cltv_expiry calculation (use invoice)
2018-06-26 19:30:08 +02:00
Janus
fbeff88515
lnbase: fix multi-hop payments
2018-06-26 19:30:08 +02:00
Janus
e05d37f5c0
lnbase: fix onion-hop payload construction again (cltv currently broken)
2018-06-26 19:30:08 +02:00
Janus
7a2f2ea904
lnbase: fix multi-hop fees, initial handling of received update_add_htlc during payment
2018-06-26 19:30:08 +02:00
Janus
71655fd705
lnbase: calculate cltv_expiry for onion_packet correctly
2018-06-26 19:30:08 +02:00
Janus
9569a46166
lnbase: try multi-hop onion package, type safety
2018-06-26 19:30:08 +02:00
SomberNight
a6317164ca
PathFinder: change path element semantics from "from node, take edge" to "to get to node, use edge"
2018-06-26 19:30:08 +02:00
SomberNight
ac64246086
create route from path, that includes extra info needed for routing
2018-06-26 19:30:08 +02:00
SomberNight
230e112238
bolt-04: decryption of errors
2018-06-26 19:30:08 +02:00
Janus
d043ed9b21
lnbase online test: use random node key when making new channel, save node key, multiple actions per invocation
2018-06-26 19:30:08 +02:00
Janus
57c578b28c
lnbase: fix pay(), save htlc_id's, generate onion packet correctly
2018-06-26 19:30:08 +02:00
Janus
83ace8ada4
lnbase/online_test: save short_channel_id to wallet and build onion packet with it
2018-06-26 19:30:08 +02:00
SomberNight
79b2144672
calc short_channel_id after funding locked
2018-06-26 19:30:08 +02:00
Janus
1fb5561011
lnbase: initial 'payment to remote' attempt
2018-06-26 19:30:08 +02:00
Janus
eb8d1ee9a7
lnbase: formatting, remove imports
2018-06-26 19:30:08 +02:00
Janus
26e821e34e
lnbase: verify commitment tx'es again
2018-06-26 19:30:08 +02:00
Janus
e6c499fef2
lnbase: infinite amount of incoming payments
2018-06-26 19:30:08 +02:00
Janus
d4b549b63f
lnbase: two payments working, temporarily disable sig check
2018-06-26 19:30:08 +02:00
Janus
ef0c840b22
lnbase: store remote revocation store, don't store all remote revocation points, verify ctn numbers in reestablish
2018-06-26 19:30:08 +02:00
Janus
dbb8ff362f
lnbase: add RevocationStore test, remove unnecessary lnd helper functions
2018-06-26 19:30:08 +02:00
Janus
7a55ae19b6
lnbase: compact commitment secret storage
2018-06-26 19:30:08 +02:00
Janus
2cf8b8ae6f
lnbase: no negative commitment number nonsense
2018-06-26 19:30:08 +02:00
Janus
3a7f6b0186
lnbase: move channel commitment number increment to function
2018-06-26 19:30:08 +02:00