Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion providers/bunnydns/bunnydnsProvider.go
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ var features = providers.DocumentationNotes{
providers.CanUseSOA: providers.Cannot(),
providers.CanUseSRV: providers.Can(),
providers.CanUseSSHFP: providers.Cannot(),
providers.CanUseTLSA: providers.Cannot(),
providers.CanUseTLSA: providers.Can(),
providers.DocCreateDomains: providers.Can(),
providers.DocDualHost: providers.Cannot(),
providers.DocOfficiallySupported: providers.Cannot(),
Expand Down
9 changes: 9 additions & 0 deletions providers/bunnydns/convert.go
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,8 @@ func fromRecordConfig(rc *models.RecordConfig) (*record, error) {
r.Tag = rc.CaaTag
case recordTypeMX:
r.Priority = rc.MxPreference
case recordTypeTLSA:
r.Value = fmt.Sprintf("%d %d %d %s", rc.TlsaUsage, rc.TlsaSelector, rc.TlsaMatchingType, rc.GetTargetField())
}

// While Bunny DNS does not use trailing dots, it still accepts and even preserves them for certain record types.
Expand Down Expand Up @@ -70,6 +72,8 @@ func toRecordConfig(domain string, r *record) (*models.RecordConfig, error) {
err = rc.SetTargetMX(r.Priority, recordValue)
case "SRV":
err = rc.SetTargetSRV(r.Priority, r.Weight, r.Port, recordValue)
case "TLSA":
err = rc.SetTargetTLSAString(recordValue)
default:
err = rc.PopulateFromStringFunc(rc.Type, recordValue, domain, nil)
}
Expand All @@ -96,6 +100,7 @@ const (
recordTypePTR recordType = 10
recordTypeScript recordType = 11
recordTypeNS recordType = 12
recordTypeTLSA recordType = 15
)

func recordTypeFromString(t string) recordType {
Expand Down Expand Up @@ -124,6 +129,8 @@ func recordTypeFromString(t string) recordType {
return recordTypeScript
case "NS":
return recordTypeNS
case "TLSA":
return recordTypeTLSA
case "BUNNY_DNS_RDR":
return recordTypeRedirect
default:
Expand Down Expand Up @@ -159,6 +166,8 @@ func recordTypeToString(t recordType) string {
return "SCRIPT"
case recordTypeNS:
return "NS"
case recordTypeTLSA:
return "TLSA"
default:
panic(fmt.Errorf("BUNNY_DNS: native rtype %v unimplemented", t))
}
Expand Down