X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=lightning-invoice%2Fsrc%2Fpayment.rs;h=152b9d348322c009498bf1fae10a8c2854c376fc;hb=refs%2Fheads%2F2024-01-121-bindings;hp=a7c9104d3697e774c03c03ef3cee3d7eadc0989c;hpb=22305a9bff326e473d99d5561aaf903c329b40d6;p=rust-lightning diff --git a/lightning-invoice/src/payment.rs b/lightning-invoice/src/payment.rs index a7c9104d..152b9d34 100644 --- a/lightning-invoice/src/payment.rs +++ b/lightning-invoice/src/payment.rs @@ -10,11 +10,10 @@ //! Convenient utilities for paying Lightning invoices. use crate::Bolt11Invoice; - -use bitcoin_hashes::Hash; +use bitcoin::hashes::Hash; use lightning::ln::PaymentHash; -use lightning::ln::channelmanager::RecipientOnionFields; +use lightning::ln::outbound_payment::RecipientOnionFields; use lightning::routing::router::{PaymentParameters, RouteParameters}; /// Builds the necessary parameters to pay or pre-flight probe the given zero-amount @@ -60,7 +59,7 @@ pub fn payment_parameters_from_invoice(invoice: &Bolt11Invoice) fn params_from_invoice(invoice: &Bolt11Invoice, amount_msat: u64) -> (PaymentHash, RecipientOnionFields, RouteParameters) { - let payment_hash = PaymentHash((*invoice.payment_hash()).into_inner()); + let payment_hash = PaymentHash((*invoice.payment_hash()).to_byte_array()); let mut recipient_onion = RecipientOnionFields::secret_only(*invoice.payment_secret()); recipient_onion.payment_metadata = invoice.payment_metadata().map(|v| v.clone()); @@ -85,15 +84,13 @@ fn params_from_invoice(invoice: &Bolt11Invoice, amount_msat: u64) mod tests { use super::*; use crate::{InvoiceBuilder, Currency}; - use bitcoin_hashes::sha256::Hash as Sha256; - use lightning::events::Event; - use lightning::ln::channelmanager::{Retry, PaymentId}; - use lightning::ln::msgs::ChannelMessageHandler; + use bitcoin::hashes::sha256::Hash as Sha256; use lightning::ln::PaymentSecret; - use lightning::ln::functional_test_utils::*; use lightning::routing::router::Payee; use secp256k1::{SecretKey, PublicKey, Secp256k1}; - use std::time::{SystemTime, Duration}; + use core::time::Duration; + #[cfg(feature = "std")] + use std::time::SystemTime; fn duration_since_epoch() -> Duration { #[cfg(feature = "std")] @@ -172,6 +169,11 @@ mod tests { #[test] #[cfg(feature = "std")] fn payment_metadata_end_to_end() { + use lightning::events::Event; + use lightning::ln::channelmanager::PaymentId; + use lightning::ln::outbound_payment::Retry; + use lightning::ln::msgs::ChannelMessageHandler; + use lightning::ln::functional_test_utils::*; // Test that a payment metadata read from an invoice passed to `pay_invoice` makes it all // the way out through the `PaymentClaimable` event. let chanmon_cfgs = create_chanmon_cfgs(2);