From: Matt Corallo Date: Thu, 28 Sep 2023 18:19:50 +0000 (+0000) Subject: Allow routefinding again due to HTLC limit based on >= not > X-Git-Tag: v0.0.117-rc1~13^2~3 X-Git-Url: http://git.bitcoin.ninja/?a=commitdiff_plain;h=5861dde6923f0dbbd9145efe2747be3c13e60b92;p=rust-lightning Allow routefinding again due to HTLC limit based on >= not > While this doesn't matter much in practice, if we go around again when route-finding to try to meet an htlc_minimum_msat, we use the `recommended_value_msat` which can work if we meet the `htlc_minimum_msat` on a channel exactly, so using >= rather than > can capture cases with 1msat more. --- diff --git a/lightning/src/routing/router.rs b/lightning/src/routing/router.rs index 193fe3523..1c51bb985 100644 --- a/lightning/src/routing/router.rs +++ b/lightning/src/routing/router.rs @@ -1788,9 +1788,9 @@ where L::Target: Logger { #[allow(unused_comparisons)] // $next_hops_path_htlc_minimum_msat is 0 in some calls so rustc complains let may_overpay_to_meet_path_minimum_msat = ((amount_to_transfer_over_msat < $candidate.htlc_minimum_msat() && - recommended_value_msat > $candidate.htlc_minimum_msat()) || + recommended_value_msat >= $candidate.htlc_minimum_msat()) || (amount_to_transfer_over_msat < $next_hops_path_htlc_minimum_msat && - recommended_value_msat > $next_hops_path_htlc_minimum_msat)); + recommended_value_msat >= $next_hops_path_htlc_minimum_msat)); let payment_failed_on_this_channel = scid_opt.map_or(false, |scid| payment_params.previously_failed_channels.contains(&scid));