@@ -2094,8 +2094,7 @@ trait InitialRemoteCommitmentReceiver<SP: Deref> where SP::Target: SignerProvide
2094
2094
let funding_txo_script = funding_redeemscript.to_p2wsh();
2095
2095
let obscure_factor = get_commitment_transaction_number_obscure_factor(&funding.get_holder_pubkeys().payment_point, &funding.get_counterparty_pubkeys().payment_point, funding.is_outbound());
2096
2096
let shutdown_script = context.shutdown_scriptpubkey.clone().map(|script| script.into_inner());
2097
- let mut monitor_signer = signer_provider.derive_channel_signer(funding.get_value_satoshis(), context.channel_keys_id);
2098
- monitor_signer.provide_channel_parameters(&funding.channel_transaction_parameters);
2097
+ let monitor_signer = signer_provider.derive_channel_signer(funding.get_value_satoshis(), context.channel_keys_id);
2099
2098
// TODO(RBF): When implementing RBF, the funding_txo passed here must only update
2100
2099
// ChannelMonitorImp::first_confirmed_funding_txo during channel establishment, not splicing
2101
2100
let channel_monitor = ChannelMonitor::new(context.secp_ctx.clone(), monitor_signer,
@@ -2290,7 +2289,6 @@ impl<SP: Deref> PendingV2Channel<SP> where SP::Target: SignerProvider {
2290
2289
))).map_err(|e| (self, e));
2291
2290
};
2292
2291
self.funding.channel_transaction_parameters.funding_outpoint = Some(outpoint);
2293
- self.context.holder_signer.as_mut().provide_channel_parameters(&self.funding.channel_transaction_parameters);
2294
2292
2295
2293
self.context.assert_no_commitment_advancement(transaction_number, "initial commitment_signed");
2296
2294
let commitment_signed = self.context.get_initial_commitment_signed(&self.funding, logger);
@@ -4547,15 +4545,14 @@ impl<SP: Deref> ChannelContext<SP> where SP::Target: SignerProvider {
4547
4545
4548
4546
#[cfg(all(test, dual_funding))]
4549
4547
pub fn get_initial_counterparty_commitment_signature_for_test<L: Deref>(
4550
- &mut self, funding: &mut FundingScope, logger: &L, channel_transaction_parameters: ChannelTransactionParameters,
4548
+ &mut self, funding: &mut FundingScope, logger: &L,
4551
4549
counterparty_cur_commitment_point_override: PublicKey,
4552
4550
) -> Result<Signature, ChannelError>
4553
4551
where
4554
4552
SP::Target: SignerProvider,
4555
4553
L::Target: Logger
4556
4554
{
4557
4555
self.counterparty_cur_commitment_point = Some(counterparty_cur_commitment_point_override);
4558
- funding.channel_transaction_parameters = channel_transaction_parameters;
4559
4556
self.get_initial_counterparty_commitment_signature(funding, logger)
4560
4557
}
4561
4558
}
@@ -9069,7 +9066,6 @@ impl<SP: Deref> OutboundV1Channel<SP> where SP::Target: SignerProvider {
9069
9066
self.context.assert_no_commitment_advancement(self.unfunded_context.transaction_number(), "funding_created");
9070
9067
9071
9068
self.funding.channel_transaction_parameters.funding_outpoint = Some(funding_txo);
9072
- self.context.holder_signer.as_mut().provide_channel_parameters(&self.funding.channel_transaction_parameters);
9073
9069
9074
9070
// Now that we're past error-generating stuff, update our local state:
9075
9071
@@ -9457,9 +9453,6 @@ impl<SP: Deref> InboundV1Channel<SP> where SP::Target: SignerProvider {
9457
9453
9458
9454
let funding_txo = OutPoint { txid: msg.funding_txid, index: msg.funding_output_index };
9459
9455
self.funding.channel_transaction_parameters.funding_outpoint = Some(funding_txo);
9460
- // This is an externally observable change before we finish all our checks. In particular
9461
- // check_funding_created_signature may fail.
9462
- self.context.holder_signer.as_mut().provide_channel_parameters(&self.funding.channel_transaction_parameters);
9463
9456
9464
9457
let (channel_monitor, counterparty_initial_commitment_tx) = match self.initial_commitment_signed(
9465
9458
ChannelId::v1_from_funding_outpoint(funding_txo), msg.signature,
@@ -10605,12 +10598,7 @@ impl<'a, 'b, 'c, ES: Deref, SP: Deref> ReadableArgs<(&'a ES, &'b SP, u32, &'c Ch
10605
10598
});
10606
10599
10607
10600
let (channel_keys_id, holder_signer) = if let Some(channel_keys_id) = channel_keys_id {
10608
- let mut holder_signer = signer_provider.derive_channel_signer(channel_value_satoshis, channel_keys_id);
10609
- // If we've gotten to the funding stage of the channel, populate the signer with its
10610
- // required channel parameters.
10611
- if channel_state >= ChannelState::FundingNegotiated {
10612
- holder_signer.provide_channel_parameters(&channel_parameters);
10613
- }
10601
+ let holder_signer = signer_provider.derive_channel_signer(channel_value_satoshis, channel_keys_id);
10614
10602
(channel_keys_id, holder_signer)
10615
10603
} else {
10616
10604
// `keys_data` can be `None` if we had corrupted data.
@@ -11633,7 +11621,6 @@ mod tests {
11633
11621
selected_contest_delay: 144
11634
11622
});
11635
11623
chan.funding.channel_transaction_parameters.funding_outpoint = Some(funding_info);
11636
- signer.provide_channel_parameters(&chan.funding.channel_transaction_parameters);
11637
11624
11638
11625
assert_eq!(counterparty_pubkeys.payment_point.serialize()[..],
11639
11626
<Vec<u8>>::from_hex("032c0b7cf95324a07d05398b240174dc0c2be444d96b159aa6c7f7b1e668680991").unwrap()[..]);
0 commit comments