|
@@ -1115,11 +1115,15 @@ function is_valid_domain_name($domain_name, $options = array()) {
|
|
// Convert domain name to ASCII for validation
|
|
// Convert domain name to ASCII for validation
|
|
$domain_name = idn_to_ascii($domain_name, 0, INTL_IDNA_VARIANT_UTS46);
|
|
$domain_name = idn_to_ascii($domain_name, 0, INTL_IDNA_VARIANT_UTS46);
|
|
|
|
|
|
- // Remove '*.' if wildcard subdomains are allowed
|
|
|
|
- if (isset($options['allow_wildcard']) &&
|
|
|
|
- $options['allow_wildcard'] == true &&
|
|
|
|
- strpos($domain_name, '*.') === 0) {
|
|
|
|
- $domain_name = substr($domain_name, 2);
|
|
|
|
|
|
+ if (isset($options['allow_wildcard']) && $options['allow_wildcard'] == true) {
|
|
|
|
+ // Remove '*.' if wildcard domains are allowed
|
|
|
|
+ if (strpos($domain_name, '*.') === 0) {
|
|
|
|
+ $domain_name = substr($domain_name, 2);
|
|
|
|
+ }
|
|
|
|
+ // Allow '*' as wildcard domain
|
|
|
|
+ if ($domain_name === "*") {
|
|
|
|
+ return true;
|
|
|
|
+ }
|
|
}
|
|
}
|
|
|
|
|
|
return (preg_match("/^([a-z\d](-*[a-z\d])*)(\.([a-z\d](-*[a-z\d])*))*$/i", $domain_name)
|
|
return (preg_match("/^([a-z\d](-*[a-z\d])*)(\.([a-z\d](-*[a-z\d])*))*$/i", $domain_name)
|