<source>
The default is false. The line decides how exactly the engine applies the max-rcpt-per-message limit.
With the default the extra recipients are rejected one by one, at the RCPT command: the message goes to the rest. With true the engine rejects the whole message, at the DATA command — it goes to no one.
The difference is in what counts as the right outcome. Partial delivery is simpler for the node, but the submitting side may not find out about it: refusals for individual recipients are easy to miss in the stream of responses. A refusal of the message is noticed at once.
This is discovered by a mismatch in numbers: this many sent, fewer delivered, and no bounces.
For our submission this does not matter: warm-up sends messages to one recipient each, and there is nothing to hit the limit with. The line would become important on a node that receives batches.
What to set. The question is what the submitting side should see:
| Value | When |
|---|---|
| false (default) | partial delivery is acceptable, and the platform reads refusals for each recipient |
| true | it is better to send to no one than to send to part and not notice it |
The second is stricter and usually more honest for a mailing: a “more sent than delivered” gap without a single bounce takes a long time to sort out.
# the limit and the way it is applied — two lines working together <source 0/0> max-rcpt-per-message 100 too-many-rcpts-fails-message true</source>
what people get wrong and how it ends2 mistakes▶
§ 3.3.7.40
our experience
1 relation
grep -n 'max-rcpt-per-message\|too-many-rcpts-fails-message' /etc/pmta/config /etc/pmta/virtualhost.txt
3 articles
◇How a message gets into the engineSix described submission methods: extended SMTP, four language bindings and a directory the node watches on disk.◇Who is allowed to submit mail and for whom to accept itOut of the box, the node accepts submission only from the machine itself; two different questions — “who can send through us” and “for whose addresses we accept mail” — are answered by different directives.◇Headers the sender uses to control deliverySix control headers let the submitting side choose a stream, tag a message with a job, set signing options and the key, the envelope identifier and the schedule; each is allowed separately and per source.