From 6ec23aa7db28b89ac43db804e90cb9da8f9ca833 Mon Sep 17 00:00:00 2001 From: Matt Corallo Date: Tue, 6 Dec 2022 18:16:46 +0000 Subject: [PATCH] Clarify docs on `provide_channel_parameters` Its very confusing to say that LDK will call `provide_channel_parameters` more than once - its true for a channel, but not for a given instance. Instead, phrase the docs with reference to a specific instance, which is much clearer. --- lightning/src/chain/keysinterface.rs | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/lightning/src/chain/keysinterface.rs b/lightning/src/chain/keysinterface.rs index 1426ff5c..c0488d11 100644 --- a/lightning/src/chain/keysinterface.rs +++ b/lightning/src/chain/keysinterface.rs @@ -395,9 +395,12 @@ pub trait BaseSign { fn sign_channel_announcement(&self, msg: &UnsignedChannelAnnouncement, secp_ctx: &Secp256k1) -> Result<(Signature, Signature), ()>; /// Set the counterparty static channel data, including basepoints, - /// `counterparty_selected`/`holder_selected_contest_delay` and funding outpoint. Since these - /// are static channel data, they MUST NOT be allowed to change to different values once set, - /// as LDK may call this method more than once. + /// `counterparty_selected`/`holder_selected_contest_delay` and funding outpoint. + /// + /// This data is static, and will never change for a channel once set. For a given [`BaseSign`] + /// instance, LDK will call this method exactly once - either immediately after construction + /// (not including if done via [`KeysInterface::read_chan_signer`]) or when the funding + /// information has been generated. /// /// channel_parameters.is_populated() MUST be true. fn provide_channel_parameters(&mut self, channel_parameters: &ChannelTransactionParameters); -- 2.30.2