responder

package
v0.0.0-...-9756ca3 Latest Latest
Warning

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

Go to latest
Published: Jul 20, 2022 License: MIT Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Delegate

type Delegate interface {
}

type Hdr

type Hdr struct {
	dns.RR_Header
}

func NewHdr

func NewHdr(name string, typ, cls uint16, ttl uint32) Hdr

func (Hdr) GetClass

func (hdr Hdr) GetClass() uint16

func (*Hdr) GetName

func (hdr *Hdr) GetName() string

func (Hdr) GetTtl

func (hdr Hdr) GetTtl() uint32

func (Hdr) GetType

func (hdr Hdr) GetType() uint16

func (Hdr) SetTtl

func (hdr Hdr) SetTtl(ttl uint32)

type IPv4Responder

type IPv4Responder struct {
	dns.A
}

func NewIPv4Responder

func NewIPv4Responder(qname string, ip *netip.Addr) *IPv4Responder

func (IPv4Responder) GetClass

func (ipv4 IPv4Responder) GetClass() uint16

func (IPv4Responder) GetName

func (ipv4 IPv4Responder) GetName() string

func (IPv4Responder) GetTtl

func (ipv4 IPv4Responder) GetTtl() uint32

func (IPv4Responder) GetType

func (ipv4 IPv4Responder) GetType() uint16

func (*IPv4Responder) ResourceRecord

func (ipv4 *IPv4Responder) ResourceRecord() dns.RR

func (IPv4Responder) SetTtl

func (ipv4 IPv4Responder) SetTtl(ttl uint32)

type IPv6Responder

type IPv6Responder struct {
	dns.AAAA
}

func NewIPv6Responder

func NewIPv6Responder(qname string, ip *netip.Addr) *IPv6Responder

func (IPv6Responder) GetClass

func (ipv6 IPv6Responder) GetClass() uint16

func (IPv6Responder) GetName

func (ipv6 IPv6Responder) GetName() string

func (IPv6Responder) GetTtl

func (ipv6 IPv6Responder) GetTtl() uint32

func (IPv6Responder) GetType

func (ipv6 IPv6Responder) GetType() uint16

func (IPv6Responder) ResourceRecord

func (ipv6 IPv6Responder) ResourceRecord() dns.RR

func (IPv6Responder) SetTtl

func (ipv4 IPv6Responder) SetTtl(ttl uint32)

type PtrResponder

type PtrResponder struct {
	dns.PTR
}

func NewPtrResponder

func NewPtrResponder(name, target string) *PtrResponder

func (PtrResponder) GetClass

func (p PtrResponder) GetClass() uint16

func (PtrResponder) GetName

func (p PtrResponder) GetName() string

func (PtrResponder) GetTtl

func (p PtrResponder) GetTtl() uint32

func (PtrResponder) GetType

func (p PtrResponder) GetType() uint16

func (PtrResponder) ResourceRecord

func (p PtrResponder) ResourceRecord() dns.RR

func (PtrResponder) SetTtl

func (p PtrResponder) SetTtl(ttl uint32)

type QueryResponder

type QueryResponder struct {
	ResponderInfos []*QueryResponderInfo // TODO 数量需要做限定
}

func NewQueryResponder

func NewQueryResponder() *QueryResponder

func (*QueryResponder) AddResponder

func (*QueryResponder) ResetAdditionals

func (r *QueryResponder) ResetAdditionals()

type QueryResponderInfo

type QueryResponderInfo struct {
	Responder Responder

	LastMulticastTime time.Time
	// contains filtered or unexported fields
}

func NewQueryResponderInfo

func NewQueryResponderInfo(r Responder) QueryResponderInfo

type QueryResponderRecordFilter

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

func (*QueryResponderRecordFilter) Accept

func (*QueryResponderRecordFilter) SetIncludeAdditionalRepliesOnly

func (f *QueryResponderRecordFilter) SetIncludeAdditionalRepliesOnly(b bool) *QueryResponderRecordFilter

func (*QueryResponderRecordFilter) SetIncludeOnlyMulticastBeforeMS

func (f *QueryResponderRecordFilter) SetIncludeOnlyMulticastBeforeMS(t time.Time)

func (*QueryResponderRecordFilter) SetReplyFilter

type QueryResponderSettings

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

func NewQueryResponderSettings

func NewQueryResponderSettings(info *QueryResponderInfo) *QueryResponderSettings

func (*QueryResponderSettings) IsValid

func (s *QueryResponderSettings) IsValid() bool

func (*QueryResponderSettings) SetReportAdditional

func (s *QueryResponderSettings) SetReportAdditional(qName string) *QueryResponderSettings

func (*QueryResponderSettings) SetReportInServiceListing

func (s *QueryResponderSettings) SetReportInServiceListing(reportService bool) *QueryResponderSettings

type RecordResponder

type RecordResponder interface {
	Responder
}

type ReplyFilter

type ReplyFilter interface {
	Accept(t uint16, c uint16, n string) bool
}

type ResourceRecord

type ResourceRecord interface {
	dns.RR
}

type Responder

type Responder interface {
	GetClass() uint16
	GetName() string
	GetType() uint16
	GetTtl() uint32
	SetTtl(uint32)
	ResourceRecord() dns.RR
}

type ResponseConfiguration

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

func (ResponseConfiguration) Adjust

func (c ResponseConfiguration) Adjust(r Responder)

func (*ResponseConfiguration) SetTtlSecondsOverride

func (c *ResponseConfiguration) SetTtlSecondsOverride(i uint32)

type SrvResponder

type SrvResponder struct {
	dns.SRV
}

func NewSrvResponder

func NewSrvResponder(qName string, serverName string, port uint16) *SrvResponder

func (SrvResponder) GetClass

func (srv SrvResponder) GetClass() uint16

func (SrvResponder) GetName

func (srv SrvResponder) GetName() string

func (SrvResponder) GetTtl

func (srv SrvResponder) GetTtl() uint32

func (SrvResponder) GetType

func (srv SrvResponder) GetType() uint16

func (SrvResponder) ResourceRecord

func (srv SrvResponder) ResourceRecord() dns.RR

func (SrvResponder) SetTtl

func (srv SrvResponder) SetTtl(ttl uint32)

type TxtResponder

type TxtResponder struct {
	dns.TXT
}

func NewTxtResponder

func NewTxtResponder(qname string, txt []string) *TxtResponder

func (*TxtResponder) GetClass

func (txt *TxtResponder) GetClass() uint16

func (*TxtResponder) GetName

func (txt *TxtResponder) GetName() string

func (*TxtResponder) GetTtl

func (txt *TxtResponder) GetTtl() uint32

func (*TxtResponder) GetType

func (txt *TxtResponder) GetType() uint16

func (*TxtResponder) ResourceRecord

func (txt *TxtResponder) ResourceRecord() dns.RR

func (*TxtResponder) SetTtl

func (txt *TxtResponder) SetTtl(ttl uint32)

Jump to

Keyboard shortcuts

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