Rusty Russell
45e6080764
channel: import upgrade spec.
...
See https://github.com/lightningnetwork/lightning-rfc/pull/868
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2021-06-04 16:13:08 +09:30
Rusty Russell
325d33a902
common/features: helper to pretty-print feature bits.
...
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2021-06-04 16:13:08 +09:30
Rusty Russell
2ffd344299
channeld: tweak function to allow testing for pending *uncommitted* changes.
...
For quiescence, we can't have sent any updates at all.
But for upgrades on reconnection, we may have already added
uncommitted HTLCs for retransmission, but they don't count towards
"are we quiesced" since they're not sent yet.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2021-06-04 16:13:08 +09:30
Rusty Russell
5473d66993
onchaind: limp along if we cheat.
...
We don't handle our own cheat txs: rather than crash, we should just
log broken and limp along.
This also makes our upcoming penalty test easier: we don't have to
spin up a new node.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2021-06-04 16:13:08 +09:30
Rusty Russell
77ed0c280b
onchaind: don't hand redundant commit_num to handle_unknown_commitment.
...
It's a global.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2021-06-04 16:13:08 +09:30
Rusty Russell
7d666e9bfd
onchaind: don't rely on knowing option_static_remotekey for unknown commitments.
...
Just always handle both cases.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2021-06-04 16:13:08 +09:30
Rusty Russell
2fea448498
gen/impl_template: fix generation of singleton varsize elements.
...
And as Lisa requested, add testcases.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2021-06-04 16:13:08 +09:30
fiatjaf
28953256d0
stop requiring channel and direction on sendonion
since they're not used.
...
Changelog-Changed: `sendonion` no longer requires the gratuitous `direction` and `channel` fields in the `firsthop` parameter.
2021-06-04 10:48:10 +09:30
openoms
fab1ed6fca
hsm_encryption.c: fix source include order
2021-06-03 20:10:07 +02:00
openoms
b821de13eb
hsm_encryption.c: remove whitespace from line end
2021-06-03 20:10:07 +02:00
openoms
c2e22344f7
lightningd: remove duplicate temp term creation
2021-06-03 20:10:07 +02:00
openoms
b72c05fbda
hsm_encryption: read from STDIN if not in a TTY
...
Changelog-Added: hsmtool: allow piped passwords
2021-06-03 20:10:07 +02:00
Christian Decker
5e1fadf799
pay: Skip the presplitter mod if it'd exhaust our HTLC budget
...
Changelog-Fixed: pay: The presplitter mod will no longer exhaust the HTLC budget.
2021-06-03 16:59:53 +09:30
Christian Decker
803c048a1f
pay: Compute the number of HTLCs needed after presplit correctly
...
We were counting the attempts including the root payment, which
resulted in an off-by-one error with the `test_pay_low_max_htlcs`
test. Counting the children of the root payment after the presplitter
had a go is the correct way to do it, since at that time we only have
one level in the tree, no need to recurse and potentially count
ourselves.
2021-06-03 16:59:53 +09:30
Rusty Russell
d4def7e73a
plugin/pay: prevent presplitter from dividing if max already tiny.
...
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2021-06-03 16:59:53 +09:30
Christian Decker
05a3be15a3
pay: Fix use-after-free issue with routehints in shortlived payments
...
This was triggered by having some part being started after the overall
command already gave up, cleaning up the `cmd` context from which the
routehints were allocated. The early exit of the command, as a result
from a terminal state does not guarantee that no later attempt will
try to find a route, especially if the attempt was started before we
knew that it is doomed.
2021-06-03 16:59:53 +09:30
Rusty Russell
e619bf00fb
pytest: show problem with pay when not enough HTLCs available.
...
As you can see, I did a lot of debugging before realizing that the
actual problem is in the pay plugin :(
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2021-06-03 16:59:53 +09:30
Rusty Russell
bf0320a53e
openingd/dualopend: remove send_msg functionality.
...
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2021-06-03 16:16:34 +09:30
Rusty Russell
e2f225e4cd
lightningd: use connectd to send the final error message, not openingd/dualopend
...
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2021-06-03 16:16:34 +09:30
Rusty Russell
7cffea10ce
connectd: new command to make us send message and close.
...
Currently we abuse openingd and dualopend to do this, but connectd already
has the ability to talk to peers, so it's more efficient.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2021-06-03 16:16:34 +09:30
fiatjaf
e424180058
remove checking for unused "direction" property in sendpay.
2021-06-03 13:25:59 +09:30
niftynei
cead5e16c0
openingd: return more informative error message for v2 opens
...
Fixes #4562
Reported-By: William Casarin @jb55
New error message:
zircon:lightning (nifty/fix-4562)$ l1-cli fundchannel_start 03fce775508719e4064b7f19d4e884ddaf51db23bbfc560286ce872f9ed106fee0 10000 253perkw
{
"code": 312,
"message": "Peer negotiated `option_dual_fund`, must use `openchannel_init` not `fundchannel_start`."
}
2021-06-03 11:30:16 +09:30
niftynei
e95fc74884
tests: cleanup any unfinished/hanging channel opens
...
Otherwise it hangs on cleanup, as l2 is waiting for l1 to respond (and
it's not going to), so the memleak call hangs.
2021-06-03 11:30:05 +09:30
Antoine Poinsot
b5aaee6679
Revert "pytest: Skip hsm encryption test if we don't have a TTY"
...
This reverts commit 2b12cac31e
. There is
no need to skip the test in this case, and it seems to simply be an artifact
of CI-debugging hell :)
Changelog-None
2021-06-03 11:27:16 +09:30
niftynei
5d69964dde
reqs: Remove wallycore, no longer needed for CI tests
...
With the migration from a python plugin to the `funder` plugin, we
removed our dependency on wallycore python libs
2021-06-03 11:24:33 +09:30
niftynei
3c4c8d4fa0
libwally: update to release_0.8.3
...
Remove hacks to get around empty PSBT deserialization bug
2021-06-03 11:24:33 +09:30
Rusty Russell
03cfe0b468
EXPERIMENTAL: dev-quiesce to initiate (and test) quiescence.
...
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2021-06-01 12:08:51 -05:00
Rusty Russell
e29c9c2fc0
EXPERIMENTAL: handle receiving quiescence request.
...
Changelog-EXPERIMENTAL: Protocol: we support the quiescence protocol from https://github.com/lightningnetwork/lightning-rfc/pull/869
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2021-06-01 12:08:51 -05:00
Rusty Russell
40e217872a
channeld: implement pending_updates()
...
Says if we have started an update which is still pending somewhere.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2021-06-01 12:08:51 -05:00
Rusty Russell
f7adbd5d58
EXPERIMENTAL: import spec for quiescence.
...
Imported from commit b96218b06b68cf349457b282f05d48ebd89c7273
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2021-06-01 12:08:51 -05:00
Rusty Russell
0b01a8c76f
doc: document ordering of listpays/listsendpays.
...
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2021-06-01 11:14:38 -05:00
Rusty Russell
a794e87edd
pytest: test pay ordering.
...
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2021-06-01 11:14:38 -05:00
Nalin Bhardwaj
23fada090c
plugins/pay: sort output payments in listpays
...
Changelog-Changed: `listpays` output is now ordered by the `created_at` timestamp.
2021-06-01 11:14:38 -05:00
Nalin Bhardwaj
a88a6e604c
wallet: sort listsendpays by ID
...
Changelog-Changed: JSON: `listsendpays` output is now ordered by `id`.
2021-06-01 11:14:38 -05:00
Vincenzo Palazzo
0ed7c0d083
Suggested code cleanup by TODO comment
...
This commit introduces the code cleanup suggested by the TODO comment in the code.
Basically, it moves the code from the if-else statement to a switch statement without the default case. I used the basic idea of the code used in PR #4507 .
Changelog-Changed: None.
Signed-off-by: Vincenzo Palazzo <vincenzopalazzodev@gmail.com>
2021-05-31 11:52:07 +09:30
Christian Decker
90ced7ecde
libhsmd: Do not use the message as the peer ID...
2021-05-30 19:49:22 +09:30
Christian Decker
e27ce7d5b6
libhsmd: Add a simple tx signature test
2021-05-30 19:49:22 +09:30
Christian Decker
c6a3d30bec
libhsmd: Always use gcc to configure and compile
2021-05-30 19:49:22 +09:30
Christian Decker
431683293f
libhsmd: Correctly wrap with tmpctx
management in libhsmd-python
2021-05-30 19:49:22 +09:30
Nalin Bhardwaj
57935b20d6
lightningd: check closing tx signature
...
Changelog-None
2021-05-30 09:49:44 +09:30
Rusty Russell
a027b3a80c
plugins/test/Makefile: fix typo causing build race.
...
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2021-05-27 20:28:49 +09:30
Rusty Russell
ec83d7a8a5
doc/schemas: disableoffer, disconnect, feerates, fetchinvoice, fundchannel, fundchannel_cancel, fundchannel_complete, fundchannel_start, fundpsbt, getinfo, getlog, getroute.
...
We also add a test for getlog, since it was never called by the
testsuite.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2021-05-27 20:28:49 +09:30
Rusty Russell
fbc2672074
doc/schemas: delexpiredinvoice, delinvoice, delpay.
...
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2021-05-27 20:28:49 +09:30
Rusty Russell
d1b42cccd1
doc/schemas: decode, decodepay
...
One of the more complex ones.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2021-05-27 20:28:49 +09:30
Rusty Russell
4b46190cc4
doc/schemas: schema for connect.
...
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2021-05-27 20:28:49 +09:30
Rusty Russell
5d7203ed6b
doc/schemas: create close schema.
...
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2021-05-27 20:28:49 +09:30
Rusty Russell
0b48dd79ac
doc/schemas: add schema for autoclean.
...
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2021-05-27 20:28:49 +09:30
Rusty Russell
3bc5d47aa2
doc/schemas: add some simple schemas and generate manpages from them
...
addgossip, check, createinvoice, createonion.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2021-05-27 20:28:49 +09:30
Rusty Russell
fdb4953fa9
doc/schemas: generate manpage section from schema.
...
We start with the listpays manpage. Which is now complete!
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2021-05-27 20:28:49 +09:30
Rusty Russell
2c9eaed294
tools/fromschema.py: tool to replace start/end markers in markdown with schema.
...
It can also be run standalone for debugging.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2021-05-27 20:28:49 +09:30