-
Notifications
You must be signed in to change notification settings - Fork 2.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
htlcswitch: fix non-strict forwarding failures #3547
htlcswitch: fix non-strict forwarding failures #3547
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice fix and refactor!
8166576
to
c01c2e7
Compare
acb7e9b
to
8de45d9
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM ☄️
Needs a rebase, then ready to land!
} | ||
|
||
// genIDs generates ids for two test channels. | ||
func genIDs() (lnwire.ChannelID, lnwire.ChannelID, lnwire.ShortChannelID, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍
This is already checked in EligibleToForward()
In the scenario where the requested channel does not have enough balance and another channel towards the same node generates a different failure, we erroneously returned UnknownNextPeer instead of the expected TemporaryChannelFailure. This commit rewrites the non-strict forwarding logic in the switch to return the proper failure message. Part of this is moving the link balance check inside the link.
8de45d9
to
200be87
Compare
This PR fixes inconsistencies in the returned failure messages when forwarding non-strict.