htlcswitch: sync link hand-off

This commit extends the link with a new synchronous delivery point for
local UpdateAddHTLC messages. The switch method SendHTLC is updated to
use this delivery point and thereby becomes a synchronous call.

For MPP payments, synchronous hand-off is important. Otherwise the next
pathfinding round could start without the channel balance updated yet.
This commit is contained in:
Joost Jager
2020-04-13 17:29:52 +02:00
parent de2df5606a
commit c325bf8c57
6 changed files with 120 additions and 18 deletions

View File

@@ -702,6 +702,11 @@ func (f *mockChannelLink) HandleSwitchPacket(pkt *htlcPacket) error {
return nil
}
func (f *mockChannelLink) HandleLocalAddPacket(pkt *htlcPacket) error {
_ = f.mailBox.AddPacket(pkt)
return nil
}
func (f *mockChannelLink) HandleChannelUpdate(lnwire.Message) {
}