forwarding

package
v0.0.0-...-84d5ceb Latest Latest
Warning

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

Go to latest
Published: Aug 31, 2021 License: BSD-3-Clause, GPL-2.0, MIT, + 1 more Imports: 21 Imported by: 0

Documentation

Overview

Copyright (c) 2018-2019, AT&T Intellectual Property. All rights reserved. SPDX-License-Identifier: GPL-2.0-only

Copyright (c) 2018-2019, AT&T Intellectual Property. All rights reserved. SPDX-License-Identifier: GPL-2.0-only

Copyright (c) 2018-2019, AT&T Intellectual Property. All rights reserved. SPDX-License-Identifier: GPL-2.0-only

Copyright (c) 2018-2019, AT&T Intellectual Property. All rights reserved. SPDX-License-Identifier: GPL-2.0-only

Copyright (c) 2018-2019, AT&T Intellectual Property. All rights reserved. SPDX-License-Identifier: GPL-2.0-only

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Config

type Config struct {
	// contains filtered or unexported fields
}

func NewConfig

func NewConfig(opts ...ConfigOption) *Config

func NewInstanceConfig

func NewInstanceConfig(name string, opts ...ConfigOption) *Config

func (*Config) Get

func (c *Config) Get() *ConfigData

func (*Config) Set

func (c *Config) Set(conf *ConfigData) error

type ConfigData

type ConfigData struct {
	DHCPInterfaces   []string `rfc7951:"dhcp,omitempty"`
	CacheSize        uint32   `rfc7951:"cache-size"`
	ListenInterfaces []string `rfc7951:"listen-on,omitempty"`
	Nameservers      []string `rfc7951:"name-server,omitempty"`
	System           bool     `rfc7951:"system,emptyleaf"`

	DomainOverrides []struct {
		Domain string `rfc7951:"tagnode"`
		Server string `rfc7951:"server"`
	} `rfc7951:"domain,omitempty"`
}

type ConfigOption

type ConfigOption func(*Config)

func ConfigDir

func ConfigDir(dir string, extensions ...string) ConfigOption

func ConfigFile

func ConfigFile(file string) ConfigOption

func DHCPConfigFileFmt

func DHCPConfigFileFmt(pattern string) ConfigOption

func DHCPWatchFmt

func DHCPWatchFmt(pattern string) ConfigOption

func ENVFile

func ENVFile(file string) ConfigOption

func HostsFile

func HostsFile(file string) ConfigOption

func InstanceName

func InstanceName(name string) ConfigOption

func PIDFile

func PIDFile(file string) ConfigOption

func ResolvFile

func ResolvFile(file string) ConfigOption

func StateFile

func StateFile(file string) ConfigOption

func SystemConfigFile

func SystemConfigFile(file string) ConfigOption

func Unit

func Unit(unit string) ConfigOption

type NameserverState

type NameserverState struct {
	IPAddress              string   `rfc7951:"address"`
	Port                   uint16   `rfc7951:"port"`
	QueriesSent            uint64   `rfc7951:"queries-sent"`
	QueriesRetriedOrFailed uint64   `rfc7951:"queries-retried-or-failed"`
	Provenance             string   `rfc7951:"provenance"`
	InUse                  bool     `rfc7951:"in-use"`
	DomainOverrideOnly     bool     `rfc7951:"domain-override-only"`
	Domains                []string `rfc7951:"domains,omitempty"`
}

type RPC

type RPC struct {
	// contains filtered or unexported fields
}

func RPCNew

func RPCNew(config *Config) *RPC

func (*RPC) ResetDnsForwarding

func (r *RPC) ResetDnsForwarding() (struct{}, error)

func (*RPC) ResetDnsForwardingCache

func (r *RPC) ResetDnsForwardingCache() (struct{}, error)

type State

type State struct {
	// contains filtered or unexported fields
}

func NewState

func NewState(config *Config) *State

func (*State) Get

func (s *State) Get() *StateData

type StateData

type StateData struct {
	State struct {
		QueriesForwarded uint64 `rfc7951:"queries-forwarded"`
		QueriesAnswered  uint64 `rfc7951:"queries-answered"`
		Cache            struct {
			Size          uint32 `rfc7951:"size"`
			Entries       uint64 `rfc7951:"cache-entries"`
			ReusedEntries uint64 `rfc7951:"reused-cache-entries"`
		} `rfc7951:"cache,omitempty"`
		Nameservers []NameserverState `rfc7951:"nameservers,omitempty"`
	} `rfc7951:"state,omitempty"`
}

Jump to

Keyboard shortcuts

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