lnd: initialize invoice settlement interceptor at server startup

This commit initiates the invoice settlement interceptor during the
main server startup, assigning it a handle within the server.
This commit is contained in:
ffranr
2024-04-23 14:38:47 +01:00
committed by Oliver Gugger
parent 12ad0cbf5a
commit 7e8a3b0df7

View File

@@ -260,6 +260,8 @@ type server struct {
invoices *invoices.InvoiceRegistry
invoiceHtlcModifier *invoices.HtlcModificationInterceptor
channelNotifier *channelnotifier.ChannelNotifier
peerNotifier *peernotifier.PeerNotifier
@@ -556,6 +558,7 @@ func newServer(cfg *Config, listenAddrs []net.Addr,
return nil, err
}
invoiceHtlcModifier := invoices.NewHtlcModificationInterceptor()
registryConfig := invoices.RegistryConfig{
FinalCltvRejectDelta: lncfg.DefaultFinalCltvRejectDelta,
HtlcHoldDuration: invoices.DefaultHtlcHoldDuration,
@@ -565,6 +568,7 @@ func newServer(cfg *Config, listenAddrs []net.Addr,
GcCanceledInvoicesOnStartup: cfg.GcCanceledInvoicesOnStartup,
GcCanceledInvoicesOnTheFly: cfg.GcCanceledInvoicesOnTheFly,
KeysendHoldTime: cfg.KeysendHoldTime,
HtlcModifier: invoiceHtlcModifier,
}
s := &server{
@@ -613,6 +617,8 @@ func newServer(cfg *Config, listenAddrs []net.Addr,
peerConnectedListeners: make(map[string][]chan<- lnpeer.Peer),
peerDisconnectedListeners: make(map[string][]chan<- struct{}),
invoiceHtlcModifier: invoiceHtlcModifier,
customMessageServer: subscribe.NewServer(),
tlsManager: tlsManager,
@@ -2018,6 +2024,12 @@ func (s *server) Start() error {
}
cleanup = cleanup.add(s.interceptableSwitch.Stop)
if err := s.invoiceHtlcModifier.Start(); err != nil {
startErr = err
return
}
cleanup = cleanup.add(s.invoiceHtlcModifier.Stop)
if err := s.chainArb.Start(); err != nil {
startErr = err
return