diff --git a/models/target.go b/models/target.go index f082eb50d..32146ad76 100644 --- a/models/target.go +++ b/models/target.go @@ -91,6 +91,10 @@ func (rc *RecordConfig) zoneFileQuoted() string { return full[len(header):] } +func (rc *RecordConfig) GetTargetRFC1035Quoted() string { + return rc.zoneFileQuoted() +} + // GetTargetSortable returns a string that is sortable. func (rc *RecordConfig) GetTargetSortable() string { return rc.GetTargetDebug() diff --git a/providers/cloudflare/rest.go b/providers/cloudflare/rest.go index 7548ac51b..4314a980c 100644 --- a/providers/cloudflare/rest.go +++ b/providers/cloudflare/rest.go @@ -119,7 +119,7 @@ func (c *cloudflareProvider) createRec(rec *models.RecordConfig, domainID string prio = fmt.Sprintf(" %d ", rec.MxPreference) } if rec.Type == "TXT" { - content = rec.GetTargetField() + content = rec.GetTargetRFC1035Quoted() } if rec.Type == "DS" { content = fmt.Sprintf("%d %d %d %s", rec.DsKeyTag, rec.DsAlgorithm, rec.DsDigestType, rec.DsDigest) @@ -183,9 +183,7 @@ func (c *cloudflareProvider) modifyRecord(domainID, recID string, proxied bool, TTL: int(rec.TTL), } if rec.Type == "TXT" { - if len(rec.TxtStrings) > 1 { - r.Content = `"` + strings.Join(rec.TxtStrings, `" "`) + `"` - } + r.Content = rec.GetTargetRFC1035Quoted() } if rec.Type == "SRV" { r.Data = cfSrvData(rec)