mirror of
https://github.com/lightningnetwork/lnd.git
synced 2025-03-29 03:01:52 +01:00
htlcswitch: expose custom channel blob from link
This commit is contained in:
parent
3c6d49775e
commit
ec7dc031c9
@ -12,6 +12,7 @@ import (
|
||||
"github.com/lightningnetwork/lnd/lnwallet/chainfee"
|
||||
"github.com/lightningnetwork/lnd/lnwire"
|
||||
"github.com/lightningnetwork/lnd/record"
|
||||
"github.com/lightningnetwork/lnd/tlv"
|
||||
)
|
||||
|
||||
// InvoiceDatabase is an interface which represents the persistent subsystem
|
||||
@ -271,6 +272,16 @@ type ChannelLink interface {
|
||||
// have buffered messages.
|
||||
AttachMailBox(MailBox)
|
||||
|
||||
// FundingCustomBlob returns the custom funding blob of the channel that
|
||||
// this link is associated with. The funding blob represents static
|
||||
// information about the channel that was created at channel funding
|
||||
// time.
|
||||
FundingCustomBlob() fn.Option[tlv.Blob]
|
||||
|
||||
// CommitmentCustomBlob returns the custom blob of the current local
|
||||
// commitment of the channel that this link is associated with.
|
||||
CommitmentCustomBlob() fn.Option[tlv.Blob]
|
||||
|
||||
// Start/Stop are used to initiate the start/stop of the channel link
|
||||
// functioning.
|
||||
Start() error
|
||||
|
@ -3775,3 +3775,16 @@ func (l *channelLink) fail(linkErr LinkFailureError,
|
||||
l.failed = true
|
||||
l.cfg.OnChannelFailure(l.ChanID(), l.ShortChanID(), linkErr)
|
||||
}
|
||||
|
||||
// FundingCustomBlob returns the custom funding blob of the channel that this
|
||||
// link is associated with. The funding blob represents static information about
|
||||
// the channel that was created at channel funding time.
|
||||
func (l *channelLink) FundingCustomBlob() fn.Option[tlv.Blob] {
|
||||
return l.channel.State().CustomBlob
|
||||
}
|
||||
|
||||
// CommitmentCustomBlob returns the custom blob of the current local commitment
|
||||
// of the channel that this link is associated with.
|
||||
func (l *channelLink) CommitmentCustomBlob() fn.Option[tlv.Blob] {
|
||||
return l.channel.LocalCommitmentBlob()
|
||||
}
|
||||
|
@ -27,6 +27,7 @@ import (
|
||||
"github.com/lightningnetwork/lnd/channeldb/models"
|
||||
"github.com/lightningnetwork/lnd/clock"
|
||||
"github.com/lightningnetwork/lnd/contractcourt"
|
||||
"github.com/lightningnetwork/lnd/fn"
|
||||
"github.com/lightningnetwork/lnd/htlcswitch/hop"
|
||||
"github.com/lightningnetwork/lnd/invoices"
|
||||
"github.com/lightningnetwork/lnd/lnpeer"
|
||||
@ -35,6 +36,7 @@ import (
|
||||
"github.com/lightningnetwork/lnd/lnwallet/chainfee"
|
||||
"github.com/lightningnetwork/lnd/lnwire"
|
||||
"github.com/lightningnetwork/lnd/ticker"
|
||||
"github.com/lightningnetwork/lnd/tlv"
|
||||
)
|
||||
|
||||
func isAlias(scid lnwire.ShortChannelID) bool {
|
||||
@ -912,6 +914,10 @@ func (f *mockChannelLink) ChannelPoint() wire.OutPoint {
|
||||
return wire.OutPoint{}
|
||||
}
|
||||
|
||||
func (f *mockChannelLink) ChannelCustomBlob() fn.Option[tlv.Blob] {
|
||||
return fn.Option[tlv.Blob]{}
|
||||
}
|
||||
|
||||
func (f *mockChannelLink) Stop() {}
|
||||
func (f *mockChannelLink) EligibleToForward() bool { return f.eligible }
|
||||
func (f *mockChannelLink) MayAddOutgoingHtlc(lnwire.MilliSatoshi) error { return nil }
|
||||
@ -942,6 +948,14 @@ func (f *mockChannelLink) OnCommitOnce(LinkDirection, func()) {
|
||||
// TODO(proofofkeags): Implement
|
||||
}
|
||||
|
||||
func (f *mockChannelLink) FundingCustomBlob() fn.Option[tlv.Blob] {
|
||||
return fn.None[tlv.Blob]()
|
||||
}
|
||||
|
||||
func (f *mockChannelLink) CommitmentCustomBlob() fn.Option[tlv.Blob] {
|
||||
return fn.None[tlv.Blob]()
|
||||
}
|
||||
|
||||
var _ ChannelLink = (*mockChannelLink)(nil)
|
||||
|
||||
func newDB() (*channeldb.DB, func(), error) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user