mirror of
https://github.com/lightninglabs/lightning-terminal.git
synced 2026-08-16 13:01:14 +02:00
This commit updates: - LND - pool - loop - taproot-assets - faraday - lighting-node-connect - aperture - lndclient - btclog We start using the new btclog v2 library and the associated breaking changes in the lnd/build package. With this commit, we deprecate the `--remote.lit-maxlogfiles` and `--remote.lit-maxlogfilesize` options and introduce new logging options under the `--remote.lit-logging` namespace. Finally, the LND update introduced a new `MaxBlocksMinedPerTest` variable in the `lntest` package that we now need to override in order for our itests to pass.
94 lines
2.9 KiB
Go
94 lines
2.9 KiB
Go
//go:build dev
|
|
// +build dev
|
|
|
|
package perms
|
|
|
|
import (
|
|
"net"
|
|
|
|
"github.com/btcsuite/btcd/chaincfg"
|
|
"github.com/lightningnetwork/lnd/autopilot"
|
|
"github.com/lightningnetwork/lnd/chainreg"
|
|
graphdb "github.com/lightningnetwork/lnd/graph/db"
|
|
"github.com/lightningnetwork/lnd/lnrpc"
|
|
"github.com/lightningnetwork/lnd/lnrpc/autopilotrpc"
|
|
"github.com/lightningnetwork/lnd/lnrpc/chainrpc"
|
|
"github.com/lightningnetwork/lnd/lnrpc/devrpc"
|
|
"github.com/lightningnetwork/lnd/lnrpc/invoicesrpc"
|
|
"github.com/lightningnetwork/lnd/lnrpc/neutrinorpc"
|
|
"github.com/lightningnetwork/lnd/lnrpc/peersrpc"
|
|
"github.com/lightningnetwork/lnd/lnrpc/routerrpc"
|
|
"github.com/lightningnetwork/lnd/lnrpc/signrpc"
|
|
"github.com/lightningnetwork/lnd/lnrpc/walletrpc"
|
|
"github.com/lightningnetwork/lnd/lnrpc/watchtowerrpc"
|
|
"github.com/lightningnetwork/lnd/lnrpc/wtclientrpc"
|
|
"github.com/lightningnetwork/lnd/lntest/mock"
|
|
"github.com/lightningnetwork/lnd/routing"
|
|
"github.com/lightningnetwork/lnd/sweep"
|
|
)
|
|
|
|
// mockConfig implements lnrpc.SubServerConfigDispatcher. It provides the
|
|
// functionality required so that the lnrpc.GrpcHandler.CreateSubServer
|
|
// function can be called without panicking.
|
|
type mockConfig struct{}
|
|
|
|
var _ lnrpc.SubServerConfigDispatcher = (*mockConfig)(nil)
|
|
|
|
// FetchConfig is a mock implementation of lnrpc.SubServerConfigDispatcher. It
|
|
// is used as a parameter to lnrpc.GrpcHandler.CreateSubServer and allows the
|
|
// function to be called without panicking. This is useful because
|
|
// CreateSubServer can be used to extract the permissions required by each
|
|
// registered subserver.
|
|
//
|
|
// TODO(elle): remove this once the sub-server permission lists in LND have been
|
|
// exported
|
|
func (t *mockConfig) FetchConfig(subServerName string) (interface{}, bool) {
|
|
switch subServerName {
|
|
case "InvoicesRPC":
|
|
return &invoicesrpc.Config{}, true
|
|
case "WatchtowerClientRPC":
|
|
return &wtclientrpc.Config{
|
|
Resolver: func(_, _ string) (*net.TCPAddr, error) {
|
|
return nil, nil
|
|
},
|
|
}, true
|
|
case "AutopilotRPC":
|
|
return &autopilotrpc.Config{
|
|
Manager: &autopilot.Manager{},
|
|
}, true
|
|
case "ChainRPC":
|
|
return &chainrpc.Config{
|
|
ChainNotifier: &chainreg.NoChainBackend{},
|
|
Chain: &mock.ChainIO{},
|
|
}, true
|
|
case "DevRPC":
|
|
return &devrpc.Config{
|
|
ActiveNetParams: &chaincfg.RegressionNetParams,
|
|
GraphDB: &graphdb.ChannelGraph{},
|
|
}, true
|
|
case "NeutrinoKitRPC":
|
|
return &neutrinorpc.Config{}, true
|
|
case "PeersRPC":
|
|
return &peersrpc.Config{}, true
|
|
case "RouterRPC":
|
|
return &routerrpc.Config{
|
|
Router: &routing.ChannelRouter{},
|
|
}, true
|
|
case "SignRPC":
|
|
return &signrpc.Config{
|
|
Signer: &mock.DummySigner{},
|
|
}, true
|
|
case "WalletKitRPC":
|
|
return &walletrpc.Config{
|
|
FeeEstimator: &chainreg.NoChainBackend{},
|
|
Wallet: &mock.WalletController{},
|
|
KeyRing: &mock.SecretKeyRing{},
|
|
Sweeper: &sweep.UtxoSweeper{},
|
|
Chain: &mock.ChainIO{},
|
|
}, true
|
|
case "WatchtowerRPC":
|
|
return &watchtowerrpc.Config{}, true
|
|
default:
|
|
return nil, false
|
|
}
|
|
}
|