@@ -55,7 +55,7 @@ use crate::ln::channel_state::ChannelDetails;
5555use crate::types::features::{Bolt12InvoiceFeatures, ChannelFeatures, ChannelTypeFeatures, InitFeatures, NodeFeatures};
5656#[cfg(any(feature = "_test_utils", test))]
5757use crate::types::features::Bolt11InvoiceFeatures;
58- use crate::routing::router::{BlindedTail, FixedRouter, InFlightHtlcs, Path, Payee, PaymentParameters, Route, RouteParameters, Router};
58+ use crate::routing::router::{BlindedTail, FixedRouter, InFlightHtlcs, Path, Payee, PaymentParameters, Route, RouteParameters, RouteParametersConfig, Router};
5959use crate::ln::onion_payment::{check_incoming_htlc_cltv, create_recv_pending_htlc_info, create_fwd_pending_htlc_info, decode_incoming_update_add_htlc_onion, InboundHTLCErr, NextPacketDetails};
6060use crate::ln::msgs;
6161use crate::ln::onion_utils;
@@ -2071,6 +2071,7 @@ where
20712071/// # use lightning::events::{Event, EventsProvider, PaymentPurpose};
20722072/// # use lightning::ln::channelmanager::AChannelManager;
20732073/// # use lightning::offers::parse::Bolt12SemanticError;
2074+ /// # use lightning::routing::router::RouteParametersConfig;
20742075/// #
20752076/// # fn example<T: AChannelManager>(channel_manager: T) -> Result<(), Bolt12SemanticError> {
20762077/// # let channel_manager = channel_manager.get_cm();
@@ -2118,15 +2119,16 @@ where
21182119/// # use lightning::events::{Event, EventsProvider};
21192120/// # use lightning::ln::channelmanager::{AChannelManager, PaymentId, RecentPaymentDetails, Retry};
21202121/// # use lightning::offers::offer::Offer;
2122+ /// # use lightning::routing::router::RouteParametersConfig;
21212123/// #
21222124/// # fn example<T: AChannelManager>(
21232125/// # channel_manager: T, offer: &Offer, quantity: Option<u64>, amount_msats: Option<u64>,
2124- /// # payer_note: Option<String>, retry: Retry, max_total_routing_fee_msat : Option<u64 >
2126+ /// # payer_note: Option<String>, retry: Retry, route_params_config : Option<RouteParametersConfig >
21252127/// # ) {
21262128/// # let channel_manager = channel_manager.get_cm();
21272129/// let payment_id = PaymentId([42; 32]);
21282130/// match channel_manager.pay_for_offer(
2129- /// offer, quantity, amount_msats, payer_note, payment_id, retry, max_total_routing_fee_msat
2131+ /// offer, quantity, amount_msats, payer_note, payment_id, retry, route_params_config
21302132/// ) {
21312133/// Ok(()) => println!("Requesting invoice for offer"),
21322134/// Err(e) => println!("Unable to request invoice for offer: {:?}", e),
@@ -2174,16 +2176,17 @@ where
21742176/// # use lightning::events::{Event, EventsProvider};
21752177/// # use lightning::ln::channelmanager::{AChannelManager, PaymentId, RecentPaymentDetails, Retry};
21762178/// # use lightning::offers::parse::Bolt12SemanticError;
2179+ /// # use lightning::routing::router::RouteParametersConfig;
21772180/// #
21782181/// # fn example<T: AChannelManager>(
21792182/// # channel_manager: T, amount_msats: u64, absolute_expiry: Duration, retry: Retry,
2180- /// # max_total_routing_fee_msat : Option<u64 >
2183+ /// # route_params_config : Option<RouteParametersConfig >
21812184/// # ) -> Result<(), Bolt12SemanticError> {
21822185/// # let channel_manager = channel_manager.get_cm();
21832186/// let payment_id = PaymentId([42; 32]);
21842187/// let refund = channel_manager
21852188/// .create_refund_builder(
2186- /// amount_msats, absolute_expiry, payment_id, retry, max_total_routing_fee_msat
2189+ /// amount_msats, absolute_expiry, payment_id, retry, route_params_config
21872190/// )?
21882191/// # ;
21892192/// # // Needed for compiling for c_bindings
@@ -9881,7 +9884,7 @@ macro_rules! create_refund_builder { ($self: ident, $builder: ty) => {
98819884 /// [Avoiding Duplicate Payments]: #avoiding-duplicate-payments
98829885 pub fn create_refund_builder(
98839886 &$self, amount_msats: u64, absolute_expiry: Duration, payment_id: PaymentId,
9884- retry_strategy: Retry, max_total_routing_fee_msat : Option<u64 >
9887+ retry_strategy: Retry, route_params_config : Option<RouteParametersConfig >
98859888 ) -> Result<$builder, Bolt12SemanticError> {
98869889 let node_id = $self.get_our_node_id();
98879890 let expanded_key = &$self.inbound_payment_key;
@@ -9906,7 +9909,7 @@ macro_rules! create_refund_builder { ($self: ident, $builder: ty) => {
99069909 let expiration = StaleExpiration::AbsoluteTimeout(absolute_expiry);
99079910 $self.pending_outbound_payments
99089911 .add_new_awaiting_invoice(
9909- payment_id, expiration, retry_strategy, max_total_routing_fee_msat , None,
9912+ payment_id, expiration, retry_strategy, route_params_config , None,
99109913 )
99119914 .map_err(|_| Bolt12SemanticError::DuplicatePaymentId)?;
99129915
@@ -10082,7 +10085,7 @@ where
1008210085 pub fn pay_for_offer(
1008310086 &self, offer: &Offer, quantity: Option<u64>, amount_msats: Option<u64>,
1008410087 payer_note: Option<String>, payment_id: PaymentId, retry_strategy: Retry,
10085- max_total_routing_fee_msat : Option<u64 >
10088+ route_params_config : Option<RouteParametersConfig >
1008610089 ) -> Result<(), Bolt12SemanticError> {
1008710090 self.pay_for_offer_intern(offer, quantity, amount_msats, payer_note, payment_id, None, |invoice_request, nonce| {
1008810091 let expiration = StaleExpiration::TimerTicks(1);
@@ -10093,7 +10096,7 @@ where
1009310096 };
1009410097 self.pending_outbound_payments
1009510098 .add_new_awaiting_invoice(
10096- payment_id, expiration, retry_strategy, max_total_routing_fee_msat ,
10099+ payment_id, expiration, retry_strategy, route_params_config ,
1009710100 Some(retryable_invoice_request)
1009810101 )
1009910102 .map_err(|_| Bolt12SemanticError::DuplicatePaymentId)
@@ -10326,14 +10329,14 @@ where
1032610329 #[cfg(feature = "dnssec")]
1032710330 pub fn pay_for_offer_from_human_readable_name(
1032810331 &self, name: HumanReadableName, amount_msats: u64, payment_id: PaymentId,
10329- retry_strategy: Retry, max_total_routing_fee_msat : Option<u64 >,
10332+ retry_strategy: Retry, route_params_config : Option<RouteParametersConfig >,
1033010333 dns_resolvers: Vec<Destination>,
1033110334 ) -> Result<(), ()> {
1033210335 let (onion_message, context) =
1033310336 self.hrn_resolver.resolve_name(payment_id, name, &*self.entropy_source)?;
1033410337 let reply_paths = self.create_blinded_paths(MessageContext::DNSResolver(context))?;
1033510338 let expiration = StaleExpiration::TimerTicks(1);
10336- self.pending_outbound_payments.add_new_awaiting_offer(payment_id, expiration, retry_strategy, max_total_routing_fee_msat , amount_msats)?;
10339+ self.pending_outbound_payments.add_new_awaiting_offer(payment_id, expiration, retry_strategy, route_params_config , amount_msats)?;
1033710340 let message_params = dns_resolvers
1033810341 .iter()
1033910342 .flat_map(|destination| reply_paths.iter().map(move |path| (path, destination)))
0 commit comments