mirror of
https://github.com/StackExchange/dnscontrol.git
synced 2024-05-11 05:55:12 +00:00
fix: correct order for dhcid
This commit is contained in:
@ -182,6 +182,10 @@ func matrixData() *FeatureMatrix {
|
|||||||
DomainModifierCaa,
|
DomainModifierCaa,
|
||||||
providers.CanUseCAA,
|
providers.CanUseCAA,
|
||||||
)
|
)
|
||||||
|
setCapability(
|
||||||
|
DomainModifierDhcid,
|
||||||
|
providers.CanUseDHCID,
|
||||||
|
)
|
||||||
setCapability(
|
setCapability(
|
||||||
DomainModifierDs,
|
DomainModifierDs,
|
||||||
providers.CanUseDS,
|
providers.CanUseDS,
|
||||||
@ -214,10 +218,6 @@ func matrixData() *FeatureMatrix {
|
|||||||
DomainModifierTlsa,
|
DomainModifierTlsa,
|
||||||
providers.CanUseTLSA,
|
providers.CanUseTLSA,
|
||||||
)
|
)
|
||||||
setCapability(
|
|
||||||
DomainModifierDhcid,
|
|
||||||
providers.CanUseDHCID,
|
|
||||||
)
|
|
||||||
setCapability(
|
setCapability(
|
||||||
GetZones,
|
GetZones,
|
||||||
providers.CanGetZones,
|
providers.CanGetZones,
|
||||||
|
@ -74,6 +74,8 @@ func RRtoRC(rr dns.RR, origin string) (RecordConfig, error) {
|
|||||||
err = rc.SetTargetCAA(v.Flag, v.Tag, v.Value)
|
err = rc.SetTargetCAA(v.Flag, v.Tag, v.Value)
|
||||||
case *dns.CNAME:
|
case *dns.CNAME:
|
||||||
err = rc.SetTarget(v.Target)
|
err = rc.SetTarget(v.Target)
|
||||||
|
case *dns.DHCID:
|
||||||
|
err = rc.SetTarget(v.Digest)
|
||||||
case *dns.DS:
|
case *dns.DS:
|
||||||
err = rc.SetTargetDS(v.KeyTag, v.Algorithm, v.DigestType, v.Digest)
|
err = rc.SetTargetDS(v.KeyTag, v.Algorithm, v.DigestType, v.Digest)
|
||||||
case *dns.LOC:
|
case *dns.LOC:
|
||||||
@ -96,8 +98,6 @@ func RRtoRC(rr dns.RR, origin string) (RecordConfig, error) {
|
|||||||
err = rc.SetTargetTLSA(v.Usage, v.Selector, v.MatchingType, v.Certificate)
|
err = rc.SetTargetTLSA(v.Usage, v.Selector, v.MatchingType, v.Certificate)
|
||||||
case *dns.TXT:
|
case *dns.TXT:
|
||||||
err = rc.SetTargetTXTs(v.Txt)
|
err = rc.SetTargetTXTs(v.Txt)
|
||||||
case *dns.DHCID:
|
|
||||||
err = rc.SetTarget(v.Digest)
|
|
||||||
default:
|
default:
|
||||||
return *rc, fmt.Errorf("rrToRecord: Unimplemented zone record type=%s (%v)", rc.Type, rr)
|
return *rc, fmt.Errorf("rrToRecord: Unimplemented zone record type=%s (%v)", rc.Type, rr)
|
||||||
}
|
}
|
||||||
|
@ -390,6 +390,8 @@ func (rc *RecordConfig) ToRR() dns.RR {
|
|||||||
rr.(*dns.CAA).Value = rc.GetTargetField()
|
rr.(*dns.CAA).Value = rc.GetTargetField()
|
||||||
case dns.TypeCNAME:
|
case dns.TypeCNAME:
|
||||||
rr.(*dns.CNAME).Target = rc.GetTargetField()
|
rr.(*dns.CNAME).Target = rc.GetTargetField()
|
||||||
|
case dns.TypeDHCID:
|
||||||
|
rr.(*dns.DHCID).Digest = rc.GetTargetField()
|
||||||
case dns.TypeDS:
|
case dns.TypeDS:
|
||||||
rr.(*dns.DS).Algorithm = rc.DsAlgorithm
|
rr.(*dns.DS).Algorithm = rc.DsAlgorithm
|
||||||
rr.(*dns.DS).DigestType = rc.DsDigestType
|
rr.(*dns.DS).DigestType = rc.DsDigestType
|
||||||
@ -446,8 +448,6 @@ func (rc *RecordConfig) ToRR() dns.RR {
|
|||||||
rr.(*dns.TLSA).Certificate = rc.GetTargetField()
|
rr.(*dns.TLSA).Certificate = rc.GetTargetField()
|
||||||
case dns.TypeTXT:
|
case dns.TypeTXT:
|
||||||
rr.(*dns.TXT).Txt = rc.TxtStrings
|
rr.(*dns.TXT).Txt = rc.TxtStrings
|
||||||
case dns.TypeDHCID:
|
|
||||||
rr.(*dns.DHCID).Digest = rc.GetTargetField()
|
|
||||||
default:
|
default:
|
||||||
panic(fmt.Sprintf("ToRR: Unimplemented rtype %v", rc.Type))
|
panic(fmt.Sprintf("ToRR: Unimplemented rtype %v", rc.Type))
|
||||||
// We panic so that we quickly find any switch statements
|
// We panic so that we quickly find any switch statements
|
||||||
|
@ -222,7 +222,7 @@ func checkTargets(rec *models.RecordConfig, domain string) (errs []error) {
|
|||||||
}
|
}
|
||||||
case "SRV":
|
case "SRV":
|
||||||
check(checkTarget(target))
|
check(checkTarget(target))
|
||||||
case "TXT", "IMPORT_TRANSFORM", "CAA", "SSHFP", "TLSA", "DS", "DHCID":
|
case "CAA", "DHCID", "DS", "IMPORT_TRANSFORM", "SSHFP", "TLSA", "TXT":
|
||||||
default:
|
default:
|
||||||
if rec.Metadata["orig_custom_type"] != "" {
|
if rec.Metadata["orig_custom_type"] != "" {
|
||||||
// it is a valid custom type. We perform no validation on target
|
// it is a valid custom type. We perform no validation on target
|
||||||
@ -689,6 +689,7 @@ var providerCapabilityChecks = []pairTypeCapability{
|
|||||||
capabilityCheck("AUTODNSSEC", providers.CanAutoDNSSEC),
|
capabilityCheck("AUTODNSSEC", providers.CanAutoDNSSEC),
|
||||||
capabilityCheck("AZURE_ALIAS", providers.CanUseAzureAlias),
|
capabilityCheck("AZURE_ALIAS", providers.CanUseAzureAlias),
|
||||||
capabilityCheck("CAA", providers.CanUseCAA),
|
capabilityCheck("CAA", providers.CanUseCAA),
|
||||||
|
capabilityCheck("DHCID", providers.CanUseDHCID),
|
||||||
capabilityCheck("LOC", providers.CanUseLOC),
|
capabilityCheck("LOC", providers.CanUseLOC),
|
||||||
capabilityCheck("NAPTR", providers.CanUseNAPTR),
|
capabilityCheck("NAPTR", providers.CanUseNAPTR),
|
||||||
capabilityCheck("PTR", providers.CanUsePTR),
|
capabilityCheck("PTR", providers.CanUsePTR),
|
||||||
@ -697,7 +698,6 @@ var providerCapabilityChecks = []pairTypeCapability{
|
|||||||
capabilityCheck("SRV", providers.CanUseSRV),
|
capabilityCheck("SRV", providers.CanUseSRV),
|
||||||
capabilityCheck("SSHFP", providers.CanUseSSHFP),
|
capabilityCheck("SSHFP", providers.CanUseSSHFP),
|
||||||
capabilityCheck("TLSA", providers.CanUseTLSA),
|
capabilityCheck("TLSA", providers.CanUseTLSA),
|
||||||
capabilityCheck("DHCID", providers.CanUseDHCID),
|
|
||||||
|
|
||||||
// DS needs special record-level checks
|
// DS needs special record-level checks
|
||||||
{
|
{
|
||||||
|
@ -36,6 +36,7 @@ var features = providers.DocumentationNotes{
|
|||||||
providers.CanAutoDNSSEC: providers.Can("Just writes out a comment indicating DNSSEC was requested"),
|
providers.CanAutoDNSSEC: providers.Can("Just writes out a comment indicating DNSSEC was requested"),
|
||||||
providers.CanGetZones: providers.Can(),
|
providers.CanGetZones: providers.Can(),
|
||||||
providers.CanUseCAA: providers.Can(),
|
providers.CanUseCAA: providers.Can(),
|
||||||
|
providers.CanUseDHCID: providers.Can(),
|
||||||
providers.CanUseDS: providers.Can(),
|
providers.CanUseDS: providers.Can(),
|
||||||
providers.CanUseLOC: providers.Can(),
|
providers.CanUseLOC: providers.Can(),
|
||||||
providers.CanUseNAPTR: providers.Can(),
|
providers.CanUseNAPTR: providers.Can(),
|
||||||
@ -44,7 +45,6 @@ var features = providers.DocumentationNotes{
|
|||||||
providers.CanUseSRV: providers.Can(),
|
providers.CanUseSRV: providers.Can(),
|
||||||
providers.CanUseSSHFP: providers.Can(),
|
providers.CanUseSSHFP: providers.Can(),
|
||||||
providers.CanUseTLSA: providers.Can(),
|
providers.CanUseTLSA: providers.Can(),
|
||||||
providers.CanUseDHCID: providers.Can(),
|
|
||||||
providers.CantUseNOPURGE: providers.Cannot(),
|
providers.CantUseNOPURGE: providers.Cannot(),
|
||||||
providers.DocCreateDomains: providers.Can("Driver just maintains list of zone files. It should automatically add missing ones."),
|
providers.DocCreateDomains: providers.Can("Driver just maintains list of zone files. It should automatically add missing ones."),
|
||||||
providers.DocDualHost: providers.Can(),
|
providers.DocDualHost: providers.Can(),
|
||||||
|
@ -32,6 +32,9 @@ const (
|
|||||||
// CanUseCAA indicates the provider can handle CAA records
|
// CanUseCAA indicates the provider can handle CAA records
|
||||||
CanUseCAA
|
CanUseCAA
|
||||||
|
|
||||||
|
// CanUseDHCID indicates the provider can handle DHCID records
|
||||||
|
CanUseDHCID
|
||||||
|
|
||||||
// CanUseDS indicates that the provider can handle DS record types. This
|
// CanUseDS indicates that the provider can handle DS record types. This
|
||||||
// implies CanUseDSForChildren without specifying the latter explicitly.
|
// implies CanUseDSForChildren without specifying the latter explicitly.
|
||||||
CanUseDS
|
CanUseDS
|
||||||
@ -78,9 +81,6 @@ const (
|
|||||||
|
|
||||||
// DocOfficiallySupported means it is actively used and maintained by stack exchange
|
// DocOfficiallySupported means it is actively used and maintained by stack exchange
|
||||||
DocOfficiallySupported
|
DocOfficiallySupported
|
||||||
|
|
||||||
// CanUseDHCID indicates the provider can handle DHCID records
|
|
||||||
CanUseDHCID
|
|
||||||
)
|
)
|
||||||
|
|
||||||
var providerCapabilities = map[string]map[Capability]bool{}
|
var providerCapabilities = map[string]map[Capability]bool{}
|
||||||
|
Reference in New Issue
Block a user