Victor Ustugov wrote:
> потестировал я поддержку RFC2231 в exim 4.86.
>> оказалось, что в простом случае она работает (есть явное указание
> charset и имя файла на столько короткое, что его закодированное значение
> помещается в одном атрибуте filename*):
>>> Content-Disposition: attachment;
> filename*=KOI8-R''%C1%C2%D7%2E%74%78%74
>>> если же имя файла длинное или не указан charset, то в $mime_filename
> будет либо усеченное значение имени файла, либо оно будет вообще пустое:
>>> Content-Disposition: attachment;
> filename*0*=KOI8-R''%D0%D2%CF%D3%D4%CF%20%CF%DE%C5%CE%D8%20%C4%CC%C9%CE%CE;
> filename*1*=%CF%C5%20%C9%CD%D1%20%D0%D2%C9%D3%CF%C5%C4%C9%CE%C5%CE%CE%CF;
> filename*2*=%C7%CF%20%C6%C1%CA%CC%C1%20%D3%20%CB%C9%D2%C9%CC%CC%C9%DE%C5;
> filename*3*=%D3%CB%C9%CD%C9%20%D3%C9%CD%D7%CF%CC%C1%CD%C9%20%D7%20%C9%CD;
> filename*4*=%C5%CE%C9%2E%74%78%74
>>> Content-Disposition: attachment;
> filename*0="Declaration_for_Exemption_from_deduction_of_defence_contrib_";
> filename*1="15%.doc"
>>> Content-Disposition: attachment;
> filename*0="Letter of Undertaking by Beneficial Owners of registered sha";
> filename*1="res.doc"
...
> вот подправленная версия патча для exim 4.85:
>https://mta.org.ua/exim-4.83-conf/patches/exim-4.85_1-rfc2231/patch-src__exim-4.85_1-rfc2231.patch>> она включена в механизм сборки порта exim 4.85_1 для FreeBSD:
>https://mta.org.ua/exim-4.83-conf/packages/ports-freebsd/exim-4.85_1/>> но всё это уже не так актуально на фоне выхода exim 4.86 с реализованной
> пооддержкой RFC2231.
>> придется или ждать, когда они исправят недоработки, или делать патч,
> упраздняющий штатную поддержку RFC2231 и добавляющий уже использованный
> ранее вариант реализации поддержки этого RFC.
патч для поддержки RFC2231 портирован на exim 4.86:
https://mta.org.ua/exim-4.83-conf/patches/exim-4.86-rfc2231/patch-src__exim-4.86-rfc2231.patch
он упраздняет штатную для exim 4.86 поддержку RFC2231 и добавляет свою
реализацию поддержки RFC2231, максимально близкую к реализации из патча
patch-src__exim-4.85_1-rfc2231.patch
в последнее время в src/mime.c хватало переделок и надо бы код патча
причесать.
но с учетом того, что разработчики должны бы поправить штатную поддержку
RFC2231, патч patch-src__exim-4.86-rfc2231.patch является скорее
временным решением.
--
Best wishes Victor Ustugov mailto:victor на corvax.kiev.ua
public GnuPG/PGP key: http://victor.corvax.kiev.ua/corvax.asc
ICQ UIN: 371808614 JID: corvax_at_nb на jabber.corvax.kiev.ua
nic-handle: CRV-UANIC