@@ -38,12 +38,12 @@ import (
3838// abstract.EMail
3939func explodeAbstractEMail (dn happydns.Subdomain , in * happydns.ServiceMessage ) ([]* happydns.ServiceMessage , error ) {
4040 var val struct {
41- MX []map [string ]any `json:"mx,omitempty"`
42- SPF map [string ]any `json:"spf,omitempty"`
43- DKIM map [string ]* svcs.DKIM `json:"dkim,omitempty"`
44- DMARC * svcs.DMARCFields `json:"dmarc,omitempty"`
45- MTA_STS * svcs.MTASTSFields `json:"mta_sts,omitempty"`
46- TLS_RPT * svcs.TLS_RPTField `json:"tls_rpt,omitempty"`
41+ MX []map [string ]any `json:"mx,omitempty"`
42+ SPF map [string ]any `json:"spf,omitempty"`
43+ DKIM map [string ]* svcs.DKIM `json:"dkim,omitempty"`
44+ DMARC * svcs.DMARCFields `json:"dmarc,omitempty"`
45+ MTA_STS * svcs.MTASTSFields `json:"mta_sts,omitempty"`
46+ TLS_RPT * svcs.TLS_RPTField `json:"tls_rpt,omitempty"`
4747 }
4848
4949 err := json .Unmarshal (in .Service , & val )
@@ -815,7 +815,12 @@ func migrateFrom7(s *KVStorage) error {
815815 return nil , err
816816 }
817817
818- rr , err := dns .NewRR (fmt .Sprintf ("%s.zZzZ. 0 IN CNAME %s" , val ["SubDomain" ], helpers .DomainFQDN (val ["Target" ], "zZzZ." )))
818+ var rr dns.RR
819+ if strings .Contains (val ["Target" ], "IN\t CNAME" ) {
820+ rr , err = dns .NewRR (val ["Target" ])
821+ } else {
822+ rr , err = dns .NewRR (fmt .Sprintf ("%s.zZzZ. 0 IN CNAME %s" , val ["SubDomain" ], helpers .DomainFQDN (val ["Target" ], "zZzZ." )))
823+ }
819824 if err != nil {
820825 return nil , err
821826 }
0 commit comments