mirror of
https://github.com/lightningdevkit/rust-lightning.git
synced 2025-02-24 15:02:20 +01:00
Expose witness_script for StaticPaymentOutputDescriptor
This commit is contained in:
parent
9f3bb7d7a5
commit
f464aa97c3
1 changed files with 16 additions and 0 deletions
|
@ -134,6 +134,22 @@ pub struct StaticPaymentOutputDescriptor {
|
|||
pub channel_transaction_parameters: Option<ChannelTransactionParameters>,
|
||||
}
|
||||
impl StaticPaymentOutputDescriptor {
|
||||
/// Returns the `witness_script` of the spendable output.
|
||||
///
|
||||
/// Note that this will only return `Some` for [`StaticPaymentOutputDescriptor`]s that
|
||||
/// originated from an anchor outputs channel, as they take the form of a P2WSH script.
|
||||
pub fn witness_script(&self) -> Option<Script> {
|
||||
self.channel_transaction_parameters.as_ref()
|
||||
.and_then(|channel_params|
|
||||
if channel_params.channel_type_features.supports_anchors_zero_fee_htlc_tx() {
|
||||
let payment_point = channel_params.holder_pubkeys.payment_point;
|
||||
Some(chan_utils::get_to_countersignatory_with_anchors_redeemscript(&payment_point))
|
||||
} else {
|
||||
None
|
||||
}
|
||||
)
|
||||
}
|
||||
|
||||
/// The maximum length a well-formed witness spending one of these should have.
|
||||
/// Note: If you have the grind_signatures feature enabled, this will be at least 1 byte
|
||||
/// shorter.
|
||||
|
|
Loading…
Add table
Reference in a new issue