LINUX.ORG.RU
ФорумAdmin

Postfix фильтрация темы письма с русскими символами

 ,


0

1

Здравствуйте! Была такая тема. Но не решенная.

Стоит Zimbra + postfix

Заголовок выглядит так: =?utf-8?B?0LHQvtC80LHQsA==?=

Латиницу фильтрует. С кириллицей не решили проблему?


Ответ на: комментарий от malins

Отрезаешь префикс =?utf-8? и суффикс ?=. Остаётся 0LA= или 0LDQsA==. Это UTF-8, который закодирован в base64. То бишь достаточно написать что-то вроде echo '0LA=' | base64 -d или echo -n 'а' | base64 чтобы декодировать/закодировать.

vbr ★★★
()
Последнее исправление: vbr (всего исправлений: 1)
Ответ на: комментарий от malins

А zimbra настроить, что бы в base64 не кодировала? Можно?

Это нарушение стандарта. В заголовке сообщения должны быть только 7-биные символы. Хотя вот с этими последним RFC про вовсе utf аж в адресе надо посмотреть.

AS ★★★★★
()
Ответ на: комментарий от AS

Ничего не понимаю. Нашел в ящике письмо, где Subject: utf-8 и quoted-printable:

Subject: =?utf-8?Q?Fwd:_(=D0=91=D0=BE=D0=BC?=

=?utf-8?Q?=D0=B1)_(=D0=92=D0=B7=D1=80=D1=8B=D0=B2)?=

Остальные поля: utf-8 и base64:

From: =?utf-8?B?0JzQsNC70LjQvSDQki4g0JIu?= m@m.t.ru

Thread-Topic: =?utf-8?B?KNCR0L7QvNCxKSAo0JLQt9GA0YvQsik=?=

malins
() автор топика
Ответ на: комментарий от malins

Ничего не понимаю.

Что именно? По старым стандартам любые несемибитные символы в заголовке (в любом поле) должны быть конвертированы либо в quoted-printable, либо в base64. т.е. несконвертированной кириллицы там быть не может.

Но несколько лет, как появились стандарты с национальными символами в адресе. Так как я про них знаю только то, что они есть, счёл нужным упомянуть на всякий случай. Повлияло ли это на правила для Subject я не знаю.

AS ★★★★★
()
Последнее исправление: AS (всего исправлений: 1)

Я загонял эти кракозябры в Https://www.artlebedev.ru/decoder/ И делал шаблон для хеадерчекс. Например как выглядит слово «семинар» в виде кракозябров Нудное дело, но срабатывало.

Boott
()
Последнее исправление: Boott (всего исправлений: 1)
Ответ на: комментарий от Boott

Задание было фильтровать почту,

использовать регулярные выражения.

Чтобы не только «бомба» найти.

А также «o» ищется как (о|0|О|o|O)

Кириллица, латиница, заглавные, прописные, ноль.

Между буквами есть или нет пробела или подчеркивания… Ну, и т.д. и т.п.

(Поверьте, это не мое извращенное желание ;) )

malins
() автор топика
Ответ на: комментарий от malins

Задание было фильтровать почту,

вот это почитай:
https://stackoverflow.com/questions/66040217/why-does-sieve-behave-strangely-...

Но тут вопрос, есть ли поддержка Sieve в Зимбре. И ещё вопрос, что делать с cp1251, koi8 и т.п. Может быть надо будет для каждой кодировки проверку делать.

AS ★★★★★
()
Ответ на: комментарий от AS

Спасибо!

Sieve Зимбра поддерживает. В понедельник буду разбираться с кодировками и кодированием...

В Subjekt прописано, koi8 или utf-8 или cp1251 А так же base64 или quoted-printable. Я думаю, Sieve должна это распознавать и раскодировать.

malins
() автор топика