Documentation
¶
Index ¶
- Variables
- func CalculateTTL(message *dns.Msg) (ttl uint32)
- func EdnsBackwards(req *dns.Msg, resp *dns.Msg) *dns.Msg
- func NewDNSRecordError(rcode int) error
- func OverwriteTTL(message *dns.Msg, ttl uint32)
- type Cache
- type CacheEntry
- type CacheOptions
- type Client
- type Dialer
- type HeadlessClient
- func (c *HeadlessClient) CleanCache() int
- func (c *HeadlessClient) Close() error
- func (c *HeadlessClient) ExchangeTransport(ctx context.Context, trans transport.Transport, message *dns.Msg) (response *dns.Msg, err error)
- func (c *HeadlessClient) LookupTransport(ctx context.Context, trans transport.Transport, fqdn string, ...) (addresses []netip.Addr, err error)
- type TransportClient
Constants ¶
This section is empty.
Variables ¶
View Source
var FixedResponse = transport.FixedResponse
View Source
var SystemClient = &TransportClient{ HeadlessClient: NewHeadlessClient(NewCache()), Transport: transport.NewLocalTransport(nil), }
Functions ¶
func CalculateTTL ¶
func NewDNSRecordError ¶
func OverwriteTTL ¶
Types ¶
type Cache ¶
type Cache interface {
LoadOrStore(ctx context.Context, message *dns.Msg,
constructor func(ctx context.Context, message *dns.Msg) (*dns.Msg, error)) (*dns.Msg, error)
Store(message *dns.Msg) bool
Clear() int
}
func NewCacheSize ¶
func NewCacheSize(opt CacheOptions) (Cache, error)
type CacheOptions ¶
type Dialer ¶
type Dialer struct {
// contains filtered or unexported fields
}
func NewResolvDialerWithStrategy ¶ added in v0.0.3
func (*Dialer) DialContext ¶
func (*Dialer) ListenPacket ¶
type HeadlessClient ¶ added in v0.0.3
type HeadlessClient struct {
// contains filtered or unexported fields
}
func NewHeadlessClient ¶ added in v0.0.3
func NewHeadlessClient(cache Cache) *HeadlessClient
func (*HeadlessClient) CleanCache ¶ added in v0.0.3
func (c *HeadlessClient) CleanCache() int
func (*HeadlessClient) Close ¶ added in v0.0.3
func (c *HeadlessClient) Close() error
func (*HeadlessClient) ExchangeTransport ¶ added in v0.0.3
type TransportClient ¶ added in v0.0.3
type TransportClient struct {
*HeadlessClient
Transport transport.Transport
}
func (*TransportClient) Close ¶ added in v0.0.3
func (c *TransportClient) Close() error
Click to show internal directories.
Click to hide internal directories.