@@ -3018,7 +3018,7 @@ impl<Signer: EcdsaChannelSigner> ChannelMonitorImpl<Signer> {
30183018 let commitment_package = PackageTemplate :: build_package (
30193019 self . funding_info . 0 . txid . clone ( ) , self . funding_info . 0 . index as u32 ,
30203020 PackageSolvingData :: HolderFundingOutput ( funding_outp) ,
3021- self . best_block . height , self . best_block . height
3021+ self . best_block . height ,
30223022 ) ;
30233023 let mut claimable_outpoints = vec ! [ commitment_package] ;
30243024 let event = MonitorEvent :: HolderForceClosedWithInfo {
@@ -3041,7 +3041,7 @@ impl<Signer: EcdsaChannelSigner> ChannelMonitorImpl<Signer> {
30413041 // assuming it gets confirmed in the next block. Sadly, we have code which considers
30423042 // "not yet confirmed" things as discardable, so we cannot do that here.
30433043 let ( mut new_outpoints, _) = self . get_broadcasted_holder_claims (
3044- & self . current_holder_commitment_tx , self . best_block . height
3044+ & self . current_holder_commitment_tx , self . best_block . height ,
30453045 ) ;
30463046 let unsigned_commitment_tx = self . onchain_tx_handler . get_unsigned_holder_commitment_tx ( ) ;
30473047 let new_outputs = self . get_broadcasted_holder_watch_outputs (
@@ -3459,7 +3459,11 @@ impl<Signer: EcdsaChannelSigner> ChannelMonitorImpl<Signer> {
34593459 for ( idx, outp) in tx. output . iter ( ) . enumerate ( ) {
34603460 if outp. script_pubkey == revokeable_p2wsh {
34613461 let revk_outp = RevokedOutput :: build ( per_commitment_point, self . counterparty_commitment_params . counterparty_delayed_payment_base_key , self . counterparty_commitment_params . counterparty_htlc_base_key , per_commitment_key, outp. value , self . counterparty_commitment_params . on_counterparty_tx_csv , self . onchain_tx_handler . channel_type_features ( ) . supports_anchors_zero_fee_htlc_tx ( ) ) ;
3462- let justice_package = PackageTemplate :: build_package ( commitment_txid, idx as u32 , PackageSolvingData :: RevokedOutput ( revk_outp) , height + self . counterparty_commitment_params . on_counterparty_tx_csv as u32 , height) ;
3462+ let justice_package = PackageTemplate :: build_package (
3463+ commitment_txid, idx as u32 ,
3464+ PackageSolvingData :: RevokedOutput ( revk_outp) ,
3465+ height + self . counterparty_commitment_params . on_counterparty_tx_csv as u32 ,
3466+ ) ;
34633467 claimable_outpoints. push ( justice_package) ;
34643468 to_counterparty_output_info =
34653469 Some ( ( idx. try_into ( ) . expect ( "Txn can't have more than 2^32 outputs" ) , outp. value ) ) ;
@@ -3476,7 +3480,12 @@ impl<Signer: EcdsaChannelSigner> ChannelMonitorImpl<Signer> {
34763480 return ( claimable_outpoints, to_counterparty_output_info) ;
34773481 }
34783482 let revk_htlc_outp = RevokedHTLCOutput :: build ( per_commitment_point, self . counterparty_commitment_params . counterparty_delayed_payment_base_key , self . counterparty_commitment_params . counterparty_htlc_base_key , per_commitment_key, htlc. amount_msat / 1000 , htlc. clone ( ) , & self . onchain_tx_handler . channel_transaction_parameters . channel_type_features ) ;
3479- let justice_package = PackageTemplate :: build_package ( commitment_txid, transaction_output_index, PackageSolvingData :: RevokedHTLCOutput ( revk_htlc_outp) , htlc. cltv_expiry , height) ;
3483+ let justice_package = PackageTemplate :: build_package (
3484+ commitment_txid,
3485+ transaction_output_index,
3486+ PackageSolvingData :: RevokedHTLCOutput ( revk_htlc_outp) ,
3487+ htlc. cltv_expiry ,
3488+ ) ;
34803489 claimable_outpoints. push ( justice_package) ;
34813490 }
34823491 }
@@ -3598,7 +3607,7 @@ impl<Signer: EcdsaChannelSigner> ChannelMonitorImpl<Signer> {
35983607 self . counterparty_commitment_params . counterparty_htlc_base_key ,
35993608 htlc. clone ( ) , self . onchain_tx_handler . channel_type_features ( ) . clone ( ) ) )
36003609 } ;
3601- let counterparty_package = PackageTemplate :: build_package ( commitment_txid, transaction_output_index, counterparty_htlc_outp, htlc. cltv_expiry , 0 ) ;
3610+ let counterparty_package = PackageTemplate :: build_package ( commitment_txid, transaction_output_index, counterparty_htlc_outp, htlc. cltv_expiry ) ;
36023611 claimable_outpoints. push ( counterparty_package) ;
36033612 }
36043613 }
@@ -3642,7 +3651,7 @@ impl<Signer: EcdsaChannelSigner> ChannelMonitorImpl<Signer> {
36423651 ) ;
36433652 let justice_package = PackageTemplate :: build_package (
36443653 htlc_txid, idx as u32 , PackageSolvingData :: RevokedOutput ( revk_outp) ,
3645- height + self . counterparty_commitment_params . on_counterparty_tx_csv as u32 , height
3654+ height + self . counterparty_commitment_params . on_counterparty_tx_csv as u32 ,
36463655 ) ;
36473656 claimable_outpoints. push ( justice_package) ;
36483657 if outputs_to_watch. is_none ( ) {
@@ -3665,11 +3674,11 @@ impl<Signer: EcdsaChannelSigner> ChannelMonitorImpl<Signer> {
36653674
36663675 for & ( ref htlc, _, _) in holder_tx. htlc_outputs . iter ( ) {
36673676 if let Some ( transaction_output_index) = htlc. transaction_output_index {
3668- let htlc_output = if htlc. offered {
3677+ let ( htlc_output, counterparty_spendable_height ) = if htlc. offered {
36693678 let htlc_output = HolderHTLCOutput :: build_offered (
36703679 htlc. amount_msat , htlc. cltv_expiry , self . onchain_tx_handler . channel_type_features ( ) . clone ( )
36713680 ) ;
3672- htlc_output
3681+ ( htlc_output, conf_height )
36733682 } else {
36743683 let payment_preimage = if let Some ( preimage) = self . payment_preimages . get ( & htlc. payment_hash ) {
36753684 preimage. clone ( )
@@ -3680,12 +3689,12 @@ impl<Signer: EcdsaChannelSigner> ChannelMonitorImpl<Signer> {
36803689 let htlc_output = HolderHTLCOutput :: build_accepted (
36813690 payment_preimage, htlc. amount_msat , self . onchain_tx_handler . channel_type_features ( ) . clone ( )
36823691 ) ;
3683- htlc_output
3692+ ( htlc_output, htlc . cltv_expiry )
36843693 } ;
36853694 let htlc_package = PackageTemplate :: build_package (
36863695 holder_tx. txid , transaction_output_index,
36873696 PackageSolvingData :: HolderHTLCOutput ( htlc_output) ,
3688- htlc . cltv_expiry , conf_height
3697+ counterparty_spendable_height ,
36893698 ) ;
36903699 claim_requests. push ( htlc_package) ;
36913700 }
0 commit comments