@@ -57,7 +57,7 @@ use crate::types::features::{Bolt12InvoiceFeatures, ChannelFeatures, ChannelType
57
57
use crate::types::features::Bolt11InvoiceFeatures;
58
58
#[cfg(trampoline)]
59
59
use 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};
61
61
use 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};
62
62
use crate::ln::msgs;
63
63
use crate::ln::onion_utils;
@@ -2105,6 +2105,7 @@ where
2105
2105
/// # use lightning::events::{Event, EventsProvider, PaymentPurpose};
2106
2106
/// # use lightning::ln::channelmanager::AChannelManager;
2107
2107
/// # use lightning::offers::parse::Bolt12SemanticError;
2108
+ /// # use lightning::routing::router::RouteParametersConfig;
2108
2109
/// #
2109
2110
/// # fn example<T: AChannelManager>(channel_manager: T) -> Result<(), Bolt12SemanticError> {
2110
2111
/// # let channel_manager = channel_manager.get_cm();
@@ -2152,15 +2153,16 @@ where
2152
2153
/// # use lightning::events::{Event, EventsProvider};
2153
2154
/// # use lightning::ln::channelmanager::{AChannelManager, PaymentId, RecentPaymentDetails, Retry};
2154
2155
/// # use lightning::offers::offer::Offer;
2156
+ /// # use lightning::routing::router::RouteParametersConfig;
2155
2157
/// #
2156
2158
/// # fn example<T: AChannelManager>(
2157
2159
/// # channel_manager: T, offer: &Offer, quantity: Option<u64>, amount_msats: Option<u64>,
2158
- /// # payer_note: Option<String>, retry: Retry, max_total_routing_fee_msat: Option<u64>
2160
+ /// # payer_note: Option<String>, retry: Retry, route_params_config: RouteParametersConfig
2159
2161
/// # ) {
2160
2162
/// # let channel_manager = channel_manager.get_cm();
2161
2163
/// let payment_id = PaymentId([42; 32]);
2162
2164
/// match channel_manager.pay_for_offer(
2163
- /// offer, quantity, amount_msats, payer_note, payment_id, retry, max_total_routing_fee_msat
2165
+ /// offer, quantity, amount_msats, payer_note, payment_id, retry, route_params_config
2164
2166
/// ) {
2165
2167
/// Ok(()) => println!("Requesting invoice for offer"),
2166
2168
/// Err(e) => println!("Unable to request invoice for offer: {:?}", e),
@@ -2208,16 +2210,17 @@ where
2208
2210
/// # use lightning::events::{Event, EventsProvider};
2209
2211
/// # use lightning::ln::channelmanager::{AChannelManager, PaymentId, RecentPaymentDetails, Retry};
2210
2212
/// # use lightning::offers::parse::Bolt12SemanticError;
2213
+ /// # use lightning::routing::router::RouteParametersConfig;
2211
2214
/// #
2212
2215
/// # fn example<T: AChannelManager>(
2213
2216
/// # channel_manager: T, amount_msats: u64, absolute_expiry: Duration, retry: Retry,
2214
- /// # max_total_routing_fee_msat: Option<u64>
2217
+ /// # route_params_config: RouteParametersConfig
2215
2218
/// # ) -> Result<(), Bolt12SemanticError> {
2216
2219
/// # let channel_manager = channel_manager.get_cm();
2217
2220
/// let payment_id = PaymentId([42; 32]);
2218
2221
/// let refund = channel_manager
2219
2222
/// .create_refund_builder(
2220
- /// amount_msats, absolute_expiry, payment_id, retry, max_total_routing_fee_msat
2223
+ /// amount_msats, absolute_expiry, payment_id, retry, route_params_config
2221
2224
/// )?
2222
2225
/// # ;
2223
2226
/// # // Needed for compiling for c_bindings
@@ -10161,7 +10164,7 @@ macro_rules! create_refund_builder { ($self: ident, $builder: ty) => {
10161
10164
/// [Avoiding Duplicate Payments]: #avoiding-duplicate-payments
10162
10165
pub fn create_refund_builder(
10163
10166
&$self, amount_msats: u64, absolute_expiry: Duration, payment_id: PaymentId,
10164
- retry_strategy: Retry, max_total_routing_fee_msat: Option<u64>
10167
+ retry_strategy: Retry, route_params_config: RouteParametersConfig
10165
10168
) -> Result<$builder, Bolt12SemanticError> {
10166
10169
let node_id = $self.get_our_node_id();
10167
10170
let expanded_key = &$self.inbound_payment_key;
@@ -10186,7 +10189,7 @@ macro_rules! create_refund_builder { ($self: ident, $builder: ty) => {
10186
10189
let expiration = StaleExpiration::AbsoluteTimeout(absolute_expiry);
10187
10190
$self.pending_outbound_payments
10188
10191
.add_new_awaiting_invoice(
10189
- payment_id, expiration, retry_strategy, max_total_routing_fee_msat , None,
10192
+ payment_id, expiration, retry_strategy, route_params_config , None,
10190
10193
)
10191
10194
.map_err(|_| Bolt12SemanticError::DuplicatePaymentId)?;
10192
10195
@@ -10362,7 +10365,7 @@ where
10362
10365
pub fn pay_for_offer(
10363
10366
&self, offer: &Offer, quantity: Option<u64>, amount_msats: Option<u64>,
10364
10367
payer_note: Option<String>, payment_id: PaymentId, retry_strategy: Retry,
10365
- max_total_routing_fee_msat: Option<u64>
10368
+ route_params_config: RouteParametersConfig
10366
10369
) -> Result<(), Bolt12SemanticError> {
10367
10370
self.pay_for_offer_intern(offer, quantity, amount_msats, payer_note, payment_id, None, |invoice_request, nonce| {
10368
10371
let expiration = StaleExpiration::TimerTicks(1);
@@ -10373,7 +10376,7 @@ where
10373
10376
};
10374
10377
self.pending_outbound_payments
10375
10378
.add_new_awaiting_invoice(
10376
- payment_id, expiration, retry_strategy, max_total_routing_fee_msat ,
10379
+ payment_id, expiration, retry_strategy, route_params_config ,
10377
10380
Some(retryable_invoice_request)
10378
10381
)
10379
10382
.map_err(|_| Bolt12SemanticError::DuplicatePaymentId)
@@ -10606,14 +10609,14 @@ where
10606
10609
#[cfg(feature = "dnssec")]
10607
10610
pub fn pay_for_offer_from_human_readable_name(
10608
10611
&self, name: HumanReadableName, amount_msats: u64, payment_id: PaymentId,
10609
- retry_strategy: Retry, max_total_routing_fee_msat: Option<u64> ,
10612
+ retry_strategy: Retry, route_params_config: RouteParametersConfig ,
10610
10613
dns_resolvers: Vec<Destination>,
10611
10614
) -> Result<(), ()> {
10612
10615
let (onion_message, context) =
10613
10616
self.hrn_resolver.resolve_name(payment_id, name, &*self.entropy_source)?;
10614
10617
let reply_paths = self.create_blinded_paths(MessageContext::DNSResolver(context))?;
10615
10618
let expiration = StaleExpiration::TimerTicks(1);
10616
- self.pending_outbound_payments.add_new_awaiting_offer(payment_id, expiration, retry_strategy, max_total_routing_fee_msat , amount_msats)?;
10619
+ self.pending_outbound_payments.add_new_awaiting_offer(payment_id, expiration, retry_strategy, route_params_config , amount_msats)?;
10617
10620
let message_params = dns_resolvers
10618
10621
.iter()
10619
10622
.flat_map(|destination| reply_paths.iter().map(move |path| (path, destination)))
0 commit comments