[Exim-users] chunking

59 views
Skip to first unread message

Le...@lena.kiev.ua

unread,
Jan 16, 2017, 4:50:23 PM1/16/17
to Exim MTA на русском
Засада в новом Exim 4.88:

If CHUNKING was advertised and a BDAT command sequence is received, the
acl_smtp_predata ACL is not run.

По умолчанию CHUNKING advertised, например Gmail использует команды BDAT.
В таком случае acl_smtp_predata не вызывается. Непонятно почему так сделали.

_______________________________________________
Exim-users mailing list
Exim-...@mailground.net
http://mailground.net/mailman/listinfo/exim-users

George L. Yermulnik

unread,
Jan 16, 2017, 4:56:24 PM1/16/17
to exim-...@mailground.net
Hello!

On Mon, 16 Jan 2017 at 23:49:35 (+0200), Le...@lena.kiev.ua wrote:

> Засада в новом Exim 4.88:

> If CHUNKING was advertised and a BDAT command sequence is received, the
> acl_smtp_predata ACL is not run.

> По умолчанию CHUNKING advertised, например Gmail использует команды BDAT.
> В таком случае acl_smtp_predata не вызывается. Непонятно почему так сделали.

Хм-м, в Changelog не смог найти упоминания о какой-либо смене поведения %-\
Вы уверены, что это в 4.88 появилось?
Ну, и, если это так, то, получается, что ukr.net сегодня массово у себя
обновил exim до 4.88, о чём Вова умолчал в своём оригинальном сообщении,
что звучит немного странно.

--
George L. Yermulnik
[YZ-RIPE]

Le...@lena.kiev.ua

unread,
Jan 16, 2017, 5:19:00 PM1/16/17
to Exim MTA на русском
> Хм-м, в Changelog не смог найти упоминания о какой-либо смене поведения %-\

Угу. Только в большой документации (spec).

> Вы уверены, что это в 4.88 появилось?

Вообще поддержка chunking появилась в 4.88.

> Ну, и, если это так, то, получается, что ukr.net сегодня массово у себя
> обновил exim до 4.88, о чём Вова умолчал в своём оригинальном сообщении,
> что звучит немного странно.

Подозреваю, что обновил он раньше, а сегодня добавил в конфиг
chunking_advertise_hosts
Возможно, только на части своих серверов.

Я проверила, бага в Exim нет: если добавить
chunking_advertise_hosts =
(без ничего после знака равенства), то Exim перестает advertise
(говорить CHINKING в ответе на EHLO). Может Gmail кэширует этот факт?

Есть другой баг в Exim 4.88: из-за chunking, если письмо от Gmail
длиннее 64K (включая аттачменты), то при проверке Exim-ом
DKIM-сигнатуры письма от Gmail
Exim выдает ошибку - якобы несоответствие хэша тела.
Из-за этого, а также странности с predata, таки имеет смысл отключить
это chunking (кстати не понимаю, как оно может ускорить передачу письма).

Vladimir Sharun

unread,
Jan 17, 2017, 4:55:25 AM1/17/17
to Exim MTA на русском, exim-...@mailground.net
Привет,

На одном инстансе был поставлен в тесте 4.88 и адвертайзил CHUNKING. И там ЖОПА:
 | egrep -c 'SMTP call from mail-.*google.com .*dropped: too many syntax or protocol errors'
2018

Эти ошибки есть только на 4.88, остальные на 4.87 - ни единой ошибки.

--- Оригінальне повідомлення ---
Від кого: "George L. Yermulnik" <y...@yz.kiev.ua>
Дата: 16 січня 2017, 23:56:31

Georgiewskiy Yuriy

unread,
Jan 17, 2017, 5:18:44 AM1/17/17
to Exim MTA на русском


On Tue, 17 Jan 2017, Vladimir Sharun wrote:

> Привет,
> На одном инстансе был поставлен в тесте 4.88 и адвертайзил CHUNKING. И там ЖОПА:
>  | egrep -c 'SMTP call from mail-.*google.com .*dropped: too many syntax or protocol errors'
> 2018
> Эти ошибки есть только на 4.88, остальные на 4.87 - ни единой ошибки.
> --- Ориг?нальне пов?домлення --- В?д кого: "George L. Yermulnik" <y...@yz.kiev.ua> Дата: 16 с?чня 2017, 23:56:31
>
> Hello!
>
> On Mon, 16 Jan 2017 at 23:49:35 (+0200), Le...@lena.kiev.ua wrote:
>
> > Засада в новом Exim 4.88:
>
> > If CHUNKING was advertised and a BDAT command sequence is received, the
> > acl_smtp_predata ACL is not run.
>
> > По умолчанию CHUNKING advertised, например Gmail использует команды BDAT.
> > В таком случае acl_smtp_predata не вызывается. Непонятно почему так сделали.
>
> Хм-м, в Changelog не смог найти упоминания о какой-либо смене поведения %-\
> Вы уверены, что это в 4.88 появилось?
> Ну, и, если это так, то, получается, что ukr.net сегодня массово у себя
> обновил exim до 4.88, о чём Вова умолчал в своём оригинальном сообщении,
> что звучит немного странно.

ды вот стоит у нас 4.88 с 10 января, и ничего подобного нет, может какаято
специфика у вас.

Le...@lena.kiev.ua

unread,
Jan 17, 2017, 6:47:57 AM1/17/17
to Exim MTA на русском
> From: Vladimir Sharun

> На одном инстансе был поставлен в тесте 4.88
> и адвертайзил CHUNKING. И там ЖОПА:
> | egrep -c 'SMTP call from mail-.*google.com .*dropped: too many syntax or protocol errors'
> 2018
> Эти ошибки есть только на 4.88,
> остальные на 4.87 - ни единой ошибки.

Может у вас какой-то роутер (например Cisco)
вмешивается в протокол SMTP
и искажает данные в случае использования chunking,
т.к. не был рассчитан на chunking?

А вообще, почитав
https://tools.ietf.org/html/rfc1830
https://tools.ietf.org/html/rfc3030
и спросив входящий MX Gmail:

~ $ telnet gmail-smtp-in.l.google.com 25
Trying 108.177.14.26...
Connected to gmail-smtp-in.l.google.com.
Escape character is '^]'.
220 mx.google.com ESMTP 94si2818lfx.9 - gsmtp
ehlo bedside.lena.kiev.ua
250-mx.google.com at your service, [94.244.28.208]
250-SIZE 157286400
250-8BITMIME
250-STARTTLS
250-ENHANCEDSTATUSCODES
250-PIPELINING
250-CHUNKING
250 SMTPUTF8
quit

(есть CHUNKING, но нет BINARYMIME), и учитывая разговор
про баг в Exim 4.88 с DKIM от Gmail (баг проявляется,
если письмо длиннее 64K, т.е. Gmail передает письмо
кусками по 64K - а нафига спрашивается?),
у меня появилось параноидальное подозрение, что
этот стандарт про chunking в SMTP - диверсия NSA с целью создать
предсказуемые данные (команды BDAT) в предсказуемых местах
(через каждые 64K), чтобы можно было расшифровывать
письма, переданные с шифрованием STARTTLS.

В общем, я вставила в конфиг моего Exim 4.88

chunking_advertise_hosts =

(ничего после знака равенства) и не собираюсь убирать никогда.
Не будет Exim никогда преобразовывать тело письма,
чтобы использовать BINARYMIME при передаче письма.
Тогда какой смысл в chunking?

Reply all
Reply to author
Forward
0 new messages