Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func GetAllBesideTORResolver ¶
func GetAllBesideTORResolver(c *config.Config, ch []cachehandler.CacheHandler) map[string][]ResolveHandler
Types ¶
type CacheResolve ¶
type CacheResolve struct { CacheHandler cachehandler.CacheHandler DnsTTL int }
func (*CacheResolve) Close ¶
func (s *CacheResolve) Close() error
func (*CacheResolve) GetName ¶
func (s *CacheResolve) GetName() string
func (*CacheResolve) Init ¶
func (s *CacheResolve) Init() error
type DoTResolve ¶
type DoTResolve struct { ServerHosts string ServerOpts []dotdns.DoTOption DNSCache []cachehandler.CacheHandler // to support cache DnsTTL int // contains filtered or unexported fields }
func (*DoTResolve) Close ¶
func (dt *DoTResolve) Close() error
func (*DoTResolve) GetName ¶
func (dt *DoTResolve) GetName() string
func (*DoTResolve) Init ¶
func (dt *DoTResolve) Init() error
type MemoryResolve ¶
MemoryResolve implement ResolveHandler so we can
func (*MemoryResolve) Close ¶
func (m *MemoryResolve) Close() error
func (*MemoryResolve) GetName ¶
func (m *MemoryResolve) GetName() string
func (*MemoryResolve) Init ¶
func (m *MemoryResolve) Init() error
type ResolveHandler ¶
type ResolveHandler interface { Init() error // To initialize upstream Resolve(string) ([]dns.RR, error) // To resolve the query from DNS to A GetName() string Close() error }
ResolveHandler is interface to handle all resolving options, currently we support local memory and tor network we can add another options in the future
type TorResolve ¶
type TorResolve struct { OnionDNSServer string Name string DNSCache []cachehandler.CacheHandler // to support cache DnsTTL int // contains filtered or unexported fields }
func GetTORResolver ¶
func GetTORResolver(c *config.Config, ch []cachehandler.CacheHandler) *TorResolve
func (*TorResolve) Close ¶
func (tr *TorResolve) Close() error
Close function is a function to close any open connections/processes to upstream
func (*TorResolve) GetName ¶
func (tr *TorResolve) GetName() string
func (*TorResolve) Init ¶
func (tr *TorResolve) Init() error
Click to show internal directories.
Click to hide internal directories.