ACINQ / eclair

A scala implementation of the Lightning Network.
Apache License 2.0
1.24k stars 266 forks source link

Propagate next remote commit failed htlcs upstream #2718

Closed t-bast closed 1 year ago

t-bast commented 1 year ago

When our peer fails HTLCs, we only propagate the failure upstream once we've received their revocation for the previous commitment (because they could otherwise publish the previous commitment and claim those HTLCs).

If they publish the new commitment without sending us their revocation, we previously didn't propagate the failure upstream, which leads to an unnecessary force-close. We now correctly handle this scenario.

This issue was reported by @wtogami and is responsible for a force-close of one of our channels.

pm47 commented 1 year ago

Subtle!