Allow holder commitment and HTLC signature requests to fail
authorWilmer Paulino <wilmer@wilmerpaulino.com>
Tue, 30 Jan 2024 22:45:46 +0000 (14:45 -0800)
committerWilmer Paulino <wilmer@wilmerpaulino.com>
Wed, 7 Feb 2024 23:44:23 +0000 (15:44 -0800)
commite38dccaef49b4fd4c1858bc77ccb5d925f02561d
tree5cc27d31d1ffb9caa4532e110ec25a3f5ad25860
parent043ab75bb4bd32205bbf890837f661dd3a547cb5
Allow holder commitment and HTLC signature requests to fail

As part of the ongoing async signer work, our holder signatures must
also be capable of being obtained asynchronously. We expose a new
`ChannelMonitor::signer_unblocked` method to retry pending onchain
claims by re-signing and rebroadcasting transactions. Unfortunately, we
cannot retry said claims without them being registered first, so if
we're not able to obtain the signature synchronously, we must return the
transaction as unsigned and ensure it is not broadcast.
lightning/src/chain/chainmonitor.rs
lightning/src/chain/channelmonitor.rs
lightning/src/chain/onchaintx.rs
lightning/src/chain/package.rs
lightning/src/chain/transaction.rs
lightning/src/ln/async_signer_tests.rs
lightning/src/ln/channel.rs
lightning/src/ln/functional_test_utils.rs
lightning/src/sign/ecdsa.rs
lightning/src/util/test_channel_signer.rs
lightning/src/util/test_utils.rs