From 7082d6cd2af8f1a50b50b2d57ca00d415b7b12eb Mon Sep 17 00:00:00 2001 From: Valentine Wallace Date: Fri, 21 Oct 2022 20:30:49 -0400 Subject: [PATCH] KeysInterface docs: note that Recipient type must be supported by impl --- lightning/src/chain/keysinterface.rs | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/lightning/src/chain/keysinterface.rs b/lightning/src/chain/keysinterface.rs index 5828b4881..6e13d7a09 100644 --- a/lightning/src/chain/keysinterface.rs +++ b/lightning/src/chain/keysinterface.rs @@ -411,6 +411,8 @@ pub trait KeysInterface { /// /// This method must return the same value each time it is called with a given `Recipient` /// parameter. + /// + /// Errors if the `Recipient` variant is not supported by the implementation. fn get_node_secret(&self, recipient: Recipient) -> Result; /// Get node id based on the provided [`Recipient`]. This public key corresponds to the secret in /// [`get_node_secret`]. @@ -418,6 +420,8 @@ pub trait KeysInterface { /// This method must return the same value each time it is called with a given `Recipient` /// parameter. /// + /// Errors if the `Recipient` variant is not supported by the implementation. + /// /// [`get_node_secret`]: KeysInterface::get_node_secret fn get_node_id(&self, recipient: Recipient) -> Result { let secp_ctx = Secp256k1::signing_only(); @@ -427,6 +431,8 @@ pub trait KeysInterface { /// one is provided. Note that this tweak can be applied to `other_key` instead of our node /// secret, though this is less efficient. /// + /// Errors if the `Recipient` variant is not supported by the implementation. + /// /// [`node secret`]: Self::get_node_secret fn ecdh(&self, recipient: Recipient, other_key: &PublicKey, tweak: Option<&Scalar>) -> Result; /// Get a script pubkey which we send funds to when claiming on-chain contestable outputs. @@ -466,6 +472,8 @@ pub trait KeysInterface { /// The hrp is ascii bytes, while the invoice data is base32. /// /// The secret key used to sign the invoice is dependent on the [`Recipient`]. + /// + /// Errors if the `Recipient` variant is not supported by the implementation. fn sign_invoice(&self, hrp_bytes: &[u8], invoice_data: &[u5], receipient: Recipient) -> Result; /// Get secret key material as bytes for use in encrypting and decrypting inbound payment data. -- 2.39.5