Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var ErrDuplicate = fmt.Errorf("duplicate record")
View Source
var ErrNoZoneInList = fmt.Errorf("no zone in list")
View Source
var ErrNonExistentDomain = errors.New("non-existent domain")
View Source
var QueryWithDNSSEC = func() QueryOption { return func(o *queryOptions) { o.dnssec = true } }
View Source
var WithDNSSEC = func(algo dnssec.SigningAlgorithm, nsec dnssec.NextSecure) ZoneOption { return func(_ context.Context, z *Zone) error { z.dnssecEnabled = true z.signingAlgorithm = algo return nil } }
View Source
var WithDefaultTTL = func(ttl uint32) ZoneOption { return func(_ context.Context, z *Zone) error { z.defaultTTL = ttl return nil } }
View Source
var WithKSK = func(algo dnssec.SigningAlgorithm, key []byte) ZoneOption { return func(ctx context.Context, z *Zone) error { sgn, err := dnssec.SignerFromBytes(algo, key) if err != nil { return err } pk, err := dnssec.PublicKeyBase64(sgn.Public()) if err != nil { return err } ksk := &dns.DNSKEY{ Hdr: dns.RR_Header{ Name: z.name.Fqdn(), Rrtype: dns.TypeDNSKEY, Class: dns.ClassINET, Ttl: z.defaultTTL, }, Flags: dns.ZONE | dns.SEP, Protocol: dnssec.DNSKEY_PROTOCOL, Algorithm: uint8(algo), PublicKey: pk, } z.ksk = sgn z.kskTag = ksk.KeyTag() return z.Add(ctx, mindnspb.ProtoRRFromDns(ksk)) } }
View Source
var WithZSK = func(algo dnssec.SigningAlgorithm, key []byte) ZoneOption { return func(ctx context.Context, z *Zone) error { sgn, err := dnssec.SignerFromBytes(algo, key) if err != nil { return err } pk, err := dnssec.PublicKeyBase64(sgn.Public()) if err != nil { return err } zsk := &dns.DNSKEY{ Hdr: dns.RR_Header{ Name: z.name.Fqdn(), Rrtype: dns.TypeDNSKEY, Class: dns.ClassINET, Ttl: z.defaultTTL, }, Flags: dns.ZONE, Protocol: dnssec.DNSKEY_PROTOCOL, Algorithm: uint8(algo), PublicKey: pk, } z.zsk = sgn z.zskTag = zsk.KeyTag() return z.Add(ctx, mindnspb.ProtoRRFromDns(zsk)) } }
Functions ¶
This section is empty.
Types ¶
type DeleteRecord ¶ added in v0.4.2
type DeleteRecord struct{}
type QueryOption ¶ added in v0.4.2
type QueryOption func(*queryOptions)
type QueryResult ¶ added in v0.4.2
type UpdateRequest ¶ added in v0.4.2
type Zone ¶
type Zone struct {
// contains filtered or unexported fields
}
func (*Zone) Query ¶ added in v0.4.2
func (z *Zone) Query(ctx context.Context, qst *mindnspb.Question, opts ...QueryOption) (*QueryResult, error)
type ZoneList ¶
type ZoneList struct {
// contains filtered or unexported fields
}
func NewZoneList ¶
func NewZoneList() *ZoneList
func (*ZoneList) Get ¶
func (zl *ZoneList) Get(domain domainname.DomainName) (*Zone, error)
func (*ZoneList) Remove ¶
func (zl *ZoneList) Remove(domain domainname.DomainName)
Click to show internal directories.
Click to hide internal directories.