allow-chunking

<source>

Предлагается ли этому источнику расширение CHUNKING
в конфигурации это строкаallow-chunking trueвнутри блока <source>
Второй способ передать тело письма

Умолчание — true. Строка решает, объявляет ли узел расширение CHUNKING входящим соединениям от этого источника, то есть разрешает ли команду BDAT.

BDAT отличается от DATA тем, что размер каждой порции объявляется заранее, и завершать передачу точкой на отдельной строке не нужно. Это снимает необходимость экранировать точку в начале строки и делает передачу двоичных данных честнее.

Расширение касается только входящих соединений — того, как письмо приходит к узлу. Как узел отдаёт письмо получателю, решается на другой стороне.

Главная ловушка — выключать наугад. Умолчание разрешающее, и подающие библиотеки сами выбирают, чем пользоваться. Выключив расширение, вы заставите их вернуться к DATA — обычно молча и без потерь, но не всегда: часть клиентов, увидев CHUNKING в одном окружении и не увидев в другом, ведёт себя по-разному на границе больших писем.

Причина трогать эту строку должна быть внятной. «На всякий случай» — не причина.

Что делает Хаб. Не пишет — остаётся вендорское true. Подача идёт библиотекой, которая выбирает способ сама, и навязывать ей один из двух незачем.
Рекомендуемые значения

Что ставить. Умолчание почти всегда верно:

Значение Когда
true (умолчание) обычный случай: пусть подающая сторона выбирает
false разбор поведения конкретного клиента, который на BDAT ошибается

Второе — временная мера на время разбирательства, а не постоянная настройка.

Умолчание true и то, что расширение касается входящих соединений, — из руководства, § 3.3.7.61. Разбор про выбор клиента наш.
Пример в конфигурации
# выключают на время разбора поведения конкретного клиента
<source 10.0.0.5>
    allow-chunking false</source>
Клиент из этой подсети не увидит CHUNKING в приветствии и вернётся к обычной передаче через DATA.
жёлтым — — имена директив, голубым — блоки. Так же они подсвечены и в тексте карточки.
▲

Типичные ошибки и проблемы

что делают не так и чем это кончается2 ошибки▶

Выключают расширение на широком блоке

наш опыт

Чем чреватоЗапрет по правилу слияния достаётся всем подсетям, которые сами не сказали обратного. Подающие библиотеки возвращаются к обычной передаче — обычно молча, но на больших письмах разница в поведении клиентов иногда проявляется.
Как заметитьРасширение исчезло из приветствия для всех, хотя выключали его ради одного клиента.
Как правильноСтавить запрет в тот блок, под который попадает разбираемый клиент.

Ждут, что строка повлияет на отправку

§ 3.3.7.61

Чем чреватоРасширение касается только входящих соединений. Как узел передаёт письмо приёмнику, эта строка не решает вовсе.
Как заметитьСтрока правится ради поведения при доставке, и ничего не меняется.
Как правильноСмотреть настройки получателя: за исходящую сторону отвечают они, а не блок источника.
Совместимость
PowerMTA 6.0
описана в руководстве этой версии · платформа: любая
С какой версии директива доступна, вендор указывает не для всех — здесь пометки нет. Имя встречается и в издании руководства 5.0.
Справочные данные
Синтаксис
allow-chunking <boolean>
Значения
yes | no | true | false
Умолчание
true § 3.3.7.61
Применение
reload, перезапуск не нужен
Очередь
уже поставленное в очередь не затронет
Где писать
<source>
Сколько раз
один раз в блоке
Всё здесь — из руководства, с разделом.
Наследование
Директива живёт в <source> и подчиняется слиянию источников: соединение попадает под все адресные блоки, которые его накрывают, и узкий перекрывает широкий. Для подачи под логином действует именованный блок, и строку в нём приходится повторять — наследования из адресных блоков в именованный мы на своей установке не увидели.
Как проверить на узле
Объявляет ли узел расширение — видно прямо в приветствии приёмника:
printf 'EHLO test\r\nQUIT\r\n' | nc <адрес-узла> 2525 | grep -i chunking
Строка 250-CHUNKING в ответе означает, что расширение предложено. Проверять надо с того адреса, с которого идёт подача: блок источника выбирается по нему.
В Хабе
Цена ошибки
обратимо: вредит, пока стоит
Сценарии
Подключить платформу отправки