Rusty Russell
68a6084bab
lightningd: update to BOLT 7d3ef5a6b20eb84982ea2bfc029497082adf20d8 "Allow unset onion_hash
in invalid_onion_blinding
( #1093 )"
...
Explicitly allow all-zero in the onion_hash: we didn't do anything except log if it was unexpected anyway.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2023-09-20 13:56:46 +09:30
Rusty Russell
6a2632d50b
doc: update to BOLT 7f53a3e46ed59f19463447d5fa63b3e484c708a5 "BOLT 8: make it clear that there are *two* chaining keys."
...
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2023-09-20 13:56:46 +09:30
Rusty Russell
4413bfa6be
wire: update to BOLT aad959a297ff66946effb165518143be15777dd6 "tools: remove option handling now last optional field was removed."
...
No effect on us, we didn't use this field anyway.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2023-09-20 13:56:46 +09:30
Rusty Russell
df80a2c056
doc: update to BOLT 3747ba83022cd385093df2696ed342f1e41e31b3 "Remove requirements to disconnect on warnings"
...
Now we don't do that anymore (at least, for sending) we can update bolt quotes to match.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2023-09-20 13:56:46 +09:30
Rusty Russell
468d3fd387
connectd: also don't disconnect on "all-channel" warnings.
...
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2023-09-20 13:56:46 +09:30
Rusty Russell
48522f3e9e
common: don't hang up when we receive a warning.
...
We were allowed to, but the spec removed that. So we handle warnings
differently from errors now.
This also means the LND "internal error" workaround is done in
lightningd (we still disconnect, but we don't want to close channel).
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Changelog-Changed: Protocol: we no longer disconnect every time we receive a warning message.
2023-09-20 13:56:46 +09:30
Rusty Russell
1bb83a1ae6
common: don't send channel_id on peer error.
...
It's unused: they know what channel it is.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2023-09-20 13:56:46 +09:30
Rusty Russell
aca2aa9ae6
common: remove channel_id check.
...
connectd demuxes for us, so this can never trigger.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2023-09-20 13:56:46 +09:30
Rusty Russell
821d5f48ea
doc: update to BOLT 50b2df24a27879e8329712c275db78876fd022fe "Update onion errors since we allow overpaying or under-CLTVing"
...
We already do this behaviour, we just didn't adjust comments.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2023-09-20 13:56:46 +09:30
Rusty Russell
0d70daa5ee
doc: update to BOLT 29c14c6e12cbdf33f6b724094c81658a614d2e02 "fix typos"
...
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2023-09-20 13:56:46 +09:30
Rusty Russell
cfca4e010f
common: rename tlv_payload's "blinding_point" to "current_blinding_point" as per spec.
...
Simple rename in a few internal places.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2023-09-20 13:56:46 +09:30
Rusty Russell
cc2c720dd9
wire: fix up messy patches (make extract-onion-csv)
...
These patches are no longer necessary now blinded payments were
merged into the spec.
However, the spec did rename "blinding_point" inside `payload` to
"current_blinding_point" so we temporarily add a patch to change it back.
You can see wire/onion_wire.csv is reordered, but unchanged.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2023-09-20 13:56:46 +09:30
Rusty Russell
232fba878e
wire: fix up messy patches (make extract-peer-csv)
...
They didn't actually apply properly!
I regenerated the dual-funding CSV from the latest commit
(091397fc0798c4b2bdb36dbaa9f5b4b1d4a463e1) and made it a single patch.
I tried doing the same for splicing, but the implementation has drifted
far from the spec, so I simply opted for a patch which didn't change anything.
You can see the resulting "wire/peer_wire.csv" is the same, except fields
are now in a less-random order!
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2023-09-20 13:56:46 +09:30
Chase Sillevis
9c95761740
docker: make available bitcoind binary
2023-09-19 14:34:25 +02:00
ShahanaFarooqui
1a18f610b2
docs: Update documents with rest-csp
option
...
Changelog-Added: New configurable Content-Security-Policy (CSP) header for clnrest
2023-09-19 11:40:15 +09:30
ShahanaFarooqui
3108ff93b8
plugins/clnrest: Update content security policy for server
2023-09-19 11:40:15 +09:30
ShahanaFarooqui
51578e1f77
plugins/clnrest: Add rest-csp
option for config
2023-09-19 11:40:15 +09:30
ShahanaFarooqui
eca3a33e69
plugins/clnrest: Update Websocket server to dynamically add CORS settings
...
Changelog-Added: New configurable Cross-Origin-Resource-Sharing(CSP) header for clnrest
2023-09-19 11:40:15 +09:30
ShahanaFarooqui
f0edc878e6
docs: Update documents with rest-cors-origins
option
2023-09-19 11:40:15 +09:30
ShahanaFarooqui
b0430cc897
plugins/clnrest: Update App server to dynamically add CORS settings
2023-09-19 11:40:15 +09:30
ShahanaFarooqui
632e7abd05
plugins/clnrest: Add rest-cors-origins
option for config
2023-09-19 11:40:15 +09:30
ShahanaFarooqui
224a5dcbcf
plugins/clnrest: Add CORS library
2023-09-19 11:40:15 +09:30
ShahanaFarooqui
450bf2be2b
plugins/clnrest: Updated websocket client examples
...
- Updated javascript and python client examples with rune auth
- Added new html (browser based) client example with rune auth
2023-09-19 11:40:15 +09:30
ShahanaFarooqui
6aa697ea3d
plugins/clnrest: Rune authentication for websocket server
2023-09-19 11:40:15 +09:30
ShahanaFarooqui
9147996372
plugins/clnrest: Generate all three certs if missing
...
Generate client, server and CA certs for https and trusted CA update
2023-09-19 11:40:15 +09:30
Mariusz Kogen
0952a09c2d
Remove GMP from arm64v8 build
2023-09-19 10:26:36 +09:30
Mariusz Kogen
a0c86b77c7
Remove deprecated GMP dependency
2023-09-19 10:26:36 +09:30
Adi Shankara
9357a32890
update the app dev interface img
2023-09-19 10:25:45 +09:30
Adi Shankara
43c39aa2c9
fix the rest api reference link
2023-09-19 10:25:45 +09:30
Adi Shankara
0cf2c29b5c
fix paths for doc files and make them public
2023-09-19 10:25:45 +09:30
Rusty Russell
8be888e63f
pytest: fix renepay test_shadow flake.
...
Sometimes we don't shadow because it would break our budget:
```
def test_shadow(node_factory):
'''Make sure we shadow correctly.'''
l1, l2, l3 = node_factory.line_graph(3,
wait_for_announce=True,
opts=[{},
{'fee-base': 2000, 'fee-per-satoshi': 20, 'cltv-delta': 20},
{'fee-base': 3000, 'fee-per-satoshi': 30, 'cltv-delta': 30}])
# Shadow doesn't always happen (50% chance)!
for i in range(20):
inv = l2.rpc.invoice(123000, f'test_renepay{i}', 'description')['bolt11']
details = l1.rpc.call('renepay', {'invstring': inv})
assert details['status'] == 'complete'
assert details['amount_msat'] == Millisatoshi(123000)
assert details['destination'] == l2.info['id']
> line = l1.daemon.wait_for_log("No MPP, so added .*msat shadow fee")
tests/test_renepay.py:51:
```
```
lightningd-1 2023-09-12T05:08:39.699Z UNUSUAL plugin-cln-renepay: No shadow fee for flow 0/1: fee would add 5005msat to 123000msat, exceeding budget 128000msat.
```
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2023-09-19 10:20:24 +09:30
Matt Morehouse
8596208f52
fuzz: initial wire message seeds
...
Seeds for every peer wire message, generated from fuzzing with
-max_len=65533 and minimizing the resulting corpora.
2023-09-18 13:58:45 +09:30
Matt Morehouse
42fb17fe58
fuzz: target for your_peer_storage
...
Fuzz the decoding and encoding of your_peer_storage.
2023-09-18 13:58:45 +09:30
Matt Morehouse
6a975f3c1d
fuzz: target for update_blockheight
...
Fuzz the decoding and encoding of update_blockheight.
2023-09-18 13:58:45 +09:30
Matt Morehouse
eec261101f
fuzz: target for tx_signatures
...
Fuzz the decoding and encoding of tx_signatures.
2023-09-18 13:58:45 +09:30
Matt Morehouse
6b5df73cf4
fuzz: target for tx_remove_output
...
Fuzz the decoding and encoding of tx_remove_output.
2023-09-18 13:58:45 +09:30
Matt Morehouse
f3db6642a1
fuzz: target for tx_remove_input
...
Fuzz the decoding and encoding of tx_remove_input.
2023-09-18 13:58:45 +09:30
Matt Morehouse
7ddad8b7df
fuzz: target for tx_init_rbf
...
Fuzz the decoding and encoding of tx_init_rbf.
2023-09-18 13:58:45 +09:30
Matt Morehouse
1dda44c351
fuzz: target for tx_complete
...
Fuzz the decoding and encoding of tx_complete.
2023-09-18 13:58:45 +09:30
Matt Morehouse
c0e8ccea49
fuzz: target for tx_add_output
...
Fuzz the decoding and encoding of tx_add_output.
2023-09-18 13:58:45 +09:30
Matt Morehouse
dac211c73e
fuzz: target for tx_add_input
...
Fuzz the decoding and encoding of tx_add_input.
2023-09-18 13:58:45 +09:30
Matt Morehouse
82c719142e
fuzz: target for tx_ack_rbf
...
Fuzz the decoding and encoding of tx_ack_rbf.
2023-09-18 13:58:45 +09:30
Matt Morehouse
9b7ceb7307
fuzz: target for tx_abort
...
Fuzz the decoding and encoding of tx_abort.
2023-09-18 13:58:45 +09:30
Matt Morehouse
4a09ef122e
fuzz: target for stfu
...
Fuzz the decoding and encoding of stfu.
2023-09-18 13:58:45 +09:30
Matt Morehouse
34ca0f6eac
fuzz: target for splice_locked
...
Fuzz the decoding and encoding of splice_locked.
2023-09-18 13:58:45 +09:30
Matt Morehouse
ae56dcf882
fuzz: target for splice_ack
...
Fuzz the decoding and encoding of splice_ack.
2023-09-18 13:58:45 +09:30
Matt Morehouse
ea488f767b
fuzz: target for splice
...
Fuzz the decoding and encoding of splice.
2023-09-18 13:58:45 +09:30
Matt Morehouse
e473bfda16
fuzz: target for peer_storage
...
Fuzz the decoding and encoding of peer_storage.
2023-09-18 13:58:45 +09:30
Matt Morehouse
451edb7c20
fuzz: target for open_channel2
...
Fuzz the decoding and encoding of open_channel2.
2023-09-18 13:58:45 +09:30
Matt Morehouse
76ccdcd5d0
fuzz: target for onion_message
...
Fuzz the decoding and encoding of onion_message.
2023-09-18 13:58:45 +09:30