# # Проверка значения поля Content-Transfer-Encoding # # для описания поведения MTA используется файл confCONFDIR/access-transfer-encodings # в нем хранится информация трех типов: # 1. какие charset'ы будут маскироваться звездочкой # 2. кодирование разлиных X-Mailer # 3. собственно правила для разных триплетов charset/transfer-encoding/mailer # # charset'ы указываются в виде: # charset=<название charset'а> # # например: # charset=koi8-r # charset=windows-1251 # # для сообщений с этими charset'ами будут использованы правила, у которых в качестве charset # будет указана звездочка. обычно необходимо перечислить все кириллические (8-битные) charset'ы # # значение полей X-Mailer кодируется в виде регулярного выражения с префиксом "mailer=": # \N^(?i)mailer=$\N : # # кодовое название мейлера mailer_name не должно содержать пробельных символов и символа ":" # # пример: # \N^(?i)mailer=SquirrelMail\s*\(.+\)$\N : squirrelmail # # т. е. для сообщений со значением X-Mailer, соответствующим регулярному выражению # /^SquirrelMail\s*\(.+\)$/, будут применяться все правила, у которых в триплете в качестве # mailer'а будет указано "squirrelmail" # # собственно, сами правила указываются в виде: # || : <действие> : <сообщение> # # 1. в качестве charset может быть указан либо конкретный charset, либо звездочка. тогда # правило будет применено для charset'ов, указанных с префиксом "charset=" # 2. в качестве transfer-encoding'а можно использовать "7bit", "8bit" или пустое значение, # которое воспринимается как отсутствие поля Content-Transfer-Encoding # 3. в качестве mailer'а указывается то кодовое название mailer'а, которое было описано с # префиксом "mailer=" # указание mailer'а может быть опущено вместе с предшествующим разделителем "|". тогда правило # будет применено ко сообщениям без учета поля X-Mailer # # в качестве "действия" могут выступать: # ok - принимать сообщения с данным transfer-encoding-ом # warn - добавлять в заголовки сообщения поле X-Warn-Charset # текст значения поля может быть указан через двоеточие # deny - не принимать сообщения с данным charset-ом # текст сообщения об ошибке может быть указан через двоеточие # reject - синоним для deny # quarantine - сообщение будет сохранено в карантине и не будет доставлено получателю # # примеры: # # отвергнуть все сообщения с charset=windows-1251 и Content-Transfer-Encoding: 7bit # для остальных проверяемых charset-ов добавляется поле X-Warn-Transfer-Encoding:, # кроме собщений, отосланных с помощью X-Mailer: PocoMail # \N^(?i)mailer=PocoMail\s.+$\N : pocomail # *|7bit|pocomail : ok # windows-1251|7bit : deny : 5.7.1 broken Content-Transfer-Encoding detected # *|7bit : warn # # отвергать все сообщения с charset=windows-1251 без поля Content-Transfer-Encoding # для остальных проверяемых charset-ов вставлять поле X-Warn-Transfer-Encoding: со значением # этого поля по умолчанию # для сообщений с X-Mailer: SquirrelMail вставляется поле X-Warn-Transfer-Encoding: с отдельным # значением # # \N^(?i)mailer=SquirrelMail\s*\(.+\)$\N : squirrelmail # *||squirrelmail : warn : squirrelmail does not add field Content-Transfer-Encoding :-( # windows-1251| : deny : 5.7.1 Content-Transfer-Encoding field expected # *| : warn : Content-Transfer-Encoding field expected charset=koi8-r charset=windows-1251 charset=windows-1252 charset=iso-8859-5 \N^(?i)mailer=SquirrelMail\s*\(.+\)$\N : squirrelmail \N^(?i)mailer=PocoMail\s.+$\N : pocomail #windows-1251| : warn : 5.7.1 Content-Transfer-Encoding field expected #windows-1251| : deny : 5.7.1 Content-Transfer-Encoding field expected #windows-1251| : quarantine : 5.7.1 Content-Transfer-Encoding field expected #windows-1251| : reject quarantine : 5.7.1 Content-Transfer-Encoding field expected #windows-1251| : fakereject : 5.7.1 Content-Transfer-Encoding field expected windows-1251| : quarantine : 5.7.1 Content-Transfer-Encoding field expected *|7bit|pocomail : deny : 5.7.1 Ask PocoMail author fix the lame encoding definition windows-1251|7bit : deny : 5.7.1 broken Content-Transfer-Encoding detected *|7bit : warn : broken Content-Transfer-Encoding detected *||squirrelmail : warn : there is not field Content-Transfer-Encoding in message by squirrlemail windows-1251| : deny : 5.7.1 Content-Transfer-Encoding field: expected *| : warn : Content-Transfer-Encoding field expected #*| : deny : 5.7.1 Content-Transfer-Encoding field expected