clients

package
v1.6.1 Latest Latest
Warning

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

Go to latest
Published: Mar 8, 2020 License: MIT Imports: 9 Imported by: 0

Documentation

Overview

Package outbound implements multiple dns client and dispatcher for outbound connection.

Package outbound implements multiple dns client and dispatcher for outbound connection.

Package outbound implements multiple dns client and dispatcher for outbound connection.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type CacheClient

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

func NewCacheClient

func NewCacheClient(q *dns.Msg, ip string, cache *cache.Cache) *CacheClient

func (*CacheClient) Exchange

func (c *CacheClient) Exchange() *dns.Msg

type LocalClient

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

func NewLocalClient

func NewLocalClient(q *dns.Msg, h *hosts.Hosts, minimumTTL int, domainTTLMap map[string]uint32) *LocalClient

func (*LocalClient) Exchange

func (c *LocalClient) Exchange() *dns.Msg

type RemoteClient

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

func NewClient

func NewClient(q *dns.Msg, u *common.DNSUpstream, resolver resolver.Resolver, ip string, cache *cache.Cache) *RemoteClient

func (*RemoteClient) Exchange

func (c *RemoteClient) Exchange(isLog bool) *dns.Msg

func (*RemoteClient) ExchangeFromCache

func (c *RemoteClient) ExchangeFromCache() *dns.Msg

type RemoteClientBundle

type RemoteClientBundle struct {
	Name string
	// contains filtered or unexported fields
}

func NewClientBundle

func NewClientBundle(q *dns.Msg, ul []*common.DNSUpstream, resolvers []resolver.Resolver, ip string, minimumTTL int, cache *cache.Cache, name string, domainTTLMap map[string]uint32) *RemoteClientBundle

func (*RemoteClientBundle) CacheResultIfNeeded

func (cb *RemoteClientBundle) CacheResultIfNeeded()

func (*RemoteClientBundle) Exchange

func (cb *RemoteClientBundle) Exchange(isCache bool, isLog bool) *dns.Msg

func (*RemoteClientBundle) ExchangeFromCache

func (cb *RemoteClientBundle) ExchangeFromCache() *dns.Msg

func (*RemoteClientBundle) GetFirstQuestionDomain

func (cb *RemoteClientBundle) GetFirstQuestionDomain() string

func (*RemoteClientBundle) GetResponseMessage

func (cb *RemoteClientBundle) GetResponseMessage() *dns.Msg

func (*RemoteClientBundle) IsType

func (cb *RemoteClientBundle) IsType(t uint16) bool

Directories

Path Synopsis
Package outbound implements multiple dns client and dispatcher for outbound connection.
Package outbound implements multiple dns client and dispatcher for outbound connection.

Jump to

Keyboard shortcuts

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