- Модуль: mail
- Путь к файлу: ~/bitrix/modules/mail/classes/general/smtp.php
- Класс: CSMTPConnection
- Вызов: CSMTPConnection::CheckRelaying
function CheckRelaying($email)
{
$domains = preg_split('/[s]+/', mb_strtolower($this->server->arFields['DOMAINS']), -1, PREG_SPLIT_NO_EMPTY);
if(count($domains)<=0)
return true;
if(!is_array($this->arMsg["FOR_RELAY"]))
$this->arMsg["FOR_RELAY"] = array();
$p = mb_strpos($email, "@");
$email_domain = mb_substr($email, $p + 1);
if(in_array($email_domain, $domains))
{
$this->WriteToLog('['.$this->arMsg["LOCAL_ID"].'] Accepted for relaying '.$email, 8);
return true;
}
if($this->server->arFields['RELAY']!='Y')
return false;
if($this->server->arFields['AUTH_RELAY']=='Y' && $this->auth_user_id<=0)
return false;
$this->WriteToLog('['.$this->arMsg["LOCAL_ID"].'] Accepted for relaying '.$email, 8);
$this->arMsg["FOR_RELAY"][] = $email;
return true;
}