From 070bd9625cd157f8923c50c9064a9fc2fd5c443c Mon Sep 17 00:00:00 2001 From: Carsten Brandt Date: Wed, 20 Nov 2013 18:57:29 +0100 Subject: [PATCH] removed checkPort feature from email validator fixes #1246 --- framework/yii/validators/EmailValidator.php | 28 ++-------------------------- 1 file changed, 2 insertions(+), 26 deletions(-) diff --git a/framework/yii/validators/EmailValidator.php b/framework/yii/validators/EmailValidator.php index cde175a..6b5a07f 100644 --- a/framework/yii/validators/EmailValidator.php +++ b/framework/yii/validators/EmailValidator.php @@ -41,25 +41,9 @@ class EmailValidator extends Validator * @var boolean whether to check whether the emails domain exists and has either an A or MX record. * Be aware of the fact that this check can fail due to temporary DNS problems even if the email address is * valid and an email would be deliverable. Defaults to false. - * @see dnsMessage */ public $checkDNS = false; /** - * @var string the error message to display when the domain of the email does not exist. - * It may contain the following placeholders which will be replaced accordingly by the validator: - * - * - `{attribute}`: the label of the attribute being validated - * - `{value}`: the value of the attribute being validated - * - * @see checkDNS - */ - public $dnsMessage; - /** - * @var boolean whether to check port 25 for the email address. - * Defaults to false. - */ - public $checkPort = false; - /** * @var boolean whether validation process should take into account IDN (internationalized domain * names). Defaults to false meaning that validation of emails containing IDN will always fail. * Note that in order to use IDN validation you have to install and enable `intl` PHP extension, @@ -80,9 +64,6 @@ class EmailValidator extends Validator if ($this->message === null) { $this->message = Yii::t('yii', '{attribute} is not a valid email address.'); } - if ($this->dnsMessage === null) { - $this->dnsMessage = Yii::t('yii', 'The domain of this email address does not seem to exist.'); - } } /** @@ -118,13 +99,8 @@ class EmailValidator extends Validator $value = $matches[1] . idn_to_ascii($matches[2]) . '@' . idn_to_ascii($domain) . $matches[4]; } $valid = preg_match($this->pattern, $value) || $this->allowName && preg_match($this->fullPattern, $value); - if ($valid) { - if ($this->checkDNS) { - $valid = checkdnsrr($domain, 'MX') || checkdnsrr($domain, 'A'); - } - if ($valid && $this->checkPort && function_exists('fsockopen')) { - $valid = fsockopen($domain, 25) !== false; - } + if ($valid && $this->checkDNS) { + $valid = checkdnsrr($domain, 'MX') || checkdnsrr($domain, 'A'); } return $valid; }