diff --git a/management/dns_update.py b/management/dns_update.py index 76daa40b..aaf209fc 100755 --- a/management/dns_update.py +++ b/management/dns_update.py @@ -764,12 +764,12 @@ def set_custom_dns_record(qname, rtype, value, action, env): if qname != "_secondary_nameserver": raise ValueError("%s is not a domain name or a subdomain of a domain name managed by this box." % qname) - if not re.search(DOMAIN_RE, qname): - raise ValueError("Invalid name.") - # validate rtype rtype = rtype.upper() if value is not None and qname != "_secondary_nameserver": + if not re.search(DOMAIN_RE, qname): + raise ValueError("Invalid name.") + if rtype in ("A", "AAAA"): if value != "local": # "local" is a special flag for us v = ipaddress.ip_address(value) # raises a ValueError if there's a problem