Skip to content

Commit

Permalink
fix:域名正则校验dnsrecord name,同步中文域名取punycode
Browse files Browse the repository at this point in the history
  • Loading branch information
lvyangyang committed Nov 4, 2020
1 parent a3753fc commit 6bfff8b
Show file tree
Hide file tree
Showing 3 changed files with 12 additions and 0 deletions.
6 changes: 6 additions & 0 deletions pkg/compute/models/dns_recordsets.go
Expand Up @@ -23,6 +23,7 @@ import (
"yunion.io/x/jsonutils"
"yunion.io/x/pkg/errors"
"yunion.io/x/pkg/tristate"
"yunion.io/x/pkg/util/regutils"
"yunion.io/x/pkg/utils"
"yunion.io/x/sqlchemy"

Expand Down Expand Up @@ -119,6 +120,11 @@ func (manager *SDnsRecordSetManager) ValidateCreateData(ctx context.Context, use
return input, err
}
input.Name = strings.ToLower(input.Name)
if input.Name != "*" && input.Name != "@" {
if !regutils.MatchDomainName(input.Name) {
return input, httperrors.NewInputParameterError("invalid domain name %s", input.Name)
}
}
if len(input.DnsZoneId) == 0 {
return input, httperrors.NewMissingParameterError("dns_zone_id")
}
Expand Down
3 changes: 3 additions & 0 deletions pkg/multicloud/aliyun/dns_domain.go
Expand Up @@ -249,6 +249,9 @@ func (self *SDomain) GetId() string {
}

func (self *SDomain) GetName() string {
if len(self.PunyCode) > 0 {
return self.PunyCode
}
return self.DomainName
}

Expand Down
3 changes: 3 additions & 0 deletions pkg/multicloud/qcloud/dnspod_domain.go
Expand Up @@ -173,6 +173,9 @@ func (self *SDomian) GetId() string {
}

func (self *SDomian) GetName() string {
if len(self.Punycode) > 0 {
return self.Punycode
}
return self.Name
}

Expand Down

0 comments on commit 6bfff8b

Please sign in to comment.