dnssrv

package
v0.0.0-...-d0d2c37 Latest Latest
Warning

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

Go to latest
Published: Jan 19, 2024 License: MIT Imports: 14 Imported by: 0

Documentation

Index

Constants

View Source
const (
	DefaultMaxTCPQueries = -1
	DefaultTimeout       = 2 * time.Second
)

Variables

This section is empty.

Functions

This section is empty.

Types

type ClientConfig

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

func NewClientConfig

func NewClientConfig() *ClientConfig

func (*ClientConfig) Build

func (c *ClientConfig) Build() *ClientConfig

func (*ClientConfig) Validate

func (c *ClientConfig) Validate() error

func (*ClientConfig) WithAddr

func (c *ClientConfig) WithAddr(addr string) *ClientConfig

func (*ClientConfig) WithDialTimeout

func (c *ClientConfig) WithDialTimeout(timeout time.Duration) *ClientConfig

func (*ClientConfig) WithReadTimeout

func (c *ClientConfig) WithReadTimeout(timeout time.Duration) *ClientConfig

func (*ClientConfig) WithWriteTimeout

func (c *ClientConfig) WithWriteTimeout(timeout time.Duration) *ClientConfig

type IPHandler

type IPHandler func(RR)

type IPKind

type IPKind uint8
const (
	IPKindNone IPKind = iota
	IPKindV4
	IPKindV6
)

func (IPKind) MarshalJSON

func (k IPKind) MarshalJSON() ([]byte, error)

func (IPKind) MarshalYAML

func (k IPKind) MarshalYAML() (interface{}, error)

func (IPKind) String

func (k IPKind) String() string

func (*IPKind) UnmarshalJSON

func (k *IPKind) UnmarshalJSON(in []byte) error

func (*IPKind) UnmarshalText

func (k *IPKind) UnmarshalText(in []byte) error

func (*IPKind) UnmarshalYAML

func (k *IPKind) UnmarshalYAML(val *yaml.Node) error

type RR

type RR struct {
	FQDN string
	Kind IPKind
	IP   net.IP
	TTL  uint32
}

type Server

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

func NewServer

func NewServer(srvCfg *ServerConfig, clientCfg *ClientConfig) (*Server, error)

func (*Server) ListenAndServe

func (s *Server) ListenAndServe() error

func (*Server) Shutdown

func (s *Server) Shutdown(ctx context.Context) error

type ServerConfig

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

func NewServerConfig

func NewServerConfig() *ServerConfig

func (*ServerConfig) Build

func (c *ServerConfig) Build() *ServerConfig

func (*ServerConfig) Validate

func (c *ServerConfig) Validate() error

func (*ServerConfig) WithAddrs

func (c *ServerConfig) WithAddrs(addrs ...string) *ServerConfig

func (*ServerConfig) WithHandler

func (c *ServerConfig) WithHandler(handler IPHandler) *ServerConfig

func (*ServerConfig) WithMaxTCPQueries

func (c *ServerConfig) WithMaxTCPQueries(maxQueries int) *ServerConfig

func (*ServerConfig) WithObservableIPKinds

func (c *ServerConfig) WithObservableIPKinds(kinds ...IPKind) *ServerConfig

func (*ServerConfig) WithObservableNets

func (c *ServerConfig) WithObservableNets(nets ...string) *ServerConfig

func (*ServerConfig) WithReadTimeout

func (c *ServerConfig) WithReadTimeout(timeout time.Duration) *ServerConfig

func (*ServerConfig) WithWriteTimeout

func (c *ServerConfig) WithWriteTimeout(timeout time.Duration) *ServerConfig

Jump to

Keyboard shortcuts

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