@@ -57,7 +57,7 @@ use crate::types::features::{Bolt12InvoiceFeatures, ChannelFeatures, ChannelType
5757use crate::types::features::Bolt11InvoiceFeatures;
5858#[cfg(trampoline)]
5959use crate::routing::gossip::NodeId;
60- use crate::routing::router::{BlindedTail, FixedRouter, InFlightHtlcs, Path, Payee, PaymentParameters, Route, RouteParameters, Router};
60+ use crate::routing::router::{BlindedTail, FixedRouter, InFlightHtlcs, Path, Payee, PaymentParameters, Route, RouteParameters, RouteParametersConfig, Router};
6161use 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};
6262use crate::ln::msgs;
6363use crate::ln::onion_utils;
@@ -2096,6 +2096,7 @@ where
20962096/// # use lightning::events::{Event, EventsProvider, PaymentPurpose};
20972097/// # use lightning::ln::channelmanager::AChannelManager;
20982098/// # use lightning::offers::parse::Bolt12SemanticError;
2099+ /// # use lightning::routing::router::RouteParametersConfig;
20992100/// #
21002101/// # fn example<T: AChannelManager>(channel_manager: T) -> Result<(), Bolt12SemanticError> {
21012102/// # let channel_manager = channel_manager.get_cm();
@@ -2143,15 +2144,16 @@ where
21432144/// # use lightning::events::{Event, EventsProvider};
21442145/// # use lightning::ln::channelmanager::{AChannelManager, PaymentId, RecentPaymentDetails, Retry};
21452146/// # use lightning::offers::offer::Offer;
2147+ /// # use lightning::routing::router::RouteParametersConfig;
21462148/// #
21472149/// # fn example<T: AChannelManager>(
21482150/// # channel_manager: T, offer: &Offer, quantity: Option<u64>, amount_msats: Option<u64>,
2149- /// # payer_note: Option<String>, retry: Retry, max_total_routing_fee_msat: Option<u64>
2151+ /// # payer_note: Option<String>, retry: Retry, route_params_config: RouteParametersConfig
21502152/// # ) {
21512153/// # let channel_manager = channel_manager.get_cm();
21522154/// let payment_id = PaymentId([42; 32]);
21532155/// match channel_manager.pay_for_offer(
2154- /// offer, quantity, amount_msats, payer_note, payment_id, retry, max_total_routing_fee_msat
2156+ /// offer, quantity, amount_msats, payer_note, payment_id, retry, route_params_config
21552157/// ) {
21562158/// Ok(()) => println!("Requesting invoice for offer"),
21572159/// Err(e) => println!("Unable to request invoice for offer: {:?}", e),
@@ -2199,16 +2201,17 @@ where
21992201/// # use lightning::events::{Event, EventsProvider};
22002202/// # use lightning::ln::channelmanager::{AChannelManager, PaymentId, RecentPaymentDetails, Retry};
22012203/// # use lightning::offers::parse::Bolt12SemanticError;
2204+ /// # use lightning::routing::router::RouteParametersConfig;
22022205/// #
22032206/// # fn example<T: AChannelManager>(
22042207/// # channel_manager: T, amount_msats: u64, absolute_expiry: Duration, retry: Retry,
2205- /// # max_total_routing_fee_msat: Option<u64>
2208+ /// # route_params_config: RouteParametersConfig
22062209/// # ) -> Result<(), Bolt12SemanticError> {
22072210/// # let channel_manager = channel_manager.get_cm();
22082211/// let payment_id = PaymentId([42; 32]);
22092212/// let refund = channel_manager
22102213/// .create_refund_builder(
2211- /// amount_msats, absolute_expiry, payment_id, retry, max_total_routing_fee_msat
2214+ /// amount_msats, absolute_expiry, payment_id, retry, route_params_config
22122215/// )?
22132216/// # ;
22142217/// # // Needed for compiling for c_bindings
@@ -9983,7 +9986,7 @@ macro_rules! create_refund_builder { ($self: ident, $builder: ty) => {
99839986 /// [Avoiding Duplicate Payments]: #avoiding-duplicate-payments
99849987 pub fn create_refund_builder(
99859988 &$self, amount_msats: u64, absolute_expiry: Duration, payment_id: PaymentId,
9986- retry_strategy: Retry, max_total_routing_fee_msat: Option<u64>
9989+ retry_strategy: Retry, route_params_config: RouteParametersConfig
99879990 ) -> Result<$builder, Bolt12SemanticError> {
99889991 let node_id = $self.get_our_node_id();
99899992 let expanded_key = &$self.inbound_payment_key;
@@ -10008,7 +10011,7 @@ macro_rules! create_refund_builder { ($self: ident, $builder: ty) => {
1000810011 let expiration = StaleExpiration::AbsoluteTimeout(absolute_expiry);
1000910012 $self.pending_outbound_payments
1001010013 .add_new_awaiting_invoice(
10011- payment_id, expiration, retry_strategy, max_total_routing_fee_msat , None,
10014+ payment_id, expiration, retry_strategy, route_params_config , None,
1001210015 )
1001310016 .map_err(|_| Bolt12SemanticError::DuplicatePaymentId)?;
1001410017
@@ -10184,7 +10187,7 @@ where
1018410187 pub fn pay_for_offer(
1018510188 &self, offer: &Offer, quantity: Option<u64>, amount_msats: Option<u64>,
1018610189 payer_note: Option<String>, payment_id: PaymentId, retry_strategy: Retry,
10187- max_total_routing_fee_msat: Option<u64>
10190+ route_params_config: RouteParametersConfig
1018810191 ) -> Result<(), Bolt12SemanticError> {
1018910192 self.pay_for_offer_intern(offer, quantity, amount_msats, payer_note, payment_id, None, |invoice_request, nonce| {
1019010193 let expiration = StaleExpiration::TimerTicks(1);
@@ -10195,7 +10198,7 @@ where
1019510198 };
1019610199 self.pending_outbound_payments
1019710200 .add_new_awaiting_invoice(
10198- payment_id, expiration, retry_strategy, max_total_routing_fee_msat ,
10201+ payment_id, expiration, retry_strategy, route_params_config ,
1019910202 Some(retryable_invoice_request)
1020010203 )
1020110204 .map_err(|_| Bolt12SemanticError::DuplicatePaymentId)
@@ -10428,14 +10431,14 @@ where
1042810431 #[cfg(feature = "dnssec")]
1042910432 pub fn pay_for_offer_from_human_readable_name(
1043010433 &self, name: HumanReadableName, amount_msats: u64, payment_id: PaymentId,
10431- retry_strategy: Retry, max_total_routing_fee_msat: Option<u64> ,
10434+ retry_strategy: Retry, route_params_config: RouteParametersConfig ,
1043210435 dns_resolvers: Vec<Destination>,
1043310436 ) -> Result<(), ()> {
1043410437 let (onion_message, context) =
1043510438 self.hrn_resolver.resolve_name(payment_id, name, &*self.entropy_source)?;
1043610439 let reply_paths = self.create_blinded_paths(MessageContext::DNSResolver(context))?;
1043710440 let expiration = StaleExpiration::TimerTicks(1);
10438- self.pending_outbound_payments.add_new_awaiting_offer(payment_id, expiration, retry_strategy, max_total_routing_fee_msat , amount_msats)?;
10441+ self.pending_outbound_payments.add_new_awaiting_offer(payment_id, expiration, retry_strategy, route_params_config , amount_msats)?;
1043910442 let message_params = dns_resolvers
1044010443 .iter()
1044110444 .flat_map(|destination| reply_paths.iter().map(move |path| (path, destination)))
0 commit comments