35 lines
1.4 KiB
Go
35 lines
1.4 KiB
Go
|
// +build chainrpc
|
||
|
|
||
|
package chainrpc
|
||
|
|
||
|
import (
|
||
|
"github.com/lightningnetwork/lnd/chainntnfs"
|
||
|
"github.com/lightningnetwork/lnd/macaroons"
|
||
|
)
|
||
|
|
||
|
// Config is the primary configuration struct for the chain notifier RPC server.
|
||
|
// It contains all the items required for the server to carry out its duties.
|
||
|
// The fields with struct tags are meant to be parsed as normal configuration
|
||
|
// options, while if able to be populated, the latter fields MUST also be
|
||
|
// specified.
|
||
|
type Config struct {
|
||
|
// ChainNotifierMacPath is the path for the chain notifier macaroon. If
|
||
|
// unspecified then we assume that the macaroon will be found under the
|
||
|
// network directory, named DefaultChainNotifierMacFilename.
|
||
|
ChainNotifierMacPath string `long:"notifiermacaroonpath" description:"Path to the chain notifier macaroon"`
|
||
|
|
||
|
// NetworkDir is the main network directory wherein the chain notifier
|
||
|
// RPC server will find the macaroon named
|
||
|
// DefaultChainNotifierMacFilename.
|
||
|
NetworkDir string
|
||
|
|
||
|
// MacService is the main macaroon service that we'll use to handle
|
||
|
// authentication for the chain notifier RPC server.
|
||
|
MacService *macaroons.Service
|
||
|
|
||
|
// ChainNotifier is the chain notifier instance that backs the chain
|
||
|
// notifier RPC server. The job of the chain notifier RPC server is
|
||
|
// simply to proxy valid requests to the active chain notifier instance.
|
||
|
ChainNotifier chainntnfs.ChainNotifier
|
||
|
}
|