Some(RouteParameters {
payment_params: payment_params.clone(),
final_value_msat: pending_amt_unsent,
- final_cltv_expiry_delta: max_unsent_cltv_delta,
+ final_cltv_expiry_delta:
+ if let Some(delta) = payment_params.final_cltv_expiry_delta { delta }
+ else { max_unsent_cltv_delta },
})
} else { None }
} else { None },
Some(RouteParameters {
payment_params: payment_params_data.clone(),
final_value_msat: path_last_hop.fee_msat,
- final_cltv_expiry_delta: path_last_hop.cltv_expiry_delta,
+ final_cltv_expiry_delta:
+ if let Some(delta) = payment_params_data.final_cltv_expiry_delta { delta }
+ else { path_last_hop.cltv_expiry_delta },
})
} else { None };
log_trace!(logger, "Failing outbound payment HTLC with payment_hash {}", log_bytes!(payment_hash.0));
let secp_ctx = Secp256k1::new();
let keys_manager = test_utils::TestKeysInterface::new(&[0; 32], Network::Testnet);
- router.expect_find_route(Err(LightningError { err: String::new(), action: ErrorAction::IgnoreError }));
-
let payment_params = PaymentParameters::from_node_id(
PublicKey::from_secret_key(&secp_ctx, &SecretKey::from_slice(&[42; 32]).unwrap()), 0);
let route_params = RouteParameters {
final_value_msat: 0,
final_cltv_expiry_delta: 0,
};
+ router.expect_find_route(route_params.clone(),
+ Err(LightningError { err: String::new(), action: ErrorAction::IgnoreError }));
+
let err = if on_retry {
outbound_payments.add_new_pending_payment(PaymentHash([0; 32]), None, PaymentId([0; 32]),
&Route { paths: vec![], payment_params: None }, Retry::Attempts(1), Some(route_params.clone()),