conf

package
v0.0.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 27, 2022 License: MPL-2.0 Imports: 0 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ApiConfig

type ApiConfig struct {
	APIHost     string `mapstructure:"ApiHost"`
	NodeID      int    `mapstructure:"NodeID"`
	Key         string `mapstructure:"ApiKey"`
	NodeType    string `mapstructure:"NodeType"`
	EnableVless bool   `mapstructure:"EnableVless"`
	EnableXTLS  bool   `mapstructure:"EnableXTLS"`
	//EnableSS2022        bool    `mapstructure:"EnableSS2022"`
	Timeout             int     `mapstructure:"Timeout"`
	SpeedLimit          float64 `mapstructure:"SpeedLimit"`
	DeviceLimit         int     `mapstructure:"DeviceLimit"`
	RuleListPath        string  `mapstructure:"RuleListPath"`
	DisableCustomConfig bool    `mapstructure:"DisableCustomConfig"`
}

type CertConfig

type CertConfig struct {
	CertMode         string            `mapstructure:"CertMode"` // none, file, http, dns
	RejectUnknownSni bool              `mapstructure:"RejectUnknownSni"`
	CertDomain       string            `mapstructure:"CertDomain"`
	CertFile         string            `mapstructure:"CertFile"`
	KeyFile          string            `mapstructure:"KeyFile"`
	Provider         string            `mapstructure:"Provider"` // alidns, cloudflare, gandi, godaddy....
	Email            string            `mapstructure:"Email"`
	DNSEnv           map[string]string `mapstructure:"DNSEnv"`
}

type Conf

type Conf struct {
	LogConfig          *LogConfig       `mapstructure:"Log"`
	DnsConfigPath      string           `mapstructure:"DnsConfigPath"`
	InboundConfigPath  string           `mapstructure:"InboundConfigPath"`
	OutboundConfigPath string           `mapstructure:"OutboundConfigPath"`
	RouteConfigPath    string           `mapstructure:"RouteConfigPath"`
	ConnectionConfig   *ConnetionConfig `mapstructure:"ConnectionConfig"`
	NodesConfig        []*NodeConfig    `mapstructure:"Nodes"`
}

func New

func New() *Conf

type ConnetionConfig

type ConnetionConfig struct {
	Handshake    uint32 `mapstructure:"handshake"`
	ConnIdle     uint32 `mapstructure:"connIdle"`
	UplinkOnly   uint32 `mapstructure:"uplinkOnly"`
	DownlinkOnly uint32 `mapstructure:"downlinkOnly"`
	BufferSize   int32  `mapstructure:"bufferSize"`
}

func NewConnetionConfig

func NewConnetionConfig() *ConnetionConfig

type ControllerConfig

type ControllerConfig struct {
	ListenIP             string            `mapstructure:"ListenIP"`
	SendIP               string            `mapstructure:"SendIP"`
	UpdatePeriodic       int               `mapstructure:"UpdatePeriodic"`
	EnableDNS            bool              `mapstructure:"EnableDNS"`
	DNSType              string            `mapstructure:"DNSType"`
	DisableUploadTraffic bool              `mapstructure:"DisableUploadTraffic"`
	DisableGetRule       bool              `mapstructure:"DisableGetRule"`
	EnableProxyProtocol  bool              `mapstructure:"EnableProxyProtocol"`
	EnableFallback       bool              `mapstructure:"EnableFallback"`
	DisableIVCheck       bool              `mapstructure:"DisableIVCheck"`
	DisableSniffing      bool              `mapstructure:"DisableSniffing"`
	FallBackConfigs      []*FallBackConfig `mapstructure:"FallBackConfigs"`
	EnableIpRecorder     bool              `mapstructure:"EnableIpRecorder"`
	IpRecorderConfig     *IpReportConfig   `mapstructure:"IpRecorderConfig"`
	CertConfig           *CertConfig       `mapstructure:"CertConfig"`
}

type FallBackConfig

type FallBackConfig struct {
	SNI              string `mapstructure:"SNI"`
	Alpn             string `mapstructure:"Alpn"`
	Path             string `mapstructure:"Path"`
	Dest             string `mapstructure:"Dest"`
	ProxyProtocolVer uint64 `mapstructure:"ProxyProtocolVer"`
}

type IpReportConfig

type IpReportConfig struct {
	Url          string `mapstructure:"Url"`
	Token        string `mapstructure:"Token"`
	Periodic     int    `mapstructure:"Periodic"`
	Timeout      int    `mapstructure:"Timeout"`
	EnableIpSync bool   `mapstructure:"EnableIpSync"`
}

type LogConfig

type LogConfig struct {
	Level      string `mapstructure:"Level"`
	AccessPath string `mapstructure:"AccessPath"`
	ErrorPath  string `mapstructure:"ErrorPath"`
}

func NewLogConfig

func NewLogConfig() *LogConfig

type NodeConfig

type NodeConfig struct {
	ApiConfig        *ApiConfig        `mapstructure:"ApiConfig"`
	ControllerConfig *ControllerConfig `mapstructure:"ControllerConfig"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL