Merge pull request #3082 from valentinewallace/2024-04-bolt12-keysend-invoice
[rust-lightning] / fuzz / src / offer_deser.rs
index 53f67a3380db07d322f8b1fe1c72a75301e34cc0..84b69d3fcd31f5dc82bbf1bdf60faa4036283f25 100644 (file)
@@ -7,9 +7,9 @@
 // You may not use this file except in accordance with one or both of these
 // licenses.
 
-use bitcoin::secp256k1::{KeyPair, PublicKey, Secp256k1, SecretKey};
 use crate::utils::test_logger;
-use core::convert::{Infallible, TryFrom};
+use bitcoin::secp256k1::{Keypair, PublicKey, Secp256k1, SecretKey};
+use core::convert::TryFrom;
 use lightning::offers::invoice_request::UnsignedInvoiceRequest;
 use lightning::offers::offer::{Amount, Offer, Quantity};
 use lightning::offers::parse::Bolt12SemanticError;
@@ -23,15 +23,15 @@ pub fn do_test<Out: test_logger::Output>(data: &[u8], _out: Out) {
                assert_eq!(data, bytes);
 
                let secp_ctx = Secp256k1::new();
-               let keys = KeyPair::from_secret_key(&secp_ctx, &SecretKey::from_slice(&[42; 32]).unwrap());
+               let keys = Keypair::from_secret_key(&secp_ctx, &SecretKey::from_slice(&[42; 32]).unwrap());
                let pubkey = PublicKey::from(keys);
                let mut buffer = Vec::new();
 
                if let Ok(invoice_request) = build_response(&offer, pubkey) {
                        invoice_request
-                               .sign::<_, Infallible>(
-                                       |digest| Ok(secp_ctx.sign_schnorr_no_aux_rand(digest, &keys))
-                               )
+                               .sign(|message: &UnsignedInvoiceRequest| {
+                                       Ok(secp_ctx.sign_schnorr_no_aux_rand(message.as_ref().as_digest(), &keys))
+                               })
                                .unwrap()
                                .write(&mut buffer)
                                .unwrap();
@@ -39,9 +39,9 @@ pub fn do_test<Out: test_logger::Output>(data: &[u8], _out: Out) {
        }
 }
 
-fn build_response<'a>(
-       offer: &'a Offer, pubkey: PublicKey
-) -> Result<UnsignedInvoiceRequest<'a>, Bolt12SemanticError> {
+fn build_response(
+       offer: &Offer, pubkey: PublicKey,
+) -> Result<UnsignedInvoiceRequest, Bolt12SemanticError> {
        let mut builder = offer.request_invoice(vec![42; 64], pubkey)?;
 
        builder = match offer.amount() {