[exim-conf] [Exim-rusers] Фильтр вложений.

Alexander Shikoff minotaur на crete.org.ua
Пн Ноя 5 10:42:22 EET 2007


On Fri, Nov 02, 2007 at 04:16:08PM +0200, Victor Ustugov wrote:
> >>> мне нужен именно фрагмент письма с именем аттача, закодированным 
> >>> согласно RFC 2231
> >> Если убираю check_rfc2047_length, то в логе:
> >> Nov  2 15:13:21 iota exim[52626]: 2007-11-02 15:13:21 1InwKu-000Dgo-MP H=(dragon.tsua.net) [212.40.34.13] Warning: This message contains attachment: =?koi8-u?Q?=F4=C5=D3=D4=20RFC2231=20=D7=20Exim=2E=20=C2=CC=C1-=C2=CC=C1-=C2=CC=C1=2Etar=2Egz?=
> > 
> > при ошибках декодирования надо будет оставлять недекодированный вариант. 
> > а тут получился преобразованный в quoted-printables
> > 
> >> С установленным в false check_rfc2047_length:
> >> Nov  2 15:14:11 iota exim[52651]: 2007-11-02 15:14:11 1InwLi-000DhD-Bm H=(dragon.tsua.net) [212.40.34.13] Warning: This message contains attachment: Тест RFC2231 в Exim. бла-бла-бла.tar.gz
> >>
> >> В хидерах оригинального письма:
> >>
> >> Content-Type: application/octet-stream
> >> Content-Disposition: attachment; filename*=koi8-u''%F4%C5%D3%D4%20RFC2231%20%D7%20Exim%2E%20%C2%CC%C1-%C2%CC%C1-%C2%CC%C1%2Etar%2Egz
> >> Content-Transfer-Encoding: base64
> > 
> > я сегодня-завтра протестирую декодирование такого имени аттача и выложу 
> > исправленный вариант патча. как минимум можно игнорировать в нашем 
> > случае check_rfc2047_length, заменив использование 
> > expand_string(string_sprintf("${rfc2047d:%s}"... на выполнение 
> > rfc2047_decode с передачей ему в качестве второго параметра не значения 
> > check_rfc2047_length, а в явном виде false.
> 
> так и сделал. протестировать новый патч с этими заголовками:
> Content-Type: application/octet-stream
> Content-Disposition: attachment; 
> filename*=koi8-u''%F4%C5%D3%D4%20RFC2231%20%D7%20Exim%2E%20%C2%CC%C1-%C2%CC%C1-%C2%CC%C1%2Etar%2Egz
> Content-Transfer-Encoding: base64
> 
> имя файла было корректно декодировано при обоих значениях 
> check_rfc2047_length - как true, так и false.
> 
> патч лежит на старом месте:
> http://mta.org.ua/exim-4.67-conf/patches/exim-4.68-rfc2231/patch-src::rfc2231.patch
> 
> старый патч я пелеложил в соседний каталог

Оттестировал. Все работает.
Виктор, у Вас есть желание побороться теперь в официальной exim-users? :)

-- 
Kind Regards,	Alexander Shikoff
minotaur на crete.org.ua
Mob.: +380 67 946 31 49




Подробная информация о списке рассылки exim-conf