Update SMTP plugin to version '2023-04-03' to fix IPv6 problem

This commit is contained in:
Derick Rethans
2024-11-28 17:36:50 +00:00
parent 01aeb9f1a0
commit e619a56396
6 changed files with 24 additions and 12 deletions

View File

@ -80,7 +80,7 @@ class Message extends \Tx\Mailer\Message {
if(substr($lines[$i],0, 4) == 'Bcc:') { if(substr($lines[$i],0, 4) == 'Bcc:') {
unset($lines[$i]); // we found the Bcc: header and remove it unset($lines[$i]); // we found the Bcc: header and remove it
while(substr($lines[++$i],0, 1) === ' ') { while(substr($lines[++$i],0, 1) === ' ') {
unset($lines[$i]); // indented lines are header continuiation unset($lines[$i]); // indented lines are header continuation
} }
break; // header removed, we're done break; // header removed, we're done
} }

View File

@ -19,7 +19,17 @@ class helper_plugin_smtp extends DokuWiki_Plugin {
*/ */
static public function getEHLO($ehlo='') { static public function getEHLO($ehlo='') {
if(empty($ehlo)) { if(empty($ehlo)) {
$ehlo = !empty($_SERVER["SERVER_ADDR"]) ? "[" . $_SERVER["SERVER_ADDR"] . "]" : "localhost.localdomain"; $ip = $_SERVER["SERVER_ADDR"];
if (empty($ip))
return "localhost.localdomain";
// Indicate IPv6 address according to RFC 2821, if applicable.
$colonPos = strpos($ip, ':');
if ($colonPos !== false) {
$ip = 'IPv6:'.$ip;
}
return "[" . $ip . "]";
} }
return $ehlo; return $ehlo;
} }

View File

@ -1,5 +1,5 @@
====== Проверка протокола SMTP ====== ====== Проверка протокола SMTP ======
На этой странице вы можете отправить тестовое сообщение из "DokuWiki". SMTP плагин покажет, где ты закосячил. С этой странице вы можете отправить тестовое письмо из «Докувики», чтобы проверить правильность настроек плагина.
Напишите адреса получателей электронной почты в форме ниже. Напишите адреса получателей электронной почты в форме ниже.

View File

@ -2,8 +2,9 @@
/** /**
* @license GPL 2 (http://www.gnu.org/licenses/gpl.html) * @license GPL 2 (http://www.gnu.org/licenses/gpl.html)
* *
* @author Aleksandr Selivanov <alexgearbox@yandex.ru>
* @author Artem Trutko <trutko@facebook.com> * @author Artem Trutko <trutko@facebook.com>
*/ */
$lang['menu'] = 'Проверка SMTP конфигурации'; $lang['menu'] = 'Проверка SMTP-конфигурации';
$lang['nofrom'] = 'Вы не указали получателя. Отправка письма вряд ли получится.'; $lang['nofrom'] = 'Не указан параметр mailfrom в настройках вики. Отправка письма вряд ли получится.';

View File

@ -2,16 +2,17 @@
/** /**
* @license GPL 2 (http://www.gnu.org/licenses/gpl.html) * @license GPL 2 (http://www.gnu.org/licenses/gpl.html)
* *
* @author Aleksandr Selivanov <alexgearbox@yandex.ru>
* @author Artem Trutko <trutko@facebook.com> * @author Artem Trutko <trutko@facebook.com>
*/ */
$lang['smtp_host'] = 'Ваш SMTP-сервер исходящей почты.'; $lang['smtp_host'] = 'SMTP-сервер исходящей почты.';
$lang['smtp_port'] = 'Порт SMTP-сервера. Обычно 25. 465 для SSL.'; $lang['smtp_port'] = 'Порт SMTP-сервера. Обычно 25. 465 для SSL.';
$lang['smtp_ssl'] = 'Какой тип шифрования используется при связи с SMTP-сервером?'; $lang['smtp_ssl'] = 'Какой тип шифрования используется при связи с SMTP-сервером?';
$lang['smtp_ssl_o_'] = 'ничего'; $lang['smtp_ssl_o_'] = 'ничего';
$lang['smtp_ssl_o_ssl'] = 'SSL'; $lang['smtp_ssl_o_ssl'] = 'SSL';
$lang['smtp_ssl_o_tls'] = 'TLS'; $lang['smtp_ssl_o_tls'] = 'TLS';
$lang['auth_user'] = 'Если требуется проверка подлинности, укажите свое имя пользователя здесь.'; $lang['auth_user'] = 'Если требуется проверка подлинности, укажите своё имя пользователя здесь.';
$lang['auth_pass'] = 'Пароль для указанного пользователя.'; $lang['auth_pass'] = 'Пароль для указанного пользователя.';
$lang['localdomain'] = 'Имя, которое будет использоваться во время фазы запрос helo протокола SMTP. Должно быть полное доменное имя веб-сервера "Докувики". Оставьте пустым для автоопределения.'; $lang['localdomain'] = 'Имя, которое будет использоваться во время фазы запрос helo протокола SMTP. Должно быть полное доменное имя веб-сервера «Докувики». Оставьте пустым для автоопределения.';
$lang['debug'] = 'Отобразить полный лог ошибок при отправке сбой? Отключить, когда все работает!'; $lang['debug'] = 'Отобразить полный журнал ошибок при сбое отправки? Отключите, когда всё работает!';

View File

@ -1,7 +1,7 @@
base smtp base smtp
author Andreas Gohr author Andreas Gohr
email andi@splitbrain.org email andi@splitbrain.org
date 2020-11-21 date 2023-04-03
name smtp plugin name smtp plugin
desc Send mails via a configured SMTP server desc Send mails via a configured SMTP server
url https://www.dokuwiki.org/plugin:smtp url https://www.dokuwiki.org/plugin:smtp