Skip to content

Commit f1d65e5

Browse files
committed
terminal: add firewall interepters to rpc middleware manager
1 parent bc61be5 commit f1d65e5

File tree

1 file changed

+32
-23
lines changed

1 file changed

+32
-23
lines changed

terminal.go

Lines changed: 32 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ import (
2222
"github.com/lightninglabs/faraday/frdrpc"
2323
"github.com/lightninglabs/faraday/frdrpcserver"
2424
"github.com/lightninglabs/lightning-terminal/accounts"
25+
"github.com/lightninglabs/lightning-terminal/firewall"
2526
"github.com/lightninglabs/lightning-terminal/litrpc"
2627
"github.com/lightninglabs/lightning-terminal/perms"
2728
"github.com/lightninglabs/lightning-terminal/queue"
@@ -638,31 +639,39 @@ func (g *LightningTerminal) startSubservers() error {
638639
}
639640
g.sessionRpcServerStarted = true
640641

641-
if !g.cfg.RPCMiddleware.Disabled {
642-
log.Infof("Starting LiT account service")
643-
err := g.accountService.Start(
644-
g.lndClient.Client, g.lndClient.Router,
645-
g.lndClient.ChainParams,
646-
)
647-
if err != nil {
648-
return fmt.Errorf("error starting account service: %v",
649-
err)
650-
}
651-
g.accountServiceStarted = true
652-
653-
// Start the middleware manager.
654-
log.Infof("Starting LiT middleware manager")
655-
g.middleware = mid.NewManager(
656-
g.cfg.RPCMiddleware.InterceptTimeout,
657-
g.lndClient.Client, g.errQueue.ChanIn(),
658-
g.accountService,
659-
)
642+
// The rest of the function only applies if the rpc middleware
643+
// interceptor has been enabled.
644+
if g.cfg.RPCMiddleware.Disabled {
645+
log.Infof("Internal sub server startup complete")
660646

661-
if err = g.middleware.Start(); err != nil {
662-
return err
663-
}
664-
g.middlewareStarted = true
647+
return nil
648+
}
649+
650+
log.Infof("Starting LiT account service")
651+
err = g.accountService.Start(
652+
g.lndClient.Client, g.lndClient.Router,
653+
g.lndClient.ChainParams,
654+
)
655+
if err != nil {
656+
return fmt.Errorf("error starting account service: %v",
657+
err)
658+
}
659+
g.accountServiceStarted = true
660+
661+
// Start the middleware manager.
662+
log.Infof("Starting LiT middleware manager")
663+
g.middleware = mid.NewManager(
664+
g.cfg.RPCMiddleware.InterceptTimeout,
665+
g.lndClient.Client, g.errQueue.ChanIn(),
666+
g.accountService,
667+
&firewall.RequestLogger{},
668+
&firewall.RuleEnforcer{},
669+
)
670+
671+
if err = g.middleware.Start(); err != nil {
672+
return err
665673
}
674+
g.middlewareStarted = true
666675

667676
log.Infof("Internal sub server startup complete")
668677

0 commit comments

Comments
 (0)