Skip to content

Commit 7ad3989

Browse files
committed
fix tests
1 parent a55f8f2 commit 7ad3989

File tree

2 files changed

+12
-1
lines changed

2 files changed

+12
-1
lines changed

lightning/src/chain/keysinterface.rs

+7
Original file line numberDiff line numberDiff line change
@@ -1355,6 +1355,13 @@ impl NodeSigner for PhantomKeysManager {
13551355
Recipient::PhantomNode => Ok(self.phantom_secret.clone()),
13561356
}
13571357
}
1358+
1359+
// We need to override the invoice signing implementation for phantom keys managers
1360+
fn sign_invoice<C: Signing>(&self, hrp_bytes: &[u8], invoice_data: &[u5], recipient: Recipient, _secp_context: &Secp256k1<C>) -> Result<RecoverableSignature, ()> {
1361+
let preimage = construct_invoice_preimage(&hrp_bytes, &invoice_data);
1362+
let secret = self.get_node_secret(recipient)?;
1363+
Ok(self.inner.secp_ctx.sign_ecdsa_recoverable(&hash_to_message!(&Sha256::hash(&preimage)), &secret))
1364+
}
13581365
}
13591366

13601367
impl SignerProvider for PhantomKeysManager {

lightning/src/util/test_utils.rs

+5-1
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ use bitcoin::blockdata::block::Block;
3535
use bitcoin::network::constants::Network;
3636
use bitcoin::hash_types::{BlockHash, Txid};
3737

38-
use bitcoin::secp256k1::{SecretKey, PublicKey, Secp256k1, ecdsa::Signature, Scalar};
38+
use bitcoin::secp256k1::{SecretKey, PublicKey, Secp256k1, ecdsa::Signature, Scalar, Signing};
3939
use bitcoin::secp256k1::ecdh::SharedSecret;
4040
use bitcoin::secp256k1::ecdsa::RecoverableSignature;
4141

@@ -626,6 +626,10 @@ impl NodeSigner for TestKeysInterface {
626626
fn get_node_secret(&self, recipient: Recipient) -> Result<SecretKey, ()> {
627627
self.backing.get_node_secret(recipient)
628628
}
629+
630+
fn sign_invoice<C: Signing>(&self, hrp_bytes: &[u8], invoice_data: &[u5], recipient: Recipient, secp_context: &Secp256k1<C>) -> Result<RecoverableSignature, ()> {
631+
self.backing.sign_invoice(hrp_bytes, invoice_data, recipient, secp_context)
632+
}
629633
}
630634

631635
impl SignerProvider for TestKeysInterface {

0 commit comments

Comments
 (0)