Janus
f618bb4a67
lnhtlc: handle settles like adds (asymmetrical across ctns)
2019-08-20 09:03:11 +02:00
Janus
e56e849505
lnchan refactor
...
- replace undoing logic with new HTLCManager class
- separate SENT/RECEIVED
- move UpdateAddHtlc to lnutil
2019-08-20 09:03:11 +02:00
Janus
1763d02b05
rename lnhtlc->lnchan, HTLCStateMachine->Channel
2019-08-20 09:03:10 +02:00
Janus
b26dc66567
lnhtlc: only store feerate once, don't store heights since we do not roll back
2019-08-20 09:03:10 +02:00
Janus
e8471e483b
lnhtlc: merge config and state, remove unnecessary properties
2019-08-20 09:03:10 +02:00
Janus
1d4c113a35
lnhtlc: remove lookup_htlc, use heterogeneously typed lists
2019-08-20 09:03:10 +02:00
Janus
699368b0b7
lnhtlc: save settled htlc amounts separately
2019-08-20 09:03:10 +02:00
SomberNight
029ec5a5ab
make our channels private, and put routing hints in invoices we create
2019-08-20 09:03:10 +02:00
ThomasV
242ab5ae56
lightning: fix tests
2019-08-20 09:03:10 +02:00
ThomasV
6e5b36e661
lnwatcher simplification: remove ctn tests and pubkeys
2019-08-20 09:03:10 +02:00
ThomasV
11c3ca281c
create sweep transaction outside of lnwatcher
2019-08-20 09:03:10 +02:00
Janus
c5b7deac6b
lnhtlc: don't save FeeUpdates to disk, only keep FeeUpdate in memory while in progress
2019-08-20 09:03:10 +02:00
Janus
1a7b06b690
lnhtlc: multiply weight by feerate before rounding
...
This resolves the error formerly manifested as:
Traceback (most recent call last):
File "/home/janus/Skrivebord/lightning-rfc/tools/electrum/packages/jsonrpclib/SimpleJSONRPCServer.py", line 376, in _dispatch
return func(*params)
File "/home/janus/Skrivebord/lightning-rfc/tools/electrum/electrum/daemon.py", line 292, in run_cmdline
result = func(*args, **kwargs)
File "/home/janus/Skrivebord/lightning-rfc/tools/electrum/electrum/commands.py", line 87, in func_wrapper
return func(*args, **kwargs)
File "/home/janus/Skrivebord/lightning-rfc/tools/electrum/electrum/commands.py", line 697, in lnpay
return f.result()
File "/usr/lib/python3.6/concurrent/futures/_base.py", line 432, in result
return self.__get_result()
File "/usr/lib/python3.6/concurrent/futures/_base.py", line 384, in __get_result
raise self._exception
File "/home/janus/Skrivebord/lightning-rfc/tools/electrum/electrum/lnbase.py", line 887, in pay
sig_64, htlc_sigs = chan.sign_next_commitment()
File "/home/janus/Skrivebord/lightning-rfc/tools/electrum/electrum/lnhtlc.py", line 281, in sign_next_commitment
htlc_tx = make_htlc_tx_with_open_channel(self, *args)
File "/home/janus/Skrivebord/lightning-rfc/tools/electrum/electrum/lnutil.py", line 262, in make_htlc_tx_with_open_channel
commit.txid(), commit.htlc_output_indices[original_htlc_output_index],
KeyError: 0
2019-08-20 09:03:10 +02:00
Janus
a071aafcc7
lnhtlc: generalize balance/pending_commitment code over htlc direction
2019-08-20 09:03:10 +02:00
Janus
e5f42a3973
lnhtlc: save settled or failed htlcs
2019-08-20 09:03:10 +02:00
Janus
5753cf9e05
ln fees: avoid resending same fee update before it has been committed to, docs
2019-08-20 09:03:10 +02:00
Janus
d07adda3c0
lnhtlc: decrease next_htlc_id counter when removing htlcs when saving
2019-08-20 09:03:10 +02:00
ThomasV
1127d3f467
simplify syntax
2019-08-20 09:03:10 +02:00
Janus
878dc17acb
ln: don't save htlcs that are not locked in
2019-08-20 09:03:10 +02:00
Janus
2c6925e526
lnhtlc: bip69 ordering of htlc signatues we generate
2019-08-20 09:03:10 +02:00
Janus
e23e0d6c6e
ln: avoid duplicated htlc filter code, support multiple htlcs better
2019-08-20 09:03:10 +02:00
Janus
50b3bc939c
avoid reading from queues concurrently in pay()
2019-08-20 09:03:10 +02:00
Janus
a04e37d050
keep htlc history in case a htlc fails
2019-08-20 09:03:10 +02:00
Janus
cc7ef49c43
lnhtlc: also check received htlcs when validating commitment sigs
2019-08-20 09:03:10 +02:00
Janus
224226f427
ln: cooperative close with remote peer initiating
2019-08-20 09:03:10 +02:00
Janus
d5d9270d0c
lnhtlc: save logs and feeupdates
2019-08-20 09:03:10 +02:00
Janus
eca5545004
lnhtlc: don't throw away fee updates or htlcs
...
also add inject_fees debug command
2019-08-20 09:03:10 +02:00
Janus
02eca03486
lnhtlc: cleanup and save settled htlcs
2019-08-20 09:03:10 +02:00
Janus
6f5209ef85
lnhtlc: test that sent amount is received
2019-08-20 09:03:10 +02:00
Janus
261fefb6f3
lnwatcher rebased
2019-08-20 09:03:10 +02:00
SomberNight
b85aea1541
qt: pay_lightning_invoice - attempt paying multiple times in case of failure
2019-08-20 09:03:10 +02:00
SomberNight
15a6a83107
ln onchain fees: use 2 block ETAs with 150 s/b fallback
2019-08-20 09:03:10 +02:00
SomberNight
f3e5ba6ac1
more reliable peer and channel re-establishing
2019-08-20 09:03:10 +02:00
Janus
96a16adf30
ln: fix forwarded payment fees by removing separation between fee and amount in htlc objects
2019-08-20 09:03:10 +02:00
Janus
a841fa3602
ln: save htlc signatures
2019-08-20 09:03:10 +02:00
Janus
7f0568d83a
special case receiving payment after fee update, fee update injector
2019-08-20 09:03:10 +02:00
Janus
9853cc6f31
ln: do not use mSAT accuracy for commitment fees
2019-08-20 09:03:10 +02:00
Janus
66e7b4d250
ln: fundee must commit to fee first
2019-08-20 09:03:10 +02:00
Janus
74b180a4e6
use correct dust limit for their to_local/to_remote outputs
2019-08-20 09:03:10 +02:00
Janus
478e484c54
ln: initialize genesis with object, fix method name typo, use depth_target_to_fee
2019-08-20 09:03:10 +02:00
ThomasV
bc28edf178
encapsulate funding_address_for_channel
2019-08-20 09:03:10 +02:00
Janus
d740475e7a
move channel_state into HTLCStateMachine
2019-08-20 09:03:10 +02:00
Janus
35adc3231b
lightning: fixup after rebasing on restructured master
2019-08-20 09:03:10 +02:00