vss96
2f01d68148
Sanity check for ChannelManager and KeysInterface
...
Fix build errors
Create script using p2wsh for comparison
Using p2wpkh for generating the payment script
spendable_outputs sanity check
Return err in spendable_outputs
Doc updates in keysinterface
2022-01-22 10:12:42 +05:30
Matt Corallo
34cdca91ba
Merge pull request #1238 from TheBlueMatt/2022-01-lockorder-checks
...
Fix and test lockorder
2022-01-14 16:59:42 +00:00
Matt Corallo
8f007c7dbb
Check lockorders in tests with a trivial lockorder tracker
2022-01-14 15:35:58 +00:00
Matt Corallo
89cbb6d74b
Merge pull request #1229 from lightning-signer/2021-12-htlc-anchor-sighashtype
...
anchors: Fix SigHashType and weight calculations for anchors
2022-01-14 04:10:14 +00:00
Ken Sedgwick
9c2270c722
Fixed comment on weight_received_htlc
2022-01-13 15:01:32 -08:00
Ken Sedgwick
bee00124d2
Set opt_anchors for calls to CommitmentTransaction::new_with_auxiliary_htlc_data
2022-01-13 15:01:31 -08:00
Ken Sedgwick
299b6657d5
Add anchor tests to outbound_commitment_test
2022-01-13 15:01:30 -08:00
Ken Sedgwick
35a6e00b03
Debit funder's output to cover anchors
2022-01-13 15:01:29 -08:00
Ken Sedgwick
557a83096f
Convert HTLC_{SUCCESS,TIMEOUT}_TX_WEIGHT to anchor-aware functions
2022-01-13 15:01:21 -08:00
Ken Sedgwick
9566795c97
Convert COMMITMENT_TX_BASE_WEIGHT to anchor-aware function
2022-01-13 14:59:28 -08:00
Ken Sedgwick
c47d014a8e
Add unit test coverage for package::weight_{offered,received}_htlc
2022-01-13 14:44:05 -08:00
Ken Sedgwick
37001b8b0e
make WEIGHT{_REVOKED,}_{OFFERED,RECEIVED}_HTLC functions with opt_anchors parameter
2022-01-13 14:37:18 -08:00
Ken Sedgwick
3a163d2c61
Isolated channelmonitor weight unit tests and added anchor loops
2022-01-13 14:37:17 -08:00
Ken Sedgwick
8f09e5a7ff
Set the SigHashType of remote htlc signatures w/ anchors to SinglePlusAnyoneCanPay
2022-01-13 14:37:03 -08:00
Matt Corallo
feb203d3b1
Fix some (non-bug) lock-order-inversions in tests
2022-01-13 01:51:51 +00:00
Matt Corallo
6ccd07bc2d
Make lockorder consistent in channelmanager
...
This resolves a lockorder inversion in
`ChannelManager::finalize_claims` where `pending_outbound_payments`
is locked after `pending_events`, opposite of, for example, the
lockorder in `ChannelManager::fail_htlc_backwards_internal` where
`pending_outbound_payments` is locked at the top of the
`HTLCSource::OutboundRoute` handling and then `pending_events` is
locked at the end.
2022-01-12 21:17:49 +00:00
Matt Corallo
a82067d359
Merge pull request #1013 from TheBlueMatt/2021-07-warning-msgs
2022-01-11 22:52:44 +00:00
Matt Corallo
d786bfaef2
Rely on Error/Warning message data lengths being correct
...
In https://github.com/lightning/bolts/pull/950 , the (somewhat
strange) requirement that error messages be handled even if the
length field is set larger than the size of the package was
removed. Here we change the code to drop the special handling for
this, opting to just fail to read the message if the length is
incorrect.
2022-01-11 20:25:24 +00:00
Matt Corallo
2d7b06e619
Send warning
instead of error
when we incounter bogus gossip
2022-01-11 19:48:20 +00:00
Matt Corallo
26fe0f753d
Convert shutdown
invalid script checks to warning messages
...
As required by the warning messages PR, we should simply warn our
counterparty in this case and let them try again, continuing to try
to use the channel until they tell us otherwise.
2022-01-11 19:48:20 +00:00
Matt Corallo
e137cfb3c4
Send warning messages when appropriate in gossip handling pipeline
2022-01-11 19:48:20 +00:00
Matt Corallo
1b3249a192
Handle sending and receiving warning messages
2022-01-11 19:48:20 +00:00
Matt Corallo
f676f5585f
Add a new WarningMessage
message to send and receive warnings
2022-01-11 19:48:20 +00:00
Matt Corallo
b62b244c3c
Merge pull request #1223 from lightning-signer/2021-12-invoice-nostd
...
Adapt lightning-invoice to no_std
2022-01-06 19:25:36 +00:00
Devrandom
01915810d4
Adapt lightning-invoice to no_std
2022-01-05 23:18:03 +01:00
Matt Corallo
94c41d8c0a
Merge pull request #1226 from TheBlueMatt/2022-01-bindings-no-std
...
Support building `cfg=c_bindings` with `no-std`
2022-01-05 21:01:06 +00:00
Matt Corallo
ffbef9fec7
Support building cfg=c_bindings
with no-std
...
This will be needed for JavaScript bindings eventually.
2022-01-05 07:24:46 +00:00
Matt Corallo
3ca63426f9
Merge pull request #1220 from TheBlueMatt/2021-12-stale-update-gossip-log
...
Log gossip rejections due to stale channel_updates at GOSSIP level
2022-01-03 19:54:20 +00:00
hackerrdave
d46c2a20e1
update repo name to use lightningdevkit
2021-12-26 22:53:16 -05:00
Matt Corallo
d5a1435905
Log gossip rejections due to stale channel_updates at GOSSIP level
...
This further reduces noise at the TRACE level during initial gossip
sync.
2021-12-19 20:13:38 +00:00
Matt Corallo
d26469a77a
Add a C-not exported tag to NetGraphMsgHandler.network_graph
2021-12-18 20:20:23 +00:00
Matt Corallo
ae4f6198db
Add a constructor to MultiThreadedLockableScore
...
...as otherwise the struct is rather useless.
2021-12-18 20:20:23 +00:00
Matt Corallo
2a8a396f1e
Merge pull request #1217 from TheBlueMatt/2021-12-0.0.104
...
Cut 0.0.104
2021-12-17 23:30:54 +00:00
Matt Corallo
ec86e2a1a7
Bump versions to 0.0.104/invoice 0.12
2021-12-17 21:34:19 +00:00
Matt Corallo
a3330acecf
Remove trailing whitespace in the FeeEstimator interface
2021-12-17 04:35:58 +00:00
Valentine Wallace
41cfd833f1
inbound_payment: Add utility to get payment preimage given hash/secret
...
User-requested feature
2021-12-16 18:11:14 -08:00
Valentine Wallace
d734ad814e
inbound_payment: DRY verify method for use in getting preimage
...
in the next commit(s)
2021-12-16 16:29:11 -08:00
Valentine Wallace
d20239bbeb
create_inbound_payment: warn about dup hashes
...
Leftover feedback from #1177
2021-12-16 16:27:13 -08:00
Valentine Wallace
6e0820ca19
Salt inbound payment ExpandedKey
...
Leftover feedback from #1177
2021-12-16 16:24:24 -08:00
Valentine Wallace
8464875555
Drop need to store pending inbound payments
...
and replace payment_secret with encrypted metadata
See docs on `inbound_payment::verify` for details
Also add min_value checks to all create_inbound_payment* methods
2021-12-16 15:32:21 -08:00
Valentine Wallace
1d516a6fc5
Add get_single_block to chacha20 module
...
In the next commit, we'll want to get a single block from a chacha stream that
takes a 16-byte nonce.
2021-12-16 15:30:52 -08:00
Valentine Wallace
063b7583c1
Macro-ize checking that the total value of an MPP's parts is sane
...
This DRY-ed code will be used in upcoming commits when we stop storing inbound
payment data
2021-12-16 15:30:52 -08:00
Valentine Wallace
6dd1ec1fed
Add get_inbound_payment_key_material to KeysInterface
...
This will allow us to retrieve key material for encrypting/decrypting inbound
payment info, in upcoming commits
2021-12-16 15:30:52 -08:00
Matt Corallo
73e8dc41a6
Automatically prune NetworkGraph of stale channels hourly in BP
2021-12-16 18:33:24 +00:00
Matt Corallo
cd43ff4a5e
Reject channel_update messages with timestamps too old or new
...
Because we time out channel info that is older than two weeks now,
we should also reject new channel info that is older than two
weeks, in addition to rejecting future channel info.
2021-12-16 18:33:24 +00:00
Matt Corallo
4677e14c00
Add a method to prune stale channels from NetworkGraph
...
We define "stale" as "haven't heard an updated channel_update in
two weeks", as described in BOLT 7.
We also filter out stale channels at write-time for `std` users, as
we can look up the current time.
2021-12-16 18:33:24 +00:00
Matt Corallo
c575429639
Drop allow_wallclock_use
feature in favor of simply using std
...
Fixes #1147 .
2021-12-16 18:33:24 +00:00
Matt Corallo
11d644824e
DRY up network_graph tests substantially with message creation fns
2021-12-16 18:33:24 +00:00
Matt Corallo
064d709910
Merge pull request #1148 from dunxen/2021-11-new-onion-errors
...
Add mpp_timeout and invalid_onion_payload descriptions
2021-12-15 23:32:30 +00:00
Conor Okus
88a86d126f
Merge pull request #1211 from ConorOkus/2021-11-add-max-conversion
...
Update docs to add max return value to conversion list
2021-12-15 16:15:21 +00:00